streamable-httpupdated 1mo ago
Starling Bank Bikes Manchester is a dashboard that monitors bike-sharing stations in Manchester in real time and reports analytics about them. The project includes a web frontend and a backend API.
What can you do with Cycle Tracker?
Starling Bank Bikes Manchester
Starling Bank Bikes Manchester is a dashboard that monitors bike-sharing stations in Manchester in real time and reports analytics about them. The project includes a web frontend and a backend API.
Features
- Live bike and station stats: View availability, utilization, and capacity for each station.
- Interactive map: See station locations and bike distribution.
- Popular-station analytics: Find the most-used and highest-capacity stations.
- Modern UI: Use a responsive interface built with React, Tailwind CSS, and Radix UI.
Project structure
- bike-sharing-dashboard/ # Frontend (React, TypeScript, Vite)
├── src/
│ ├── components/
│ │ ├── dashboard/ # Dashboard features (PopularStationAnalytics, StatsCards, InteractiveMap)
│ │ ├── home/ # Home page
│ │ └── ui/ # UI primitives (Sheet, Tabs, Card, Table)
│ ├── lib/ # Utility functions
│ ├── App.css, index.css # Styles
│ └── main.tsx # App entry point
├── index.html # Root HTML
├── vite.config.ts # Vite config
└── tailwind.config.js # Tailwind config
- worker/ # Backend (Cloudflare Worker, TypeScript, Hono, D1)
├── src/
│ ├── index.ts # Hono app, CORS, static assets, cron entry
│ ├── snapshot.ts # GBFS feed -> D1 snapshot job (10-min cron)
│ └── routes/ # API routes (bikes, stations, analytics)
├── migrations/ # D1 schema migrations
└── wrangler.jsonc # Worker + D1 + cron + custom-domain config
Get started
Prerequisites
- Node.js and npm
- A Cloudflare account with Workers and D1, for deployment
Develop locally
To run the backend (Worker plus local D1), enter the following commands:
cd worker
npm install
npm run migrate:local # first time only
npx wrangler dev # API on http://localhost:8787
To run the frontend, enter the following commands:
cd bike-sharing-dashboard
npm install
npm run dev # UI on http://localhost:5173, calls the local worker
Deploy
The app runs at cycle.arrakis.house. When you push a
change to main that touches worker/ or bike-sharing-dashboard/, the
.github/workflows/deploy.yml workflow builds the frontend, applies the D1 migrations,
and runs wrangler deploy. The Worker serves the static frontend and the /api/v1 API
from the same origin. A 10-minute cron job snapshots the Manchester Beryl General
Bikeshare Feed Specification (GBFS) feed into D1.
Technologies used
- Frontend: React, TypeScript, Tailwind CSS, Vite, Radix UI
- Backend: Cloudflare Workers, Hono, D1 (SQLite), TypeScript
Author
Install
Add Cycle Tracker to your client. Pick the one you use.
claude mcp add --transport http cycle-tracker https://cycle.arrakis.house/mcpcodex mcp add cycle-tracker --url https://cycle.arrakis.house/mcp{
"mcpServers": {
"cycle-tracker": {
"url": "https://cycle.arrakis.house/mcp"
}
}
}Add to `~/.cursor/mcp.json`, or `.cursor/mcp.json` for a single project.
{
"servers": {
"cycle-tracker": {
"type": "http",
"url": "https://cycle.arrakis.house/mcp"
}
}
}Add to `.vscode/mcp.json` in your workspace.
{
"mcpServers": {
"cycle-tracker": {
"url": "https://cycle.arrakis.house/mcp"
}
}
}Add to `claude_desktop_config.json`, then restart Claude Desktop.
{
"mcpServers": {
"cycle-tracker": {
"serverUrl": "https://cycle.arrakis.house/mcp"
}
}
}Add to `~/.codeium/windsurf/mcp_config.json`.
Score
39 / 100
Incomplete
- Documentation22/25
- Maintenance16/25
- Trust6/20
- Capability0/15
- Install experience12/15
- Documents what it does and how to connect
- Has a resolvable package or endpoint
- Exposes at least one tool, prompt or resource
- README has substantive content
- Includes a code example
- Documents its configuration
- Mentions credentials or security posture
- Last commit 41 days ago
- Has a release history
- Repository is not archived
- No licence detected
- Namespace verified in the official MCP registry
- Claimed by its owner
- Published under an organisation
- 0 tool(s) documented
- Provides prompt templates
- Provides resources
- 6 documented install method(s)
- Published to a package registry
- Offers a hosted endpoint — no local install
Version history
| Versions | Published |
|---|---|
| 1.0.0Latest | Jul 3, 2026 |