MENGLY / Puzzle Games

Shelf Pop–Triple Match

Shelf Pop! is a portrait, mobile-first cozy sorting game. The player runs a tiny juice shop: drinks sit in wooden cubbies, and the job is to tidy the shelves...

8/26/2026Views: 0Launches: 0

{Shelf Pop–Triple Match} Project Report

1. The Concept

Shelf Pop! is a portrait, mobile-first cozy sorting game. The player runs a tiny juice shop: drinks sit in wooden cubbies, and the job is to tidy the shelves before the timer hits zero.

The loop is simple to show and hard to rush:

There is no holding tray. Every move is a shelf-to-shelf choice, so the puzzle is spatial, not a dump-and-sort. Similar colors are kept in families so the board stays readable. Boosters (Hint, Shuffle, Undo) help beginners without removing the timer pressure that experts play against.

The shop is the reward layer, not the core. Coins buy decorations for the storefront. Language is English and Khmer. The feel is peach, mint, wood, and 3D buttons — a mini-market, not a dark arcade.

Unique hook: triple-match on the shelf itself, with a different shelf shape and wood skin every level.

2. The Stack

No engine, no bundler, no backend.

Play it by opening index.html on a phone or in a desktop browser. Portrait is the target. The game is a PWA-ready web shell (apple-mobile-web-app tags, safe-area padding).

3. The 1 Day Sprint (+ polish pass)

Morning (Hours 1–3):

Locked the core loop first. Built the shelf board, CSS drink sprites, and pointer drag (item leaves the cubby immediately, ghost follows the finger). Drop rules: empty slot appends, full shelf can swap, otherwise snap back. Match-3 POP on one shelf, combo popup, timer HUD, Hint / Shuffle / Undo. Incremental DOM updates on drop so the board does not rebuild every move. fitBox scales drinks to cubby size, not item count.

Afternoon (Hours 4–6):

Wrapped a real product around the loop. Home screen (peach–mint gradient, PLAY / SHOP), shop with buyable decor, win modal, pause (retry + home, tap outside to resume — no RESUME button). English / Khmer copy. localStorage for progress. Coin economy and star tracking. Power-row layout fought CSS order (later unscoped rules kept winning); the fix was to put .game-screen .power-row at the end of the stylesheet.

The Finish Line (Hour 7-8):

Shipped a playable 20-level path. Each level has its own type count, packing style, wood skin, corner shape, and cubby layout (I, H, diamond, stairs, zigzag, 3×3). Home stars cap at 60. After level 20, NEXT goes home. Mobile fit pass: HUD, compact power buttons, drinks flex-centered in cubbies. Visibility-change pauses the run without fighting an already-open modal.

Polish (Aug 10):

New-user intro on level 1 (drag, match three, boosters) with icon diagrams and a hand; timer stays frozen until LET’S POP. Sound toggle plus pickup / drop / pop / win / lose SFX. Language and sound folded into one globe icon with a two-option menu. Pause and Time’s Up restyled to cream cards, gold badges, and 3D pills; CONTINUE removed from Time’s Up. Looping cozy song on Web Audio, ducked during pause and end screens.

4. The Roadblocks

5. Key Takeaways

My final thought:

Shelf Pop! is a small web game with a clear promise: tidy the shelf, pop the triple, beat the clock. The stack stayed boring on purpose so the feel could stay sharp. The work that mattered was not more systems — it was making one drag, one pop, and one cream pause card feel like a real phone game.