Expency is a comprehensive expense tracking application that helps users manage their income and expenses efficiently. With an intuitive UI, interactive charts, and powerful financial management tools, Expency ensures you stay on top of your financial health.
- Secure login and sign-up using JWT authentication.
- Profile image upload for a personalized experience.
- Displays Total Balance, Income, and Expenses in summary cards.
- Quick access to recent transactions.
- Visual financial overview with charts.
- Add, view, and delete income sources.
- Download income details in Excel format.
- Add, view, and delete expenses with category-based tracking.
- Download expense details in Excel format.
- Bar, Pie, and Line charts to visualize income and expenses.
- Last 30 days expenses and 60 days income insights.
- Download detailed reports of income and expenses.
- Data available in Excel format for easy tracking.
- Works seamlessly across desktops, tablets, and mobile devices.
- Sidebar menu with easy access to Dashboard, Income, Expenses, and Logout.
- Hover over income/expense cards to reveal a delete button for quick removal.
- React.js
- Tailwind CSS v4
- Axios for API requests
- React Router for navigation
- Recharts for data visualization
- Node.js
- Express.js
- MongoDB with Mongoose
- JWT for authentication
- Multer for image uploads
Ensure you have the following installed:
- Node.js (>= 16.0.0)
- MongoDB (Local or Cloud instance)
git clone https://github.com/Prakashkumar88/expency.git
cd expencycd backend
npm installCreate a .env file in the main directory and add:
MONGO_URI =
JWT_SECRET =
VITE_BASE_URL=
CLIENT_URL =
PORT = 8000
npm startcd frontend
npm installOnce both servers are running, open http://localhost:8000 in your browser.
POST /api/auth/signup– User registrationPOST /api/auth/login– User loginGET /api/auth/user– Fetch user details
POST /api/income/add– Add incomeGET /api/income– Get all income sourcesDELETE /api/income/:id– Delete an income sourceGET /api/income/download– Download income report
POST /api/expense/add– Add expenseGET /api/expense– Get all expensesDELETE /api/expense/:id– Delete an expenseGET /api/expense/download– Download expense report
GET /api/dashboard– Fetch dashboard data
- Implement recurring transactions.
- Add budget planning features.
- Multi-currency support.
- Enhanced analytics and insights.
Contributions are welcome! If you'd like to contribute:
- Fork the repository.
- Create a new branch (
git checkout -b feature-name). - Commit your changes (
git commit -m 'Add new feature'). - Push to the branch (
git push origin feature-name). - Open a pull request.
This project is licensed under the MIT License.
For any queries or suggestions, feel free to reach out via 9101prakashkumar@gmail.com.