A portfolio tracking web application.
Visit Site
·
Report Bug
·
Request Feature
Table of Contents
A simple web application that allows users to create an account, build their stock portfolio, and get live, to the second price update on some of the biggest stocks on the market. This was built as an learning experience, thus it uses the free tier of the Alpaca markets API, and is limited to 30 stocks at the moment.
The development environment is containerized using Docker, and the setup is relatively simple.
First you'll need to install Docker and Docker-Compose
- Ubuntu
apt-get install docker docker-compose
- Arch Linux
pacman -S docker docker-compose
- Other - https://www.docker.com/
You will also need NPM
- Ubuntu
apt-get install npm
- Arch Linux
pacman -S npm
- Other - https://www.npmjs.com/
- Get a free API Key at https://alpaca.markets/
- Clone the repo
git clone https://github.com/felixlevert/stock-tracker-app.git
- Install NPM packages in the static folder
cd services/web/src/static npm install
- Create a .env.dev file in project root with the following values
APP_SETTINGS=DevelopmentConfig DATABASE_URL=postgresql://stocks_dev:stocks_dev@db:5432/stocks_dev FLASK_APP=src/__init__.py FLASK_DEBUG=1 SECRET_KEY=**ENTER A SECRET KEY HERE** ALPACA_API_KEY_ID=**ENTER YOUR ALPACA API KEY HERE** ALPACA_SECRET_KEY=**ENTER YOUR ALPACA SECRET KEY HERE** SQL_HOST=db SQL_PORT=5432 DATABASE=postgres APP_FOLDER=/usr/src/app
- Build and run the docker containers
docker-compose -f docker-compose.yml up -d --build
- Add total values for each column of the portfolio table.
- Implement a detailed statistic page that shows various graphs of performance over time.
See the open issues for a full list of proposed features (and known issues).
Contributions are what make the open source community such an amazing place to learn, inspire, and create. Any contributions you make are greatly appreciated.
If you have a suggestion that would make this better, please fork the repo and create a pull request. You can also simply open an issue with the tag "enhancement". Don't forget to give the project a star! Thanks again!
- Fork the Project
- Create your Feature Branch (
git checkout -b feature/AmazingFeature
) - Commit your Changes (
git commit -m 'Add some AmazingFeature'
) - Push to the Branch (
git push origin feature/AmazingFeature
) - Open a Pull Request
Felix Levert - felix.levert@gmail.com
Project Link: https://github.com/felixlevert/stock-tracker-app