This is a Next.js web application built with TypeScript and Tailwind CSS that allows you to explore an interactive pixelated world. Walk around, jump between platforms, and explore the environment.
Play the game here.
- Mario-Style Centered Camera: The game camera keeps the walker centered inside a horizontal deadzone (35% to 65% of screen width) and scrolls the background and platforms as you move.
- Physics-Based Controls: Smooth horizontal movement with acceleration and friction/deceleration.
- Momentum Jumping: Jump height and forward horizontal speed scale dynamically based on the character's movement speed before launching.
- Retro HTML/CSS Graphics: A stylized 8x16 animated character sprite and textured platform blocks rendered entirely with native CSS backgrounds, gradients, and borders.
- Multi-Device Support: Full desktop keyboard controls combined with an on-screen overlay control pad for mobile touch screens and mouse input.
- Strict Quality Tooling: Formatted using Prettier, linted with ESLint, and compiled under strict TypeScript checks.
- Move Left:
ArrowLeftorA/a - Move Right:
ArrowRightorD/d - Jump:
SpacebarorArrowUporW/w
- Left Button: Move Left
- Right Button: Move Right
- Up Button: Jump
In order to run this project, you need to have Node.js and npm installed on your machine. You can download them from nodejs.org.
Install dependencies:
npm installTo run the app in development mode, use the following command:
npm run devThis will start the development server on port 9002 (using Next.js Turbopack) and open the app in your default web browser.
To ensure consistent code quality, formatting, and type-safety, use the following commands:
- Linting:
npm run lint(runs ESLint configured with Prettier & Next core web vitals) - Formatting:
npm run format(formats the codebase using Prettier) - TypeScript Check:
npm run typecheck(verifies strict types)
To build the app for production, use the following command:
npm run buildTo start the production server locally:
npm startThis app can be deployed on Netlify, Vercel, or any other hosting platform supporting Next.js applications. Connect your repository to Netlify for automatic building and deployment.
