A fan-made tribute and minimalist subway strategy game inspired by the original Mini Metro.
About • Features • How to Play • Installation • Roadmap
Metro Mini is a faithful re-implementation of the critically acclaimed minimalist subway strategy game, Mini Metro. Built from scratch using TypeScript, React 19, and HTML5 Canvas, this project brings the addictive transit-building experience to your browser with high-performance 60fps pathfinding and rendering.
The goal is to recreate the elegant simplicity of the original game designing efficient subway networks for a rapidly growing city. As stations pop up, you must redraw your lines, manage locomotives, and deploy resources like tunnels and carriages to keep the city moving.
- Draw-to-Connect Gameplay: Intuitively create and modify metro lines just like in the original game.
- Procedural City Growth: Dynamic station spawning ensures every session presents a new logistical challenge.
- Shape-Based Routing: Passengers find their own way through your network based on their destination shape.
- Weekly Upgrades: Survive the week to choose between vital assets new lines, locomotives, carriages, or tunnels.
| Mode | Description |
|---|---|
| Normal | The classic Mini Metro experience. Balance efficiency and overcrowding. |
| Extreme | Once a line is placed, it's permanent. True strategic planning. |
| Endless | A zen-like sandbox mode. Build your dream network without the risk of game over. |
- 60FPS Canvas Engine: Optimized rendering loop for smooth train movement and UI interactions.
- React 19 & TypeScript: A modern codebase showcasing how to build complex simulations in a web environment.
- Touch-First Design: Fully responsive and playable on mobile devices with intuitive touch controls.
- Connect Stations: Click or touch and drag between geometric stations (Circle, Triangle, Square) to create a metro line.
- Assign Trains: Locomotives automatically run on your lines to transport passengers.
- Optimize Routes: Drag line ends to extend your network or rewire existing paths as the city expands.
- Manage Overcrowding: Keep an eye on the red indicators! If a station stays overcrowded for too long, the network fails.
- Upgrade: Every Sunday, choose a new asset to help your network keep up with the city's growth.
Run this Mini Metro re-implementation locally:
# Clone the repository
git clone https://github.com/yourusername/metro-mini.git
# Navigate to the project directory
cd metro-mini
# Install dependencies
npm install
# Start the development server
npm run devOpen http://localhost:3000 in your browser to start building.
- Global Leaderboards: Compare your scores with players worldwide.
- City Presets: Play on maps inspired by real-world cities like London and Paris.
- Advanced Upgrades: Interchange stations and multi-track support.
- Soundscape: Minimalist ambient audio to match the original game's atmosphere.
Distributed under the Apache 2.0 License. See LICENSE for more information.
Disclaimer: This is a non-commercial fan project and a technical re-implementation. All credits for the original game concept and design go to Dinosaur Polo Club.
Made with ❤️ and TypeScript