Skip to content

Commit 893b6cf

Browse files
committed
Update Readme
1 parent 9e569f3 commit 893b6cf

File tree

1 file changed

+11
-8
lines changed

1 file changed

+11
-8
lines changed

README.md

Lines changed: 11 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,9 @@
11
# F1DataLab - A Formula 1 Data Visualization Site
22

3-
_This project is under active development. Future features will include a driver-to-driver comparison tool to analyze lap times, race positions, and other key performance metrics._
43

54
_The current dataset is historical and does not contain the latest racing data. Future updates will incorporate more recent results._
65

7-
[![App Tech](https://skillicons.dev/icons?i=py,fastapi,next,ts,mysql,docker,)](https://skillicons.dev)
6+
[![App Tech](https://skillicons.dev/icons?i=py,fastapi,next,ts,mysql,docker)](https://skillicons.dev)
87

98
### **Live Site:** [**formula1datalab.com**](https://formula1datalab.com/)
109

@@ -18,19 +17,23 @@ The application provides an interactive experience for exploring Formula 1 data
1817
* **Driver Analytics:** Analyze driver performance, career milestones, and year-over-year results with intuitive graphs.
1918
* **Constructor Insights:** View detailed statistics and performance data for F1 constructors across different seasons.
2019

20+
## Technology Stack
21+
22+
* **Frontend:** Next.js 14 with TypeScript, Tailwind CSS, and Recharts for data visualization
23+
* **Backend:** Fastapi REST API with SQLAlchemy ORM
24+
* **Database:** MySQL for structured F1 racing data
25+
2126
## Containerization & Deployment
2227

2328
The entire application is containerized using Docker, ensuring consistency across development and production environments.
2429

25-
* **Container Orchestration:** Docker Compose is used to define and manage the multi-container application stack (frontend, backend, database, and reverse proxy).
30+
* **Container Orchestration:** Docker Compose is used to define and manage the multi-container application stack (frontend, backend, and database).
2631

27-
* **Efficient Production Builds:** The production environment utilizes a multi-stage Docker build strategy.
28-
1. The Next.js frontend is built once into a lean, production-ready image.
29-
2. The Nginx image is then created by copying only the necessary static assets (`.next/static` and `public`) from the pre-built frontend image. This results in a small, secure, and highly efficient Nginx container that serves the static content.
32+
* **Efficient Production Builds:** The production environment utilizes multi-stage Docker builds to create optimized, production-ready images for both the Next.js frontend and Flask backend.
3033

3134
* **Reverse Proxy & SSL:**
32-
* [**Nginx**](https://www.nginx.com/) serves as the reverse proxy, directing traffic to the appropriate frontend or backend service.
33-
* [**Let's Encrypt**](https://letsencrypt.org/) is used to automatically provision and manage SSL certificates, ensuring all traffic is served over HTTPS.
35+
* [**Traefik**](https://traefik.io/) serves as the modern cloud-native reverse proxy with automatic service discovery via Docker labels.
36+
* [**Let's Encrypt**](https://letsencrypt.org/) integration provides automatic SSL certificate provisioning and renewal, ensuring all traffic is served over HTTPS.
3437

3538

3639
## License

0 commit comments

Comments
 (0)