A Vue 3 + Vite application that makes MBTA transit data accessible and easy to explore without the complexity of working directly with GTFS APIs.
- Route Explorer: Browse all MBTA routes with interactive cards
- Route Details: View stops, vehicles, and real-time data for each route
- JSON Viewer: Developer-friendly raw data access with syntax highlighting
- Responsive Design: Mobile-first Bootstrap 5 interface
- Real-time Data: Live vehicle positions and service updates
- Node.js 16+
- npm or yarn
-
Clone the repository
-
Install dependencies:
npm install
-
Set up environment variables:
cp .env.example .env
-
Configure your MBTA API key in
.env:VITE_MBTA_API_KEY=your_api_key_hereGet your free API key at: https://api-v3.mbta.com/
npm run devnpm run buildVITE_APP_ENV: Set toDEVfor development,PRODfor productionVITE_MBTA_API_KEY: Your MBTA API key (optional but recommended for higher rate limits)VITE_MBTA_API_BASE_URL: MBTA API base URL (defaults to https://api-v3.mbta.com)
The app uses the MBTA V3 API. While an API key is optional, it's recommended to avoid rate limiting:
- Without API key: 20 requests per minute
- With API key: 1000 requests per minute
- Frontend: Vue 3 with Composition API
- Build Tool: Vite
- UI Framework: Bootstrap 5
- HTTP Client: Axios
- Routing: Vue Router
- Language: TypeScript
src/
├── components/ # Reusable Vue components
├── pages/ # Page components
├── services/ # API services
├── style.css # Global styles
└── main.ts # App entry point
This is an open-source project. Contributions are welcome!
MIT License