Tuxracer.js play Tux Racer in the browser

1 week ago 1

You can play Tux Racer directly in your browser here: Play TuxRacer.JS

TuxRacer.JS Screenshot

TuxRacer.js is a port / rewrite of Extreme Tux Racer, which itself is based on the original Tux Racer game. This project allows you to enjoy Tux Racer directly in your web browser, supporting all major desktop and mobile browsers.

Note: This project is in an early development stage and far from complete. However, some courses are already functional enough to provide a fun experience (at least for me!).


  • A recent version of Node.js (I'm using v22, but other versions may work as well)
  1. Clone or download the repository:
    git clonehttps://github.com/ebbejan/tux-racer-js.git cd tuxracer-js
  2. Install dependencies:
  3. Start the development server:
  4. Open the URL provided in the terminal output in your web browser.
  5. Enjoy!

  • Desktop: Use either the keyboard (WASD or arrow keys) or the mouse to control Tux.
  • Mobile: Control Tux using touch input via a virtual joystick.
  • Paddling forward helps Tux gain initial speed but is slowing down once he reaches high velocity.
  • Braking is useful for mastering tight turns.
  • Terrain types significantly impact Tux's acceleration and handling.

By default, the game starts on Bunny Hill, but you can switch to a different course using the course URL query parameter.

To play a specific course, add ?course=course-name to the URL. For example:

http://localhost:5173/?course=frozen-river

Below is a list of available courses and their corresponding parameters:

Course Name URL Parameter
Bunny Hill (default) bunny-hill
Frozen River frozen-river
Challenge One challenge-one
Chinese Wall chinese-wall
Downhill Fear downhill-fear
Explore Mountains explore-mountains
Frozen Lakes frozen-lakes
Hippo Run hippo-run
Holy Grail holy-grail
In Search of Vodka in-search-of-vodka
Milos Castle milos-castle
Path of Daggers path-of-daggers
Penguins Can't Fly penguins-cant-fly
Quiet River quiet-river
Secret Valleys secret-valleys
This Means Something this-means-something
Tux at Home tux-at-home
Twisty Slope twisty-slope
Wild Mountains wild-mountains
Bumpy Ride bumpy-ride

The game also supports different environments, which can be selected using the environment URL query parameter.

To change the environment, add ?environment=environment-name to the URL. For example:

http://localhost:5173/?environment=night

Here are the available environments:

Environment URL Parameter
Sunny (default) sunny
Night night
Cloudy cloudy

You can also combine parameters, for example:

http://localhost:5173/?course=downhill-fear&environment=night

This would start the game on Downhill Fear with a Night environment.


Contributions are welcome! Feel free to submit issues, feature requests, or pull requests.


Original Extreme Tux Racer Team

  • Steven Bell
  • Kristian Picon
  • Nicosmos
  • R. Niehoff
  • Philipp Kloke
  • Marko Lindqvist

Original Tux Racer Authors

  • Eric Hall
  • Jasmin Patry
  • Mark Riddell
  • Patrick Gilhuly
  • Rick Knowles
  • Vincent Ma
  • Grady O'Connell
  • Kristian Picon
  • Karl Schroeder
  • Joseph Toscano
  • Nicosmos
  • Kristian Picon
  • Daniel Poeira
  • Developed by Jan Ebbe

TuxRacer.js is licensed under the GNU General Public License v2.0. For the complete license text, see the file LICENSE.

Read Entire Article