Transaction Management: Allows users to add new transactions, set a current transaction, print all transactions, and sort transactions by different styles. In addition, the application can display income and expenses in different ways and modify transaction data. Allows the user to remove a single transaction or delete all transactions at once.
Using the Libxlsxwriter library, we can generate summaries in an Excel file. By using appropriate functions, we can create pie charts, tables with data, and also cost summa! ries. With the help of Libxlsxwriter, we can create professional-looking Excel files that can be used for a variety of purposes.
This functionality allows users to add their financial obligations to the system, including loans and bills. Once added, the system will keep track of when the obligation is due, the amount owed, and any other relevant details. Users can also specify the pay date and for loans, the number of installment payments.
For bills, payments are due monthly. The system will automatically calculate the amount due each month based on the user's input. This feature helps users to budget and plan ahead for recurring expenses.
Data validation plays an important role in the registration and login process by ensuring that only valid data, or data that meets minimum requirements, is stored and used in the application. Using the bcrypt library to create password hashes increases the security of the application by preventing unauthorized access to user passwords.
Examples of hashed logins and passwords - stored in the config file:
User1: $2b$10$TTpZEazT.3ocHuI/fMgdP.KN/zM3ExKangGSZqv5wV1BOnsz42u/6;$2b$10$TTpZEazT.3ocHuI/fMgdP.om4vLOP.2DvGwzd1eSx8RbHxjY1wULq;
User2: $2b$10$3ISEmmRt5MeOaRJtobod8eHUf6/i1g1dzWl9E/0mdL5DePbkwJHAS;$2b$10$3ISEmmRt5MeOaRJtobod8edAZDAIyLtx/GBOdswupF3o7gkVplLwG;
mkdir build cd build cmake .. make -j .\MONEYTRACKER.exe (app) .\MONEYTRACKER-ut.exe (tests)