Expenza is a secure and efficient personal finance tracking system built with Express.js and MongoDB. It offers expense tracking, budget management, financial reporting, and role-based authentication.
- User authentication with JWT
- Expense and budget tracking
- Finantial goal setting and tracking
- Notifiaction system for reminders and alerts
- Financial reports and analytics
- Role-based access control
- Multi-currency support
- Secure API with input validation and security measures
- Unit and integration testing
git clone https://github.com/yourusername/Expenza.git
cd Expenzanpm installMONGO_URI=your_mongodb_connection_string
JWT_SECRET=your_secret_key
EMAIL_USER=your@email.com
EMAIL_PASS=your email pass wxyz
EXCHANGE_API_URL=https://v6.exchangerate-api.com/v6/yourapiurl/latest/USDnpm run dev📜 API Documentation
The full API documentation is available in the Postman collection:
Expenza.postman_collection.json
Import this file into Postman to explore the available API endpoints.
🔒 Security Testing
For manual security testing (SQL Injection, XSS, etc.), refer to the Postman collection:
Expenza-security-testing.postman_collection.json
🧪 Running Tests
1️⃣ Run Unit & Integration Tests
npm test