⭐ Star us on GitHub — it helps!
Roadmap • How To Use • Notes & disclamers • License
We seek to create a financial planning platform for the general public. Allocation dashboards, investment management tools, portfolio allocation, optimization, risk assessment, simulation, and forecasting. The tools of quantitative analysts and financial planners in hands of the regular investor and general public.
Feel free to submit a PR if you want to add items to the Roadmap!
- LandingPage #9
- Login #2
- Onboarding #25
- Search for securities
- Watchlist #8
- Actions: Add/Delete
- Dashboard
- Total value, gains, percentage gains
- Performance chart
- Asset Type overview (Stock, bonds, cash...)
- Transactions #7
- Show all buy/sell/split transactions
- Actions: Add/Edit/Delete
- Holdings
- shares, purchase date, average price, initial value, current price, current value, increase value, increase percentage, percentage of portfolio
- actions: Buy/Sell/View
- Stock Detail Page
- Fund Detail Page
- Settings
- Default Currency
- Download/Backup personal Data
- Delete Account
- Dockerize the application, and simplify initial setup
- CSV import/export of transactions
- Multiple Accounts #6
- Show all accounts by this user
- Actions: Add/Edit/Delete
- Non-financial/custom assets #3
- Allocations
- Type (stock, bond, cash ...)
- Industry (Tech, Consumer goods ...)
- Region (US, Europe, Asia ...)
- Analytics
- Volatility
- Diversity #51
- Performance
- Notifications #47
- Stock bundles #45
- Compare Assets #44
- Social features #46
- Comments for financial assets
- Share watchlists/bundles
- Follow watchlists/bundles
- Multiple portfolios
- Customizable widgets
- Market research
- Advanced analytics
- Integrations with brokers
git clone https://github.com/GoPlan-Finance/GoPlan-app.git
cd goplan-app
- Node 14 or newer
- MongoDB version 3.6
If you haven't already installed MongoDB, head over to https://docs.mongodb.com/manual/installation/ for instructions
This project uses yarn workspaces. So running the following command will install the dependencies for all workspaces (backend, frontend and common).
yarn install
- Copy
backend/config/config.defaults.ts
tobackend/config/config.ts
and Edit the configuration file:- Database URL:
- Master Key: Can be any arbitrary string
- Data provider(s) API Keys: We currently only support https://eodhistoricaldata.com, further API providers are planned in the future.
cd backend
yarn run backend-serve
cd frontend
yarn run frontend-serve
visit https://local.goplan.finance:3000
cd backend
yarn install
# This will rebuild the backend, and restart it when you make change in the code
yarn run watch-debug
If you find anoying watch-debug
restarts the server on every changes. You can do this
Open a separate terminal and run (and leave runnning) :
yarn run watch-ts
When you are ready to test your changes:
yarn run serve-debug
Parse Dashboard is a standalone dashboard for managing the GoPlan Parse Server. (https://github.com/parse-community/parse-dashboard)
install dashboard locally
npm install -g parse-dashboard
Launch dashboard
parse-dashboard --dev --appId goplan-finance --masterKey yourMasterKey --serverURL "http://localhost:1337/parse"
- You have an idea ? Submit it in Discussions
- You found a bug ? Submit it in Issues
- You found a security issue ? Contact a moderator in private
- You want to chat ? Say Hi! On discord
We are not in any way professional traders, financials experts or financial advisors. This is an open source project created by passionate developers for free.
Considering that this application is related to the financial sector and stock market, there is a special attention that was drawn toward ensuring accuracy of the information displayed and how the handling of confidential information is made.
That said, the good faith and commitment of the team in this project shall not be in any case confused for a warranty of any sort.
Please refer to section 16
and 17
of the LICENSE for any details
This project handle private financial informations, our goal is to protect to a maximum each users privacy and confidential informations.
That said, once again, the good faith and commitment of the team in this project shall not be in any case confused for a warranty of any sort.
The information exchanged between the client and server are on a need to know basis. That means, that we will use client-sie encryption on all the data we can in order to ensure that even in a case of a security issue, your personal data is protected.
Type of data | Client side encryption | Why? |
---|---|---|
# of shares bougth or sold | Yes 🔐 | No need to know for the server |
Date of purchace order | No | Server need to filter and sort orders |
Ticker symbol of order | No | Server need to process time-series and pre-fetch API data |
Name of your private Watchlists | Yes 🔐 | No need to know |
Name of your shared Watchlists | No | Name need to be stored in text to allow other users to see it |
Name of your Accounts/Assets | Yes 🔐 | No need to know |
This project has not been, for now, reviewed by an independent security firm. We are open to a partnership.
GPL v3