A browser-based voxel sandbox — mine, build, explore and survive, solo or with friends.
MineClone is a Minecraft-inspired voxel sandbox that runs entirely in your browser. No downloads, no installs — just open the page and play. It is built with plain HTML, CSS and JavaScript, using a raw WebGL renderer and fully procedural textures, item icons and sounds.
Play solo and save your world locally, or connect to a multiplayer server and share a persistent room with friends.
- Block-based world — procedurally generated terrain with varied biomes
- Mining and building — break and place hundreds of block types
- Survival mode — day/night cycle, hostile mobs at night, health and combat
- Builder mode — creative-style free building with no mob threats
- Inventory, tools and armor — wood → stone → iron → diamond progression
- Food and animals — 29 passive animals across 5 habitats; harvest meat and eat from the hotbar
- Hostile mobs — zombies, skeletons, spiders and creepers spawn at night
- Crafting and smelting — crafting table, furnace, all major recipes
- Water system — flowing water, buckets and ocean simulation
- Blueprints / Structure Builder — capture, rotate, paste and undo large structures
- NPCs — talk to Wanderers, Builders, Miners, Guards and Helpers across the world
- Helpish hub — hire NPC helpers and give them commands
- In-game Guide (G) — controls, recipes, blocks/mobs reference and getting-started walkthrough
- Adventure Log (L) — quests, 54 achievements, challenges and 35 progression ranks
- Multiplayer — optional, room-based, persistent, with shared mobs, chests, chat and more
Live demo: https://jimmy7610.github.io/MineClone/
Requires a WebGL-capable browser. Chrome or Edge on desktop gives the best performance.
| Key | Action |
|---|---|
| WASD | Move |
| Mouse | Look around |
| Left click | Mine / attack |
| Right click | Place / use / eat |
| Space | Jump |
| Shift + W | Sprint |
| X | Fly down / descend ladder |
| I | Inventory |
| Q / Ctrl+Q | Drop item / drop stack |
| G | Guide / wiki / recipe book |
| L | Adventure Log |
| B | Structure Builder / blueprints |
| R | Talk to NPC / open Job Board |
| M | Multiplayer panel |
| T | Quick chat (when connected) |
| F | Fly mode (when enabled) |
| Esc | Close panels / pause menu |
Survival — The default. Mine resources, craft tools and armor, and defend against hostile mobs at night.
Builder mode — Creative-style building. Mobs don't attack. Great for construction and exploration without survival pressure.
You can start a new world, delete your current world, or export/import your save from the pause menu (Esc).
Multiplayer is entirely optional — singleplayer always works without a server.
To join a room:
- Press M to open the multiplayer panel
- Enter your name, a room code and the server URL
- Click Connect
Creating a new room:
- Click New Room and enter a name
- The game checks with the server whether that name already exists
- If the name exists, you will be asked to choose another one
- If it is new, the room is created and you connect automatically
Room persistence: existing rooms keep all their block edits, chests, signs, furnace state, player inventory and health between sessions. The server saves each room to disk and restores it on restart.
Public server: wss://mineclone.coator.net
Local server: see Run locally below.
Client only (any static file server works; serve.py disables caching during development):
python serve.py
Then open http://localhost:8347.
Multiplayer server:
cd server
npm install
npm start
The server runs on ws://localhost:8787. Open the multiplayer panel (M), set the server field to ws://localhost:8787, enter a room name and connect.
Server health check: http://localhost:8787/health
index.html Main game page
js/ Client JavaScript (game, multiplayer, panel, NPCs…)
assets/ Procedurally generated textures and sounds
server/ Node.js multiplayer server
server.js Server entry point
data/rooms/ Persisted room saves (gitignored)
docs/ Additional documentation and changelog
serve.py Local dev server with no-cache headers
Singleplayer saves to your browser's localStorage. You can export, import and delete saves from the pause menu.
Multiplayer rooms are saved server-side in server/data/rooms/<roomCode>.json. Each room file stores the seed, block edits, time of day, sign text, container contents, furnace state and player inventory/health. Room files are never overwritten by the New Room flow — creating a new room always requires a name that does not already exist on the server.
server/data/is gitignored. Back it up before deploying or upgrading the server if you want to keep room data.
- No account system — multiplayer identity is just a name; anyone can use your name in a room
- Water is not yet synced in multiplayer (each player runs local water simulation)
- Mob data is session-only in multiplayer — not saved between server restarts
- Intended for small friend sessions, not large public servers
- Chat history is not saved between sessions
- Multiplayer water sync
- Login and persistent online player identity
- More mobs, items and structures
- Smarter NPC helpers
- Better mobile and tablet support
Made by Jimmy Eliasson with Fable 5 (AI-assisted development).
For the full build history, see docs/CHANGELOG.md.
No license has been added yet.
