3.9 KiB
Ghostfolio is an open source portfolio tracker built with web technology. The software empowers busy people to have a sharp look of their financial assets and to make solid, data-driven investment decisions.
Why Ghostfolio?
Ghostfolio is for you if you are...
-
💼 trading stocks, ETFs or cryptocurrencies on multiple platforms
-
🏦 pursuing a buy & hold strategy
-
🎯 interested in getting insights of your portfolio composition
-
👻 valuing privacy and data ownership
-
🧘 into minimalism
-
🧺 caring about diversifying your financial resources
-
🆓 interested in financial independence
-
🙅 saying no to spreadsheets in 2021
-
😎 still reading this list
Features
- ✅ Create, update and delete transactions
- ✅ Multi account management
- ✅ Portfolio performance (
Today
,YTD
,1Y
,5Y
,Max
) - ✅ Various charts
- ✅ Static analysis to identify potential risks in your portfolio
- ✅ Dark Mode
- ✅ Zen Mode
- ✅ Mobile-first design
Technology Stack
Ghostfolio is a modern web application written in TypeScript and organized as an Nx workspace.
Backend
The backend is based on NestJS using PostgreSQL as a database together with Prisma and Redis for caching.
Frontend
The frontend is built with Angular and uses Angular Material with utility classes from Bootstrap.
Getting Started
Prerequisites
Setup
- Run
yarn install
- Run
cd docker
- Run
docker compose up -d
to start PostgreSQL and Redis - Run
cd -
to go back to the project root directory - Run
yarn setup:database
to initialize the database schema and populate your database with (example) data - Start server and client (see Development)
- Login as Admin with the following Security Token:
ae76872ae8f3419c6d6f64bf51888ecbcc703927a342d815fafe486acdb938da07d0cf44fca211a0be74a423238f535362d390a41e81e633a9ce668a6e31cdf9
- Go to the Admin Control Panel and click Gather All Data to fetch historical data
- Click Sign out and check out the Live Demo
Development
Please make sure you have completed the instructions from Setup.
Start server
- Debug: Run
yarn watch:server
and click "Launch Program" in Visual Studio Code - Serve: Run
yarn start:server
Start client
Run yarn start:client
Testing
Run yarn test
Contributing
Ghostfolio is 100% free and open source. We encourage and support an active and healthy community that accepts contributions from the public - including you.
Not sure what to work on? We have got some ideas. Please tweet to @ghostfolio_ or send an e-mail to hi@ghostfol.io. We would love to hear from you.
License
© 2021 Ghostfolio
Licensed under the AGPLv3 License.