A full-stack web application to discover, track, and manage mutual fund investments. Built with React, TypeScript, Vite (frontend) and Express, MongoDB (backend).
- Search and view mutual funds with real-time NAV data
- Register/login and manage your account
- Save mutual funds to your personal list
- View details and historical NAV for each fund
- Remove funds from your saved list
- JWT-based authentication
- Responsive dark-themed UI
- Frontend: React, TypeScript, Vite, Tailwind CSS
- Backend: Node.js, Express, MongoDB, JWT
backend/ # Express API server
frontend/ # React client app
- Install dependencies:
npm install
- Create a
.envfile inbackend/with:# Server port PORT=5000 # Node environment NODE_ENV=development # MongoDB connection string MONGODB_URI=mongodb://localhost:27017/mutual-fund-tracker # JWT secret for authentication JWT_SECRET=your-super-secret-jwt-key-change-this-in-production # Allowed CORS origin for frontend CORS_ORIGIN=http://localhost:3000
- Start MongoDB locally
- Run the server:
npm run dev
- Install dependencies:
npm install
- Create a
.envfile infrontend/with:# Backend API base URL VITE_BASE=http://localhost:5000/api # Mutual Fund public API base URL (required for fund data) VITE_MF=https://api.mfapi.in/mf
- Run the app:
npm run dev
POST /api/users/register- RegisterPOST /api/users/login- LoginGET /api/users/profile- Get profile (auth required)
GET /api/saved-funds/- List saved funds (auth required)POST /api/saved-funds/- Save a fund (auth required)GET /api/saved-funds/check/:schemeCode- Check if fund is savedDELETE /api/saved-funds/:schemeCode- Remove saved fundPATCH /api/saved-funds/:schemeCode/nav- Update NAV
MIT