A logical CLI-based expense tracker with predictive savings insights — built to help you control today and forecast future savings.
Utilizes the logic of savings prediction to give current-day insights on month-end savings and other useful data.
Bonus: Check out the Predicta Expense Web static prototype
- Track daily expenses with ease.
- Predict savings based on user spending patterns w.r.t monthly income/budget.
- Display weekly expense log & all-time expense log.
- Provide insights and strategies including warnings and useful data.
- Multifile modular design (C++ project structure).
- Fast, menu-driven interface for smooth navigation.
- Language: C++
- Paradigm: Modular programming with file separation.
- Core concepts: File handling, menu systems, predictive logic, conditions and iterations.( Soft pointer concepts ).
- Interface: CLI(command-line interface).
- Vectors
- Pointers (pass by reference/address)
- File handling
- Multi-file compilation
- Enter monthly budget/income once at the start of the application.
- Select the "Add EXPENSE" option and enter expenses with respective costs.
- The Weekly report can be viewed only when 7 days of expense logging is done.
- The All-time history can be viewed anytime.
- Select the "WARNINGS" option from the menu and view current day warnings based on history of expense logging.
- The Insights and Strategies can be viewed anytime and useful data can be interpreted.
- The user can EXIT the application anytime once a particular function is computed.
(Note: The files to store expenses and counter logs will be automatically created when the application is run and the fuctions concerning them are encountered.)
- Clone this repo.
git clone https://github.com/tecnolgd/PredictaExpense-cpp.git
cd PredictaExpense
- Run with
-
- Open terminal in the Predicta folder.
- Run
mingw32-make
(for windows) /make
(for linux/ios). - An executabe file called predicta.exe / predicta.o would be formed.
- Run the command
predicta.exe
(windows) or./predicta
(linux/ios) in the terminal.
(Note: Runmingw32-make clean
ormake clean
to clear object files based on OS) - The application will open for user interaction.
-
- Open the terminal in the Predicta folder.
- Run
g++ main.cpp menu.cpp dailyLog.cpp weekLog.cpp history.cpp insights.cpp userBudget.cpp warning.cpp -o predicta
- An executable file called predicta.exe would be formed.
- Run the command
predicta.exe
(windows) or./predicta
(linux/ios) in the terminal. (same as Makefile step-d). - The application will open for user interaction.
-
(Note: The Output screenshots are based on sample data like BUDGET=12000, Expense for the day 1=450.
The Weekly log report is generated when the day=7 i.e the log counter sets to 7. Later the log counter resets to 0 for the next week logging.)
- Menu BAR
- User BUDGET
- Add EXPENSE
- WARNINGS
- Weekly LOG
- All time LOG History
- Insights AND Strategies
- EXIT
- Date and time stamps for each session of expense logging.
- More insights like MAX and MIN expense item display.
- Tailored strategies based on user interests and needs.
- CLI animation(ncurses or ASCII effects)
- Flexible budget modification.
- More user-friendly UI and UX.
- Sample screenshots for i/o
- Predicta Flowchart
- Contribution Guildelines
- Backend development
- Coming soon!
- If this repository added value to your learning or dev flow ,consider dropping a ⭐or hitting fork.
- Open for recieving feedback and knowledge exchange.
Please read and follow our Contibuting Guidelines
tecnolgd