Inspiration

I wanted to challenge myself to design a project that goes beyond writing code and touches real-world deployment, DevOps, and data integration. I’ve always been curious about how professional systems expose data in a clean and structured way. This project was inspired by the idea of making baseline browser compatibility data easily available through a developer-friendly API and dashboard.

What it does

The project is a Flask-based REST API and web application that: Loads browser baseline data from a JSON file (baseline.json). Exposes compatibility information via endpoints (e.g., /api/feature/css-grid). Returns clear results like status: widely-supported and minimum browser versions. Runs with Nginx as a reverse proxy for production readiness. Is containerized with Docker and Docker Compose, making it portable and reproducible. Deployed on a Linux-based Azure VM.

How we built it

Backend: Flask (Python) for serving APIs and routes. Frontend: HTML + JavaScript with Jinja2 templates. Data: JSON dataset (baseline.json) organized for quick lookups. Reverse Proxy: Nginx for routing and load handling. Containerization: Docker + Docker Compose for multi-service orchestration. Hosting: Azure VM (Linux) where I configured firewall rules and deployed the stack. Source Control: GitHub for managing code and documentation.

Challenges we ran into

Configuring Nginx + Flask + Docker Compose to communicate correctly. Fixing port and firewall issues when deploying on Azure. Debugging container networking between Flask (app) and Nginx (reverse proxy). Doing everything solo within the hackathon timeframe (coding, infra, deployment, docs).

Accomplishments that we're proud of

Built a production-ready stack (Flask + Nginx + Docker) as a solo project. Successfully deployed on Azure VM with public API access. Learned how to structure a project with multiple services working together. Gained confidence in DevOps, backend APIs, and cloud hosting.

What we learned

Hands-on skills in Dockerization, reverse proxy configuration, and cloud deployment. How to structure APIs for real developer use cases. The importance of containerization for consistent environments. End-to-end experience: from coding → containerizing → deploying → debugging on cloud.

What's next for “Hackathon Submission – Flask + Baseline Data Integration

Add a searchable dashboard for non-technical users. Integrate more datasets (e.g., device/OS compatibility). Add authentication and rate limiting for production-scale usage. Deploy on Kubernetes for scalability. Open-source and improve documentation so others can build on it.

Share this project:

Updates