← All projects

Noughtle

A daily grid puzzle: move numbered pieces to clear every nought from the board.

Noughtle screenshot
Started2026
Built withNext.js, React, TypeScript, Three.js, Vitest, Vercel

Noughtle is a daily puzzle played on a grid. Each square holds a numbered piece, a nought, or a block. A piece moves exactly as many squares as its number, and what happens depends on where it lands: on a nought it destroys it, on empty ground it gains a point, on a piece of equal value the two merge into something smaller, and on a block it mines the block into a fresh nought. Clear every nought to win. Everyone gets the same board each day, with an emoji-grid share and a local streak counter.

I wrote the original on a PlayStation 2 when I was about thirteen, in Yabasic off a demo disc, entering every line with a controller and an on-screen keyboard. Years later I found the source and ported it — first to a single HTML file, then to Next.js. The old seed algorithm still runs bit-for-bit on the legacy route.

There are two generators. The Daily builds each puzzle backwards from a solved board, so it is always solvable. Enigma uses the original PS2 randomiser, which is not — my solver clears roughly 80% of those seeds, and the rest may genuinely be impossible. The game tells you that rather than pretending otherwise.