LIVE PREVIEWBUY FOR $28

Tallora is an offline price range and expense tracker for Flutter. Each different tracker on the shelf solutions “the place did the cash go”. Tallora solutions the query individuals really open a price range app to ask: what can I spend right this moment? It really works the work out on the machine out of your envelopes, what you might have already spent and the payments nonetheless to come back — after which prints all 4 quantities beneath it, so the reply may be checked reasonably than believed.

Tallora — Flutter budget and expense tracker, offline, no account, no server

Demo Directions

The app opens straight right into a labored instance. Sign up with [email protected] and password demo1234, or just faucet Sign up with each fields left empty: the sign-in is a mock and accepts something. No registration, no API key, no community connection and no backend are wanted to see each display. A pattern ledger of 158 transactions, 3 accounts, 6 envelopes and seven recurring guidelines is seeded on first run, so nothing is empty.

One quantity, and its working

The determine on Immediately is rarely a black field. Beneath it, by default, are the 4 quantities it got here from: what each envelope permits this era, what has already gone towards them, what the payments nonetheless to come back will take, and what’s subsequently left over the times that stay.

The safe-to-spend figure on Today, with the four amounts it was computed from

Nothing is saved. Edit a transaction from three weeks in the past and all 4 transfer, as a result of none of them is a working whole that would go stale.

See the dip earlier than you attain it

A steadiness doesn’t drift — it sits nonetheless, then falls by a month’s hire in a single morning. Tallora expands your recurring guidelines into dates and steps the steadiness by means of them, over 30 or 60 days, so the day you run skinny has a reputation on it.

A step chart of the projected balance over the next 30 days, with the lowest point marked

Nothing on that chart is written to the ledger. It’s what your guidelines say is coming, recomputed each time you have a look at it.

Six ranges, learn in a second

Every envelope is a cash field, and what has risen inside it’s what you might have spent. Overspending is proven reasonably than hidden, and what’s left on the finish of a interval is carried into the following one — as is what was overspent, as a result of a price range that forgives overspending just isn’t a price range.

Envelope budgets as money boxes, one envelope in detail, and an overspent envelope

Space is what it price

A squarified treemap, laid out on the machine from your personal entries. Transfers between your personal accounts are overlooked — shifting cash just isn’t spending it. Faucet a block for the entries behind it, or step again by means of earlier months.

A treemap of one month's spending, where block area is the amount

Logging one thing takes seconds

Kind the quantity on the keypad, faucet a class, save. The account, the date and the observe all have working defaults, so the one two issues you must provide are the 2 solely .

The keypad, an amount and category chosen, and Today with every figure updated

Quantities are held as integer cents in all places within the app, by no means as floating level — a ledger constructed on doubles drifts by a penny after a couple of hundred additions after which disagrees with itself.

A invoice on the thirty first

Anchor a recurring rule to the thirty first and it has to fall on the thirtieth in April and the twenty eighth in February — after which return to the thirty first in Might. Tallora clamps in the meanwhile it expands the rule, so the quantity you typed is rarely quietly misplaced.

A rule anchored to the 31st, showing its next dates clamped to each month's length

Zero community requests

No account, no server, no analytics, no advertisements and no financial institution connection. The entire dependency checklist is 4 packages lengthy and none of them is an HTTP shopper. Your ledger lives within the telephone’s encrypted retailer — the Keychain on iOS, EncryptedSharedPreferences on Android — as JSON with a schema model on it, so the primary time you alter the mannequin your customers don’t open the app to an empty display.

Zero network requests: encrypted storage, backup and restore, CSV export, and the four dependencies

As a result of the one copy is the telephone, backup ships as a first-class characteristic reasonably than a footnote: the entire ledger goes out as one JSON file by means of the system share sheet and comes again from the clipboard, and a spherical journey is byte-identical — there’s a take a look at that asserts precisely that. The ledger additionally exports as CSV, with account and class names in it as a substitute of ids.

What you get

18 screens and 5 sheets, 4 dependencies, 76 tests, 0 network requests

  • Full, commented Flutter supply — GetX, Materials 3, gentle and darkish, flutter analyze clear
  • 18 screens and 5 backside sheets, all reachable within the demo with no setup
  • 76 passing exams, together with 31 for the cash-flow engine alone
  • A pure-Dart cash-flow engine with no clock and no plugin behind it
  • A labored instance of 158 transactions, seeded on first run and reproducible
  • Fast entry with a keypad, multi-account help and mirrored transfers
  • Recurring guidelines with weekly, month-to-month and yearly cadences, pause and resume
  • Backup, restore and CSV export, all by means of the system share sheet
  • A mock paywall wired to a restrict the code really enforces
  • Offline HTML documentation, a re-skinning information and a license file for each bundled typefaces

What just isn’t included

Named right here so no one has to seek out out after shopping for.

  • One foreign money at a time. The image is configurable; nothing is transformed, as a result of the app holds no trade charges.
  • No cloud sync and no multi-device. The ledger is on the telephone. Shifting it’s the backup file.
  • No financial institution feeds. Entry is handbook, by design — connecting a financial institution means a supplier, an account and a working price.
  • No debt monitoring, no financial savings targets and no biometric lock.
  • No push notifications. Payments which might be due are proven contained in the app; nothing is scheduled on the system.
  • The paywall is a mock. No cost code ships: the acquisition name is a stub. Wire your personal merchandise and receipt validation into SubscriptionService.buy — the documentation walks by means of it.
  • Funds durations begin on day 1 to twenty-eight. A interval beginning on the thirtieth has no legitimate begin in February.
  • Storage is a JSON blob, not a database. Comfy for a couple of thousand information; previous that, LocalStore is the one class to swap, and each display already goes by means of it.

Necessities

Flutter SDK 3.29 or newer. Builds for Android and iOS from the identical supply. No paid service, no API key and no account are required to run the app or to ship it — there are not any third-party companies in it in any respect. In the event you later join a backend of your personal, that service will contain its personal separate prices, that are yours and never lined by this merchandise.

Help

Questions on setup, re-skinning or the engine are answered by means of the merchandise’s feedback. Merchandise help covers the template itself: getting it to construct, understanding how a display or a calculation works, and the documentation. It doesn’t cowl a backend you add later, third-party packages you introduce, or modifications to your personal fork.

Changelog

v1.0 — first launch.


Source