An open API service indexing awesome lists of open source software.

https://github.com/vijay-kumavat/expense-tracker

I’ve built an Expense Tracker app using React Bootstrap and modern React 19 features. It includes CRUD operations for managing expenses (add, edit, delete), advanced filtering (search, category, date range), and data visualization (summary cards, pie charts)
https://github.com/vijay-kumavat/expense-tracker

bootstrap5 css html react reactjs reactjs19

Last synced: 2 months ago
JSON representation

I’ve built an Expense Tracker app using React Bootstrap and modern React 19 features. It includes CRUD operations for managing expenses (add, edit, delete), advanced filtering (search, category, date range), and data visualization (summary cards, pie charts)

Awesome Lists containing this project

README

          

# Expense Tracker
I’ve developed an Expense Tracker app using React Bootstrap and modern React 19 features. The app supports full CRUD operations for managing expenses, allowing users to add, edit, delete, and view their expenses. Each expense includes a description, amount, date, and category. Advanced filtering options allow users to search by text, filter by category and date range, and toggle between simple and advanced filters. The app uses `useTransition` for smooth UI updates and `useDeferredValue` for responsive filtering of large datasets. `memo` optimizes re-renders for the expense list, and `useMemo` helps prevent unnecessary recalculations for computed data like category options and charts. Data visualization includes summary cards for key metrics such as total expenses and the highest expense, as well as a category distribution pie chart. The form for adding and editing expenses includes validation and error messages. The responsive design ensures the app works well on all screen sizes, and visual feedback (like spinners) provides a smooth user experience. The app is fully accessible, with dynamic category management and unique IDs for form elements using `useId`.

# Preview look like:

![gif](https://github.com/Vijay-Kumavat/expense-tracker/blob/master/src/images/response.png)