A comprehensive financial management platform for loans, insurance, and investment portfolios
- π User Authentication - Secure login and registration
- π° Loan Management - Apply for loans, track status, generate PDFs
- π‘οΈ Insurance Services - Get quotes and compare providers
- π Portfolio Management - Track financial assets with interactive charts
- π€ Profile Management - Update personal info and view history
- π§βπΌ Admin Dashboard - Manage users and view statistics
Frontend |
|
Backend |
|
DevOps |
|
- Node.js (v14+)
- MongoDB (local or Atlas)
- npm or yarn
git clone <repository-url>
cd FinanceFlow
# Install client dependencies
cd client
npm install
# Install server dependencies
cd ../server
npm install
Create a .env
file in the server directory with the following variables:
MONGODB_URI=your_mongodb_connection_string
JWT_SECRET=your_jwt_secret
PORT=3000
EMAIL_USER=your_email_for_sending_notifications
EMAIL_PASSWORD=your_email_password
# Run server
cd server
npm run dev
# Run client (in a new terminal)
cd client
npm run dev
FinanceFlow/
βββ client/ # Frontend React application
β βββ src/
β β βββ assets/ # Images and SVGs
β β βββ components/ # Reusable UI components
β β βββ context/ # React context for state management
β β βββ layout/ # Page layouts
β β βββ lib/ # Utility functions
β β βββ pages/ # Main application pages
β β βββ utils/ # Helper functions
β βββ ...
β
βββ server/ # Backend Node.js application
βββ controllers/ # Request handlers
βββ data/ # Static data
βββ middleware/ # Express middleware
βββ model/ # Mongoose models
βββ public/ # Static files and uploads
βββ routes/ # API routes
βββ scripts/ # Database seeding scripts
βββ utils/ # Utility functions
βββ index.js # Entry point
The application uses JWT-based authentication with secure HTTP-only cookies for maintaining user sessions. User passwords are securely hashed using bcrypt before storage.
The application is fully responsive and works on devices of all sizes, from mobile phones to desktop computers.
Contributions are welcome! Please feel free to submit a Pull Request.
This project is licensed under the terms found in the LICENSE file in the root directory.