Victor Saly

I build small web things — games, learning tools, and utilities that do one job well.

Most of them started as something my kids asked for. Most are free, work offline, and need no account. A few are tools I needed at work and could not find. They are all below, live ones first.

Play or use right now

  1. Delulu Beats

    delulubeats.com

    Nine full-screen games for colour, pitch, duration, rhythm, spatial memory and melody — see it, hear it, remember it, then dial it back in. Plus Beat Lab, a browser studio for building and downloading your own loop. Everything is synthesised in the Web Audio API; there is a seeded daily challenge shared by everyone.

    • Next.js
    • TypeScript
    • Web Audio
    • Canvas
  2. Shut The Cube

    shutthecube.com

    The pub dice game Shut the Box, plus a nine-row variant of my own where a matching column of tiles collapses together for a bonus. Every tile plays its own note on a pentatonic scale, so a good move sounds deliberate. Installs as an app, plays with no network, keeps no account.

    • Vue 3
    • Vite
    • PWA
    • Web Audio
  3. CorrelateAI

    correlateai.victorsaly.com

    Pulls real economic series from the FRED and World Bank APIs and hunts for correlations that have no business existing. A toy with a serious point about how easy it is to find a convincing relationship in real data. Built end to end in an afternoon.

    • React
    • TypeScript
    • FRED API
    • World Bank API
  4. FeedMe AI

    feedmeai.victorsaly.com

    Tell it what is actually in the fridge and it suggests something you can cook tonight. It works from the ingredients you already have rather than the ones a recipe wishes you had, which is the only part of meal planning I have ever found genuinely hard.

    • React
    • TypeScript
    • AI
  5. Lili's Story World

    victorsaly.github.io

    An illustrated read-along storybook site for a young dyslexic author — my daughter. It reads aloud with the current word highlighted, gives each character its own voice, and pairs every paragraph with its own artwork. Built around what actually helps her read, not around what looks good in a demo.

    • Astro
    • Text to speech
    • Accessibility

Also built

Finished enough to read, without a live link — desktop apps, tools, and things made with the kids.

  • PayBatch

    Offline desktop app that builds and exports UK bank bulk-payment files. Santander Connect is live, Bacs Standard 18 is in beta. Encrypted at rest, and nothing ever leaves the machine — which is the whole reason it exists.

    • Electron
    • Fintech
    • Offline first
  • World Leaders Game

    An educational strategy game for twelve-year-olds: work up from peasant to world leader using real GDP data, with AI tutors and speech recognition. Written almost entirely by AI against a detailed instruction set, as an experiment in how far that goes.

    • .NET 8
    • Blazor Server
    • Azure OpenAI
  • dbschema-markdown

    Turns a database schema into readable markdown documentation. Small, boring, and it has saved me more hours than anything else on this page.

    • Node
    • CLI
  • Oliver Math & Oliver Vocabulary

    Two speech-driven practice apps built with my son — he set the rules, I did the typing. They talk, listen, and answer back using the Azure Speech API.

    • Vue
    • Azure Speech
    • OpenAI
  • Shut The Box (2018)

    The original, and the reason Shut The Cube exists. Vue 2 and webpack 3, loading Tailwind from an unversioned CDN URL — when that tag moved, the tile colours silently stopped existing and the live game lost its styling. Kept here as the before picture.

    • Vue 2
    • Archived

How these get made

Nearly all of this is built with an AI pair — I decide what it should be and why, and review every line that lands. It means a weekend is enough to finish something small and finish it properly: real tests, real accessibility, no analytics, no accounts, nothing loaded from a CDN at runtime. The constraint I keep is that each one has to work with the network off.