Help/Settings
Rules
- Goal: push every box onto a goal square . Any box may go on any goal – there are as many goals as boxes.
- Moving: the man walks only horizontally and vertically (not diagonally), and not through walls or boxes.
- Pushing: when the man walks into a box, he pushes it one square further. Boxes can only be pushed, never pulled.
- Only one box at a time: two boxes in a row won’t move, and a wall stops a box too.
- Solved: a box on a goal changes its look. You can push it off again – sometimes you even have to. The level is solved when all boxes are on goals at the same time.
- Careful: a box in a corner, or against a wall with no goal along it, is stuck for good. Then ↶ Undo helps.
Controls
- Walk: tap or click a square – the man walks there. Or drag the man, swipe and hold anywhere, use the D-pad (switch it on in Settings) or the arrow keys.
- Push: just walk into the box. Swipe and D-pad: one step per gesture. Dragging the man keeps pushing up to your finger or pointer, a held key keeps pushing slowly.
- ↶ Undo takes back the last step (also U, Ctrl+Z, Backspace); ⟲ restarts the level (R).
- Two fingers or mouse wheel: zoom and pan. Mouse: right button or Shift to pan.
- Keyboard: arrow keys, WASD (ZQSD on AZERTY – same position) or numeric keypad 8/4/6/2 · U, Ctrl+Z or Backspace: undo · Shift+U or long-press ↶: undo until solvable · H: hint · R: restart · N/P: next/previous level · M: menu · +/−/F: zoom
- ✓ = solved, • = already played. Stored in this browser, together with the current game.
Shortcuts and help
- Tap a box (mouse: drag the box), then tap a square or release there: the man pushes only this box there, walking around it as often as needed – one step to undo. Colors: green = the box can go there · light green = reachable, but a dead end (from there it can never reach a goal) · very light red = out of reach for this box (other boxes stay put). Just one push: tap the next square. Cancel: tap elsewhere, on the box again, or Escape.
- 🪄 Hint (H): searches a solution from the current position. If other solvers are still running, more solutions appear to choose from (preselected: the shortest). Then: Next move (shows the path as an arrow) or Play solution. Tells you when there is none any more. Then Undo until solvable helps. If the quick search finds nothing: Keep searching (up to 10 minutes, all CPU cores) – or, if your position lies on its path, use a stored solution.
- Rating: after solving, the dialog shows your moves and pushes compared with the reference solution, undone pushes and the share of help moves – giving a score of 0–100 🧠. From 50 there are more fireworks, from 75 a golden shower.
Walk: swiping and dragging move the man. Scroll: swiping always just moves the board; tapping still walks there or selects a box.
Optional: solved levels, best scores and ratings are synced between your devices as a saved game in your Play Games account.
Graphics
Language
Difficulty
- Difficulty (5 levels, 1–5 brains in the level’s color: dark green very easy, green easy, yellow medium, orange hard, red very hard): computed from the structure of the reference solution (box moves with the automover, boxes touched again or parked, dependencies, manoeuvring, detours, packing order of the goals, traps) and the solvers’ effort, measured against levels of similar size – long straight pushes hardly count, small levels can still be tricky. A level may still feel easier or harder to you.
Points
- Every solved level earns points, at most 200 × difficulty (very easy 200 … very hard 1000). Deducted one after another:
- Path: more pushes or moves than the reference solution (pushes count 60 %, moves 40 %). No reference, no deduction.
- Undo: undone pushes, up to half – 3 pushes or 5 % are free, undoing walking steps never costs anything.
- Help/solver: share of moves from “next move” and “play solution”; just watching the solution gives 0 points.
- Back to solvable: 15 % each time.
- Your best result per level counts; medal 🥇 from 95 %, 🥈 from 70 %, 🥉 below. The sum over all levels is your total.
- Level editor (pen ✏️ in the title bar): a tap cycles the square with 🔄 (default) or paints with the chosen tool (outside, wall, floor, goal, box, box on goal), dragging paints with the element of the square where you start; drag the man into place, and pan with the middle/right mouse button or two fingers. “Check” lets the solvers work and play the solution; levels are saved into one of your own collections at any position. In the level menu your own collections can be exported as XSB, reordered and have single levels deleted.
Your own levels
Paste levels in XSB format (the Sokoban standard) from the clipboard or load a file – or drop a file onto the window or press Ctrl+V at any time. They are kept in this browser and listed at the top of the menu.
Level collections
Alberto Borella – Alberto Borella (75) · Alberto Garcia – Alberto Garcia (50) · Alberto Garcia 1 – Alberto Garcia (50) · Alberto Garcia 2 – Alberto Garcia (50) · Alberto Garcia 3 – Alberto Garcia (49) · Alberto Garcia 4 – Alberto Garcia (50) · Alberto Garcia – Best for You – Alberto Garcia (100) · Alberto Garcia – Birthday – Alberto Garcia (200) · Alberto Garcia – Boxes – Alberto Garcia (50) · Alberto Garcia – Puzzle – Alberto Garcia (100) · Alberto Garcia – Strategy – Alberto Garcia (100) · Aruba 1 – Eric F. Tchong (10) · Aruba 2 – Eric F. Tchong (12) · Aruba 3 – Eric F. Tchong (46) · Aruba 4 – Eric F. Tchong (40) · Aruba 5 – Eric F. Tchong (47) · Aruba 6 – Eric F. Tchong (40) · Aruba 7 – Eric F. Tchong (40) · Aruba 8 – Eric F. Tchong (40) · Aruba 9 – Eric F. Tchong (40) · Bagatelle – David Holland (20) · Bagatelle 1 & 2 – David Holland (32) · Boxxle 1 – Thinking Rabbit (78) · Boxxle 2 – Thinking Rabbit (117) · Caleb (22) · Cantrip – David Holland (20) · Cantrip 1 & 2 – David Holland (33) · Classic Quest – Thinking Rabbit (50) · Cosmonotes – Aymeric du Peloux (20) · Cosmopoly – Aymeric du Peloux (19) · Erim Sever – Erim Sever (273) · Frantisek Pokorny – Frantisek Pokorny (19) · Gavin Duncan – Gavin Duncan (12) · Grigr 2001 – Evgeny Grigoriev (GRIGoRusha) (100) · Grigr 2002 – Evgeny Grigoriev (GRIGoRusha) (40) · Grigr Comet – Evgeny Grigoriev (GRIGoRusha) (30) · Grigr Special – Evgeny Grigoriev (GRIGoRusha) (40) · Grigr Star – Evgeny Grigoriev (GRIGoRusha) (30) · Grigr Sun – Evgeny Grigoriev (GRIGoRusha) (10) · Holland dh1 – David Holland (10) · Holland dh2 – David Holland (10) · Humberto Luiz Bianchi – Humberto Luiz Bianchi (15) · Jean-Pierre Kent – Jean-Pierre Kent (75) · John C. Davis – John C. Davis (2) · JSokoban – Folke Ashberg (200) · JSokoban Watch – Folke Ashberg (150) · Kenyam Set A – Kenya Maruyama (45) · Kobus Theron – Kobus Theron (107) · Kostas (16) · LOMA – Aymeric du Peloux (49) · Maelstrom – David Holland (21) · Maelstrom (20) – David Holland (20) · Manuel (5) · Marcus Palstra – Marcus Palstra (27) · Microban – David W. Skinner (155) · Microban II (Mas Microban) – David W. Skinner (135) · Microban III – David W. Skinner (101) · Microban IV – David W. Skinner (105) · Micro Cosmos – Aymeric du Peloux (40) · Micro Cosmos (Variante) – Aymeric du Peloux (40) · Mini Cosmos – Aymeric du Peloux (40) · Myriocosmos – Aymeric du Peloux (13) · Nabo Cosmos – Aymeric du Peloux (40) · Original & Extra (46) · Pico Cosmos – Aymeric du Peloux (20) · Remodel Club – David Holland, GRIGoRusha (34) · Sasquatch – David W. Skinner (53) · Sasquatch II (Mas Sasquatch) – David W. Skinner (50) · Sasquatch III – David W. Skinner (50) · Sasquatch IV – David W. Skinner (50) · Sasquatch IX – David W. Skinner (50) · Sasquatch V – David W. Skinner (50) · Sasquatch VI – David W. Skinner (50) · Sasquatch VII – David W. Skinner (50) · Sasquatch VIII – David W. Skinner (50) · Sasquatch X – David W. Skinner (50) · Sasquatch XI – David W. Skinner (50) · Sasquatch XII – David W. Skinner (50) · Serg Belyaev 1 – Serg Belyaev (400) · Serg Belyaev 2 – Serg Belyaev (28) · SokEvo – Lee J. Haywood (107) · SokEvo (96) – Lee J. Haywood (96) · SokHard – Lee J. Haywood (169) · Sokogen – Jacques Duthen (78) · Sokomania – Alberto Garcia (50) · Sven Egevad 1 – Sven Egevad (300) · Sven Egevad 2 – Sven Egevad (130) · Sven Egevad 3 – Sven Egevad (300) · Sven Egevad 4 – Sven Egevad (300) · Sven Egevad 5 – Sven Egevad (300) · Sven Egevad 6 – Sven Egevad (300) · Sven Egevad 7 – Sven Egevad (269) · Sven Egevad – Sharpen – Sven Egevad (148) · Sven Egevad – Yasgood 2 – Sven Egevad (310) · Tricky (5) · Yoshio Murase – Auto-Generated – Yoshio Murase (52) · Yoshio Murase – Hand-Made – Yoshio Murase (54)
About JSokoban
JSokoban is a free, mobile-optimized Sokoban with a huge selection of 7,674 levels in 97 collections. With a built-in solver (Festival 3.1 by Yaron Shoham plus our own FESS search): 🪄 Hint shows the next move or plays the solution for you. Your own levels in XSB format can be pasted or loaded from a file. Runs right in your browser on phone, tablet and PC: no app, no sign-up, no ads. Written in JavaScript by Folke Ashberg in 2003, relaunched in 2026.
Solver: The hint feature runs Festival 3.1 by Yaron Shoham (MIT license) as WebAssembly right in your browser, together with our own solver (solver.js), whose FESS search is based on the method behind Festival (Shoham & Schaeffer, “The FESS Algorithm”, 2020).
Authors: Alberto Borella: Alberto Borella · Alberto Garcia: Alberto Garcia, Alberto Garcia 1, Alberto Garcia 2, Alberto Garcia 3, Alberto Garcia 4, Alberto Garcia – Best for You, Alberto Garcia – Birthday, Alberto Garcia – Boxes, Alberto Garcia – Puzzle, Alberto Garcia – Strategy, Sokomania · Aymeric du Peloux: Cosmonotes, Cosmopoly, LOMA, Micro Cosmos, Micro Cosmos (Variante), Mini Cosmos, Myriocosmos, Nabo Cosmos, Pico Cosmos · David Holland: Bagatelle, Bagatelle 1 & 2, Cantrip, Cantrip 1 & 2, Holland dh1, Holland dh2, Maelstrom, Maelstrom (20) · David Holland, GRIGoRusha: Remodel Club · David W. Skinner: Microban, Microban II (Mas Microban), Microban III, Microban IV, Sasquatch, Sasquatch II (Mas Sasquatch), Sasquatch III, Sasquatch IV, Sasquatch IX, Sasquatch V, Sasquatch VI, Sasquatch VII, Sasquatch VIII, Sasquatch X, Sasquatch XI, Sasquatch XII · Eric F. Tchong: Aruba 1, Aruba 2, Aruba 3, Aruba 4, Aruba 5, Aruba 6, Aruba 7, Aruba 8, Aruba 9 · Erim Sever: Erim Sever · Evgeny Grigoriev (GRIGoRusha): Grigr 2001, Grigr 2002, Grigr Comet, Grigr Special, Grigr Star, Grigr Sun · Folke Ashberg: JSokoban, JSokoban Watch · Frantisek Pokorny: Frantisek Pokorny · Gavin Duncan: Gavin Duncan · Humberto Luiz Bianchi: Humberto Luiz Bianchi · Jacques Duthen: Sokogen · Jean-Pierre Kent: Jean-Pierre Kent · John C. Davis: John C. Davis · Kenya Maruyama: Kenyam Set A · Kobus Theron: Kobus Theron · Lee J. Haywood: SokEvo, SokEvo (96), SokHard · Marcus Palstra: Marcus Palstra · Serg Belyaev: Serg Belyaev 1, Serg Belyaev 2 · Sven Egevad: Sven Egevad 1, Sven Egevad 2, Sven Egevad 3, Sven Egevad 4, Sven Egevad 5, Sven Egevad 6, Sven Egevad 7, Sven Egevad – Sharpen, Sven Egevad – Yasgood 2 · Thinking Rabbit: Boxxle 1, Boxxle 2, Classic Quest · Yoshio Murase: Yoshio Murase – Auto-Generated, Yoshio Murase – Hand-Made
Are you the author of one of these collections and would rather not see it here, or want it credited differently? Please get in touch.
© 2003, 2026 Folke Ashberg · Level collections © their authors · Original from 2003 · Privacy
Version
