A pixel-accurate browser clone of the classic block-stacking game. Built with vanilla HTML, CSS, and JavaScript — no dependencies.
Works on both desktop (keyboard) and mobile (touch). Responsive layout with dedicated portrait and landscape views.
- Landing page — "CUBIXA" title screen with falling tetromino background
- Level select — choose difficulty (0–9) with tiered EASY → EXPERT indicators
- Game — full 10×20 board with NES-style HUD, scoring, and top score persistence
| Key | Action |
|---|---|
| ← → | Move piece |
| ↓ | Soft drop |
| Z / X | Rotate |
| SPACE | Hard drop |
| ESC | Pause |
| R | Restart |
| ENTER | Start / Confirm |
| Q | Quit to level select |
| Gesture | Action |
|---|---|
| Tap | Rotate |
| Swipe left/right | Move piece |
| Swipe down (slow) | Soft drop |
| Swipe down (fast) | Hard drop |
| Pause button (top-right) | Pause / Resume |
Serve the root folder with any static file server:
npx serve .
Then open http://localhost:3000 in a browser.
index.html — landing page
select.html — level select
game.html — gameplay (all logic + rendering inline)
style.css — shared styles across all pages
music/
cubixa-bgm.mp3 — background music
images/
favicon.svg — SVG favicon (tetromino blocks)
image.png — Open Graph / social share preview
cubixa-preview.png — preview
| Lines | Points (× (level+1)) |
|---|---|
| 1 | 40 |
| 2 | 100 |
| 3 | 300 |
| 4 | 1200 |
| Soft drop | +1 per row |
| Hard drop | +2 per row |
Goal: clear 40 lines to win.