The Maze Game Navigate · Solve · Conquer
About
Open-source · free to play

Find the way out.

A fast, procedurally generated maze game in your browser. Every maze is unique, always solvable, and built to be beaten - race the clock, climb the leaderboard, and unlock achievements.

How to play

Press Play

The maze stays frozen behind the Play overlay. Pressing Play reshuffles it and starts the clock - no peeking ahead.

Move the player

Guide the coral square from the top-left to the lime exit at the bottom-right.

WASD

Stuck? Get a hint

Press H for a short A* nudge — only the next few cells light up, not the full path. Each hint costs points and you get a limited number per run (more on harder difficulties). You'll confirm before one is spent.

HP pauseR new

Beat your best

Finish fast with few moves for a high score, then submit to the global leaderboard.

What's inside

🧩

Procedural mazes

A fresh, perfect maze every round - exactly one path between any two cells, always solvable.

🎚️

Four difficulties

From Easy (11×15) to Expert (25×35), with scoring multipliers that reward the hard ones.

💡

A* hints

Partial-path guidance when you're lost — a few steps ahead via A*, with a per-run cap and point cost.

🏆

Achievements

Eight to unlock - Speed Demon, Perfectionist, Streak Master, Night Owl, and more.

📊

Accounts & stats

Sign in to track level & XP, win rate, streaks, and a per-difficulty breakdown.

🎨

10 themes

Daylight, Midnight, Neon, Dracula, Sunset, Ocean… the whole board re-themes instantly.

📱

Plays anywhere

Swipe on the maze (or use the on-screen D-pad) on phones, keyboard on desktop. Installable as a PWA.

🌍

Global leaderboard

Compete worldwide with daily, weekly, monthly, and all-time rankings.

Under the hood

Mazes are carved with a randomized depth-first search (recursive backtracker), producing long, winding corridors. Because the carve visits every cell exactly once, the result is a perfect maze - guaranteed to have a solution. Hints and the optional auto-solver use A* with a Manhattan heuristic to find the shortest path.

The frontend is dependency-free vanilla JavaScript on an HTML5 Canvas. Scores, accounts, and leaderboards are served by an Express API backed by MongoDB (with PostgreSQL and in-memory drivers behind the same interface), documented in Swagger and deployed serverless on Vercel.

Want the algorithms on their own? mazeforge, the Python library powering the maze logic, ships separately with 11 generators, 7 solvers, and ASCII/PNG rendering.

JS Canvas Node Express Mongo DB JWT auth OpenAPI Swagger Docker + CI Python mazeforge PWA

Difficulty & scoring

Level Grid Multiplier Hint cost Max hints Steps shown
Easy 11 × 15 1.0× 5 pts 3 3
Medium 15 × 21 1.5× 10 pts 5 4
Hard 21 × 31 2.0× 15 pts 7 5
Expert 25 × 35 3.0× 20 pts 9 6
score = max(0, (100 − time·0.1/s − moves·0.5 − hints·cost) × multiplier)
Finish fast, move efficiently, and skip the hints to top the board.

Achievements to unlock

🏆
First Victory10 pts
Speed Demon25 pts · < 30s
Perfectionist20 pts · no hints
🧭
Efficient Navigator30 pts
🏃
Marathon Runner50 pts · 100 wins
👑
Expert Conqueror40 pts · expert
🔥
Streak Master35 pts · 10 in a row
🦉
Night Owl15 pts · 12–4am

FAQ

Is every maze actually solvable?

Yes. Mazes are carved with a recursive backtracker that visits every cell exactly once, producing a perfect maze - exactly one path between any two cells, so a solution always exists.

Do I need an account to play?

No. Pick a leaderboard name and play as a guest - stats are saved locally. Create an account any time to sync your level, win rate, streaks, and per-difficulty stats across devices.

Does it work on mobile?

Fully. Swipe on the maze to move (or use the on-screen D-pad), the layout stacks for small screens, and you can install it as a PWA for an app-like, offline-capable experience.

Is there a multiplayer mode?

The realtime backend (Socket.IO rooms, position broadcast, finish events) is in place on the long-lived server. A multiplayer frontend is on the roadmap.

Can I use the maze algorithms in my own project?

Yes - mazeforge is a standalone, MIT-licensed Python library with 11 generators, 7 solvers, and ASCII/PNG rendering. The REST API is also openly documented.

Explore more apps