The Fintech Portfolio Tracker is a full-stack application designed to help users track their investments in stocks and cryptocurrencies, providing real-time valuation based on current market prices. This application utilizes React for the frontend, Node.js for the backend, and MySQL for data storage, all containerized with Docker for ease of setup and deployment.
Before you begin, ensure you have installed all of the following prerequisites on your development machine:
- Docker and Docker Compose
- Git (for cloning the repository)
- Node.js and yarn (if you plan to run the setup or application outside of Docker)
These instructions will get your copy of the Fintech Portfolio Tracker up and running on your local machine for development and testing purposes.
First, clone the repository to your local machine:
git clone https://github.com/WavenureGit/interview-exercise.git
cd fintech-portfolio-tracker
You can set up the application environment using the provided Makefile commands. This will create the necessary Docker images and containers for the frontend, backend, and database:
make build
To build and run the Docker containers for the application, use the following command:
make up
This command will start all the services defined in your docker-compose.yml
file. The frontend should be accessible at http://localhost:3000
, and the backend API at http://localhost:4000
.
If you want to run the application in development mode with live reload, use:
make up-dev
This command is particularly useful during the development phase, as it allows you to see changes in real-time without manually restarting the containers.
To stop and remove the Docker containers, use:
make down
After starting the application, navigate to http://localhost:3000
in your browser to access the Fintech Portfolio Tracker frontend and http://localhost:4000
for the backend. From there, you can add, update, and track your investment portfolio.