Why Nitro Pals?
Nitro Pals is not a tech demo — it is a complete, playable 3D kart racing game that runs in any modern browser. Pick one of eight original drivers, race seven CPU rivals across full Grand Prix cups, and ship it anywhere as a static site: no server, no database, no API keys.
- 8 original drivers: Pip, Mochi, Bolt, Nova, Kiki, Bruno, Tako and Juno, each with their own kart kit, colors and emblem
- 3 game modes: Grand Prix (4 races, points, 3D award ceremony), VS Race and Time Trial with ghost replays
- 4 speed classes: 50cc, 100cc, 150cc and Mirror
- Local 2-player split screen (keyboard + gamepad or two gamepads)
- Drifting with three-tier turbo boosts, anti-gravity sections and gliding
- 11 original power-ups used strategically by the CPU
- Original procedural soundtrack: menu, race, faster final-lap, Star Power, victory and defeat themes
- Keyboard, gamepad and on-screen touch controls
- Installable PWA that works offline after the first visit
01. Pick your driver
A clean, animated title screen with a live 3D preview of the selected driver in the stadium. Choose mode, 1 or 2 players, race length (1 or 3 laps) and class (50cc, 100cc, 150cc, Mirror). Driver portraits are rendered from the 3D models at boot, and your last choices are remembered.
02. Full 8-kart races
Countdown start with a perfect-start boost, live standings, minimap, lap counter and coins that raise your top speed. Seven CPU drivers follow the racing line, drift for turbos, pick up item boxes and fire power-ups at the pack — and at you.
03. Three ways to race
Grand Prix — four races in a row with points (15-12-10-8-7-6-5-4), a standings table after every race, the leader starting from the back of the grid, and a 3D award ceremony for the top three.
VS Race — a single race against seven CPU rivals, with full results and finishing times.
Time Trial — just you, three Nitros and the clock. Best times are saved per class and lap count, and a translucent ghost of your best run races alongside you so you can see exactly where you gain or lose time.
04. Couch multiplayer
Two players race side by side on one screen — keyboard + gamepad or two gamepads — each with their own camera, HUD, position and items, against the full CPU field.
05. Racing that feels great
Hold a drift to charge sparks through three tiers and release for a turbo. Glider ramps launch you into the air, anti-gravity sections glue you to the walls, and boost pads, bumps and spin-outs keep every lap lively.
06. 11 original power-ups
Banana, Bounce Orb, Homing Orb, Sky Seeker, Nitro, Triple Nitro, Bomb, Phantom, Star Power, Comet and Lightning — each with its own HUD icon, 3D model, effects and rules. Item odds depend on your position, so the back of the pack gets the big comebacks.
07. Play anywhere, with any controller
- Keyboard: arrows or WASD to steer, Z/W to accelerate, Shift or K to drift, Space or E for items — every action can be remapped
- Gamepad: any standard controller (A gas, B brake, RB/RT drift, LB/LT item)
- Touch: on-screen buttons appear automatically on phones and tablets
- Graphics presets (Auto keeps 60 fps), music and effects volume, camera shake
08. Original procedural soundtrack
Every note is written in code and synthesized live with Web Audio: a chill menu theme, a driving race theme, a faster final-lap version, a Star Power theme and victory / defeat fanfares — plus synthesized engine, drift and item sound effects.
100% procedural — no asset licensing headaches
Drivers, karts, the stadium, crowd, sponsor boards, item models, music and sound effects are all generated in code. There are no third-party models, textures or sound files to license. Want your own art? Drop kart GLBs or audio samples into the optional asset-pack folder and they replace the procedural versions.
Clean, extensible architecture
The race simulation (rules, items, CPU, physics) lives in a pure, Node-testable layer, fully separated from rendering, UI, audio and input. Adding a driver, item or mode has a documented place to go.
- Music, effects volume, camera shake and keyboard remapping settings
- Debug harness (
?debug=1) for fast iteration
- Relative-path build: host from any folder or static host
Tech stack
- JavaScript (ES modules)
- three.js · WebGL 2
- Vite 7
- node --test unit tests · Playwright e2e · ESLint · Prettier
Requirements
- Node.js 20.19+
- Any browser with WebGL 2 (desktop or mobile)