A romantic Flappy Bird–style browser game starring Mia the cat, built with love for Nastya 💛
- 🎮 Classic one-tap gameplay with pixel-art visuals
- 🐱 Hand-crafted pixel art Mia character with multiple animations
- 🌆 Parallax sunset cityscape with twinkling stars
- 🏮 Romantic lantern-arch obstacles (not boring pipes!)
- 💕 Heart particle effects on milestones
- 🔊 Procedural audio — no external files needed
- 🌐 Dual language (RU/EN) with one-tap toggle
- 📱 Fully responsive — works on mobile and desktop
- 💾 Best score saved locally
- ⚡ Zero dependencies, zero build step — pure vanilla JS + Canvas
- Clone the repo
- Open
index.htmlin any browser (or use a local server for module support) - Play!
# Option A: Just open the file
open index.html
# Option B: Local server (for ES modules)
npx serve .
# or
python3 -m http.server 8000- Push to GitHub
- Import repo in Netlify
- Default settings work (no build command needed) — publish directory is root
- Done!
- Push to GitHub
- Import the repo in Vercel
- Set custom domain to
flappy-kitty.app - Done — zero config needed
| Platform | Action |
|---|---|
| Desktop | Click or press Space / ↑ |
| Mobile | Tap anywhere |
flappy-kitty/
├── index.html # Entry point
├── main.js # Init + responsive scaling
├── game.js # Game loop + scene management
├── mia.js # Mia sprite + physics
├── obstacles.js # Obstacle spawning + collision
├── background.js # Parallax background layers
├── particles.js # Heart particle system
├── ui.js # Menu, HUD, game-over screens
├── audio.js # Procedural sound (Web Audio API)
├── input.js # Unified input handler
├── i18n.js # RU/EN localization
├── storage.js # localStorage wrapper
├── config.js # All tunable constants
└── README.md
- Vanilla JavaScript (ES Modules)
- HTML5 Canvas (all rendering)
- Web Audio API (procedural sounds)
- Google Fonts (Pacifico + Nunito)
- No frameworks, no build tools, no dependencies