Implement Expenses Page
Implement the Expenses Page to allow users to track and categorise their spending. This page will provide an overview of total expenses, list expense transactions, and allow users to add, edit, or delete expense records.
Tasks:
-
Design and implement the frontend UI for the Expenses Page. -
Create API endpoints for fetching, adding, updating, and deleting expense records. -
Implement a table listing all expense transactions (date, category, amount, notes). -
Add filters to sort expenses by category and date. -
Ensure that if there are more than N expenses, pagination is available. -
Display a pie chart or bar graph to visualise spending distribution by category. -
Allow users to mark recurring expenses (e.g., rent, subscriptions). -
Ensure authentication is required for all expense-related actions.
Acceptance Criteria:
- Users can view a list of their expense transactions with correct details.
- Users can add a new expense record, specifying category, amount, date, and notes.
- Users can edit or delete existing expense transactions.
- The expenses summary correctly displays total spending and other statistics.
- The spending distribution chart accurately reflects spending habits.
- Filtering and sorting work correctly (by category, date, amount).
- Recurring expense transactions are saved and displayed properly.
- API requests require authentication and return appropriate errors if unauthorised.
Edited by Obeng, Sinead (UG - Comp Sci & Elec Eng)