Manage all your investments at one place without any hassle.
- Maintain all your investments at a single place like stocks, crypto currencies and mutual-funds. (more categories are to be added)
- Create test portfolios to test your investment skills
- Shows the portfolio values in both INR and USD
- Generate reports and makes portfolio analysis easy
- Authentication with google, handled by firebase
- Create a new portfolio
- Add investments to the portfolio in domains like stocks(NSE, NASDAQ) , crypto currencies and mutualFunds.
- Monitor investments in multiple currencies currently supports INR, USD.
- Progress web app, can be installed on mobile devices.
- ReactJS + Material UI
- Firebase firestore and firestore rules to secure data
- NodeJS + express to fetch realtime prices of investments from multiple API's like CoinGecko, RapidAPI.
- Initialise a firebase project
- Create a .env file in frontend using .env.sample and fill in the credentials from firebase
cd client
npm install
- Get the API keys from Rapid API and fixer(currency exchange rates), initialise a cloud hosted redis DB (for caching | prod)
- Create a .env file in server using the .env.sample and paste in the credentials
cd server
npm install
- To run the frontend, in the root folder of project:
sh run_frontend.sh
- To run the backend , in the root folder of project:
sh run_server.sh
- Make sure you have initialised a cloud hosted redis DB and pasted the credentials in server .env file.
- Create and initialise the project with heroku, add heroku as a remote and deploy the server
git subtree push --prefix server heroku master
- Deploy frontend on vercel, make sure their are no ts-lint warnings before deploying.
- Add the deployed frontend link to firebase auth links, to make the authentication work.
- Create appropriate firestore rules to make the data secure.