This repository contains the last available copy of the Airmash frontend app, as extracted from archive.org, with a bunch of edits intended to make things more readable and maintainable:
src/js/
. Each file
represents what appears to be one of the original source modules.jsnice.org
to improve readability of some functions, particularly in
graphics. The Git log details each use individually.https://data.airmash.online/games
, and constructs
each server's WebSocket (wss://
) URL from host
and path
.The code has been repackaged with npm to use webpack for building the final frontend code. To build locally, issue these commands after cloning the repo:
npm install
npm run build
The output will be created in dist/
, and can be served using a local web server for testing (e.g. something like cd dist ; python3 -m http.server
).
For development, DEBUG=1 npm run build
cuts build time down by disabling minification.
The original Airmash game was never published as free software, and so the 8,000 lines of non-library JS are covered by copyright. The copyright owner appears disinterested in updating Airmash, but that does not mean their rights have disappeared. Don't copy code you find here into projects you care about!
The existence of this repository is not even a grey area – it's directly infringing. But it seems such infringement is the only option we have left to keep the game alive.
Pristine copies of the original assets are available under the archive.org-original tag.
One reason I love Airmash so much is because it was such a beautiful piece of code. They managed to fit a compelling multiplayer action game in a web browser, that's really a work of art. I'd love to preserve that art as much as possible, but it's also important for the remaining Airmash players to work together to preserve what remains of the game.
So with that said, please assume quite a permissive policy with regard to what can be merged into this repository, and please understand this repository belongs to everyone.