# roadmap

1. write a parser for user messages such as `/in [name] [amount] [details]` and `/out [name] [amount] [details]` - **DONE**: `src/grammar`
2. attach metadata (`datetime`) to each message
3. write (append) to a ordered by datetime CSV file as double-entry bookkeeping registry
4. export CSV through HTTP URI e.g. `https://fragal.eu/expenses/` (protected by auth or encrypted) - use NGINX for this
5. generate a **readable** report of expenses in a given period on query e.g. `/report [daily|weekly|/montly|/yearly]` or `/r [d|w|m|y]`
6. move from CSV to a SQLITE database for persistence, keeping functionality of point 4
7. add other functionalities such as setting limits for a period and alerting / memos
