A web application to track intrinsic long forecast stock information and display it in a user-friendly manner. This project is built with React, TypeScript, and Express, and uses PostgreSQL for the database.
Note: This project simply holds code related to the web-application. To integrate the live process of stock fetching, you can find the code and installation process in my Stock Fetcher repository.
A live version of the site is available at intrinsic.brandongorman.me.
- Docker
- Docker Compose
-
Clone the repository
git clone https://github.com/bgorman87/Intrinsic.git cd Intrinsic
-
Run Docker Compose
Development
./docker-compose-dev.sh
This script expects the .env.dev file to be located at project root.
Production
docker compose up --build -d
This expects a .env file at project root
Note: The current project is deployed on a server using Apache as a primary reverse proxy that directs traffic to the Nginx container. This primary reverse proxy also handles SSL. You may need to adjust the Nginx config if you have a different setup.
-
Initialize Database
An initial data dump is provided in the
Database
folder and is attached as a volume to the PostgreSQL server at/data/init-data.dump
.To initialize the database with this data dump, follow these steps:
-
Find your PostgreSQL container ID by running:
docker ps
Look for the value in the NAMES column.
-
Execute the following commands, replacing
<postgres_container_id>
with your container ID, and<username>
and<database>
with the values from your .env.dev or .env file:docker exec -it <postgres_container_id> bash pg_restore -U <username> -d <database> /data/init-data.dump exit
-