Roadmap - GeeF/BudgetFirst GitHub Wiki
v0.1
- Vertical slice: Should describe and replicate how to get started, up to building a distributable executable
- Basic architecture
- Clear documentation on how to deal with numbers and precision
- WPF presentation project
v0.2
Accounts:
- Add accounts
- Remove accounts
- Add transaction (date, payee?, budget category, note, amount in/out)
- Remove transaction
- Add transfer
- Remove transfer
- Update/modify?
Budget:
- Initialise budget (name, currency, ...)
- Add budget category
- Remove budget category
- Set budgeted amount in category for specific month
- Group categories
General:
- Save/load to/from file (non-corruptible)
- Autosave after every action?
unsorted
Global:
- Undo/redo
- Save settings
Sync:
- Define folder-based sync
- Handle replication (update, recalculate, threading?)
Currencies:
- Support different currencies (name, number of decimals, what else?)
I18N/L11N:
- Allow user to select locale (try to preselect his OS settings?)
- Allow user to select language (is independent of locale!)
- Translations
- Number format. Must handle entering any formatted number and interpret it correctly. Must output formatted number
UI:
- Define common look & feel, mockups etc.
- Calendar
- Calculator
- Scientific calculator/simple formula editor? (+17*3,32 + 5 * (81,90 + 8,20, + 11,30) + 164/5)
Account:
- Search in transactions
- Mark transactions as cleared (or some other term. charged? confirmed?)
- Reconcile accounts
- Payees?
- Validity check for transactions
- Handle entering positive or negative numbers automatically with brief hint (i.e. I enter +1800€ in expenses, should move to income and highlight?)
- Option on an account to have it automatically clear new transactions (e.g. for cash)
- Split transactions
- Merge transactions
- Extract from split transaction (create new transaction out of sub-transaction), also for entire groups
- Define recurring expenses with granular intervals (every n [days | weeks | months | years]; starting at X)
- If I enter a new recurring expense/transaction that starts in the past, automatically add the corresponding transactions but highlight them
- Allow for even more control (e.g. "every month for the first 8 months in a year"; "every month until ...")
- Move all past, uncleared transactions to new date
- Allow to define historic transactions (i.e. transactions before the account was added to the application, i.e. where the initial balance was defined)
- Should/must not have an effect on budgeting
- Available for reporting
- Handle debt and repayment
- Tag transactions (custom tags); Show tags
Budget:
- Search in budget
- Calculate not yet budgeted amount
- Allow to adjust budgeting period?
- Show recurring expenses in budget of next months/cycles
- Saving goals
- Hints
- Saving goals
- recurring expenses
- average spending
- Save templates, default budget, copy budget values
- Save notes in category and in budget for each month and category
- Sort categories
- Carry negative budget over to next month
- Merge categories
Reports:
- Net wealth
Import:
- Transactions from CSV
- Remember mappings
- Remember column order (offer previously used order of columns and try to autodetect)
- YNAB data
Export:
- Transactions
- Budget
- Everything?
Security:
- Optional encryption (AES 256?)
- Optional encryption for sync
- Optional allow to save password in local settings file
- obviously, hash and encrypt that (decryption key for that should be considered well known, i.e. possible attack surface!)
Desktop
- Mac version
- GTK#? version (Linux)
Mobile:
- Android version
- iOS version
- Simple variant: enter expenses, sync, check budget
- Tablet version (nice to have, gold plating) (iOS, Android)
- Windows Phone version?
unclear
- Tracking of money that is not available for spending except for a very specific purpose/category (i.e. taxes)
- Reason: save money for taxes every ear, get final statement later, difference in saved and final statement must either be taken from somewhere (if final > saved/spent), or is free to be removed (final < saved/spent).
- This also works for saving towards stuff with a fuzzy final cost.
- You might even pay for it in increments over the year (e.g. taxes: every quarter a quarter of the rough estimate)