Learn regex by guessing it — a Wordle-style daily puzzle game for regular expressions.
You're shown a set of strings the pattern must match and a set it must reject. Build a regex from token tiles; each guess is scored tile-by-tile (🟩 correct / 🟨 right token, wrong spot / ⬛ absent) and you get plain-English feedback on why it fails. Solve it in six guesses. A new puzzle every day, plus unlimited practice across three difficulty levels.
It runs entirely in the browser — the daily puzzle is generated deterministically from the date, and your stats live in localStorage.
npm install
npm run dev # dev server on http://localhost:43210/| Command | What it does |
|---|---|
npm run dev |
Vite dev server (port 43210) |
npm run build |
Type-check + production build to dist/ |
npm run preview |
Serve the built dist/ |
npm run test |
Vitest (watch); npm run test:run for one run |
npm run lint |
ESLint |
npm run format |
Prettier write |
A small React SPA with a pure, deterministic game engine. Dependency direction is strict — ui → game → engine:
src/engine/— pure, seed-deterministic logic: puzzle generation, parsing/rendering, scoring, and the hint/diagnostic helpers. No React, noDate/Math.random. Unit-tested with Vitest.src/game/— app glue: the daily/practice seeding (the only place randomness/clock is used) andlocalStoragepersistence.src/ui/— the React components (inline-styled).
See CLAUDE.md for a fuller tour.
CI (.github/workflows/ci.yml) lints, tests, and builds on every push, and deploys to GitHub Pages from master. The site is served from the custom domain regexle.eldorado.io (public/CNAME), so vite.config.ts sets base: '/'. One-time setup: point a DNS CNAME record for regexle.eldorado.io at <org>.github.io, and set the custom domain in the repo's Pages settings.
Built with ♥ from LATAM by the El Dorado engineering team.