Interactive exploration of New York City's Citi Bike trip data.
Data Visualization Lab · University of Trento, MSc Computer Science
Prof. Monica Moroni · Prof. Shahryar Noei
Davide Donà · Andrea Blushi · Lorenzo Di Berardino
This project focuses on the visualization of bike-sharing data from New York City, specifically utilizing the Citi Bike Trip Data. The goal is to create an interactive web application that allows users to explore and analyze the bike-sharing patterns in NYC through various visualizations and insights derived from the dataset.
The fastest way to run the full application is with the pre-built release images: a complete, pre-seeded database and ready-to-run backend and frontend. No clone, no build.
1. Download docker-compose.release.yml from the latest release.
2. Start everything:
docker compose -f docker-compose.release.yml upThat's it. Once the services are up, open:
- Frontend: http://localhost:5173
- Backend API docs: http://localhost:8000/docs
First start pulls ~1.2 GB and uses ~17 GB on disk; bringing up the database can take several minutes, so don't interrupt it. See DOCKER_SETUP.md for storage notes and custom date ranges.
For development, run a pre-seeded database in Docker and start the backend and frontend locally for hot-reloading. See LOCAL_SETUP.md for the full walkthrough — installing dependencies with uv, the database, the dataset, and running each service.
- Backend: FastAPI server, PostgreSQL setup, running tests, API docs
- Frontend: React + Vite app, development server, running tests
- Dataset exploration: EDA notebook behind the technical report (dataset description and data-quality analysis)
nyc-bike-data-visualization/
├── src/ # Application source (backend, frontend, ingestion)
├── postgres/ # Database schema files and init scripts
├── dockers/ # Dockerfiles for all services
├── docs/ # Project reports (proposal, technical, final)
├── docker-compose.yml # Full stack from source (seeds the DB locally)
├── docker-compose.dev.yml # Dev stack (pre-seeded DB image)
├── DOCKER_SETUP.md # All Docker workflows
└── LOCAL_SETUP.md # Local development setup