Cratestack is a technically-playable but unpolished game made in TypeScript, featuring a unique physics engine, eleven finished puzzles based on these physics, textures generated in code, and an interesting RLE-compressed level data format representable entirely in ASCII. I have no plans to add more levels or level elements to this game, so if anyone feels like appropriating it and making it into something good then I welcome that.
To play the game, download index.html and cratestack.js to the same folder. The game uses no other assets, so it should work by just opening the HTML page.