Welcome to SnakeForCan, a meticulous recreation of the classic Nokia 3310 Snake game built with modern web technologies. This project was born as a first "Vibe Coding" experiment, dedicated to a friend (Can) who really wanted to play the classic Snake!
🎮 Play Live: snakeforcan.vercel.app
- Iconic Gameplay: The classic, non-stop grid-based snake experience. Grow longer and move faster as you eat food.
- Hyper-Realistic UI: Play inside a visually stunning, meticulously CSS-crafted 3310 casing complete with molded physical buttons, screen glass glare, and a nostalgic desktop spotlight environment.
- Responsive Controls:
- ⌨️ Play with your keyboard (
W, A, S, DorArrow Keys). - 🖱️ Play by clicking/tapping the on-screen 3D-molded D-Pad and Action keys.
- ⌨️ Play with your keyboard (
- Retro Aesthetic: "Press Start 2P" pixel fonts, true-to-life LCD green colors (
#879571), CRT scanlines, and vignette shadow effects. - Turn-On Animation: Watch the screen flicker to life when you load the app.
- React (via Vite)
- Tailwind CSS v4 (for rapid structural styling and advanced CSS shading)
- Custom React Hooks (
useSnakeGameto isolate pure grid-based gameplay logic)
To run this project locally, follow these steps:
Make sure you have Node.js installed on your machine.
- Clone this repository:
git clone https://github.com/hazreti-ozay/snakeforcan.git
- Navigate into the project directory:
cd snakeforcan - Install the dependencies:
npm install
- Start the development server:
npm run dev
- Open your browser and visit
http://localhost:5173(or the port specified in your terminal).
- Start/Restart: Press
Enteron your keyboard or click the on-screenSELECTbutton. - Pause: Press
Spacebar/ESCor click the on-screenPAUSEbutton. - Steer: Use the D-Pad arrows on-screen, or use
WASD/Arrow Keys.
Contributions, issues, and feature requests are welcome! Feel free to check the issues page.
Designed and developed by
- Portfolio: ozidev.vercel.app
- GitHub: @hazreti-ozay
This project is open-source and available under the MIT License.
Developed with ❤️ by OziDev