A hackable template for creating small and fast browser games.

Goodluck is great for:

Getting Started

Goodluck is not a typical library. You don't install it via npm install. Instead, use it as a template: generate a new repository from it, remove features you don't need, and hack away. Consult the README to learn more.


Goodluck is a template for creating small browser games which fit in a few kilobytes. It's designed for extreme hackability. The codebase is small and simple; it's mostly just ifs and fors. The code is easy to understand and modify.


What is Goodluck?

A high-level overview of what makes Goodluck special. It also includes an honest list of reasons why you might want to consider other solutions.

Why is Goodluck the way it is?

A list of questions you might be asking yourself with regards to Goodluck's design choices.

API Reference

The annotated source code of Goodluck's core components, systems, and utilities.


js13kBreakout (2022)

Part of the js13kBreakouts project.

Castle Peskenstein (2020)

A Twitter thread with a step-by-step account of creating a Wolfenstein3D clone.

Breakout (2020)

Support material from a workshop on gamedev. Follow the commits on the tutorial branch.