GainSense is an investment analytics platform that allows users to upload CSV-based investment data and visualize yearly investment totals, profit/loss, and asset-wise distributions. The project emphasizes backend data processing, analytics, and frontend visualization using FastAPI, PostgreSQL, and Next.js.
- Upload investment data via CSV
- Investment categorization (Stocks, Mutual Funds, Gold, etc.)
- Profit/Loss calculation per investment
- Aggregated metrics:Total invested amount, Net profit/loss, Best & worst performing investments
- year-wise investment and profit/loss analysis
- Distribution of investments by type
- Interactive charts & tables
- Backend data validation & error handling
- Token-based data editing & viewing limits
- Advanced filters (date range, asset type)
- Export analytics as PDF/CSV
- Reading Multiple Sheets
- Frontend: Next.js(React), Tailwind CSS / Daisyui
- charts: Chart.js
- Backend: FastAPI, SQLAlchemy
- Database: PostgreSQL (Local), Supabase (Hosted PostgreSQL)
- Clone the Repository: git clone https://github.com/shiv-sk/Gainsense.git
- cd Gainsense
- cd server
- pip install -r requirements.txt
- cd ../client
- npm install
- Set up client environment variables using env.example
- Set up server environment variables using env.example
- Ensure Postgres is running locally or use a cloud Postgres URI
- cd server
- uvicorn main:app --reload
- cd client
- npm run dev
CSV Format
investment_type,investment_amount,investment_date,return_percent
Stock,5000,2022-03-15,12
Mutual Fund,10000,2023-06-10,8
Gold,7000,2024-01-05,10 Location
client/public/GainSense-sample-data.csv
Demo: https://drive.google.com/file/d/1CLGYWEe4uEplDchqJN2pVU0Pz85XhTjE/view?usp=sharing
Live: https://gainsense.vercel.app
- email: shivanandcrew034@gmail.com





