Key Features • Tech Stack • How To Use • Credits • License
- See most recently viewed stops
- Instantly navigate between most popular stops and most recently viewed
- Responsive, mobile-friendly with dark mode support
- Get stops closest to current location
- Smart fuzzy searching of stops and routes
- Optimized for speed
- Built on Next.js with Turbopack for fast development and optimized production builds
- API routes colocated in the same app for minimal latency
- View current bus location
- See the previous and next stops for any bus
- Color-coding based on route for quick viewing
- Designed so that the 12W Teal, for example, has a teal background
Designed for frequent bus riders, this web app has speed and simplicity as its top priority. The app allows for quick checking of any route, keeps track of recently viewed stops, and allows riders to see the live location of a bus.
This is a full-stack Next.js application that uses CUMTD's API to deliver a responsive and intuitive end-user experience. The frontend is built with React 19, Tailwind CSS v4, and shadcn/ui components.
The initial goal of this project was to have an app designed specifically for power users that want to have a way to very quickly and reliably see the bus arrival times. Many of the existing apps suffer from lagging on load times, and I wanted a way to very quickly be able to check stops.
The site is available at uiucbus.com. The app is also featured on MTD's app page. All bus information is provided by MTD.
- Framework: Next.js 16 (App Router)
- Language: TypeScript
- UI: React 19, shadcn/ui, cmdk
- Styling: Tailwind CSS v4
- Icons: Lucide React
- Theming: next-themes
To run this project locally, you need Node.js installed.
# Clone the repository
git clone https://github.com/josh-byster/uiucbus.git
cd uiucbus
# Install dependencies
npm install
# Set up environment variables
# Create a .env file with your CUMTD API key:
# CUMTD_API_KEY=your_key_here
# Start the dev server (uses Turbopack)
npm run devThen navigate to localhost:3000 to view the tracker.
This software uses the following open source packages:
MIT
joshbyster.com · GitHub @josh-byster · LinkedIn in/joshbyster