Back to work
Next.jsReactSupabaseSanityLemon SqueezyVercelOur product

Wimlets

Children's storytelling platform, our own product

Homepage of Wimlets, with the six animal characters in a meadow under a rainbow

What it is

Wimlets is a children’s storytelling and creative platform that we build and run ourselves. Families read and listen to original stories, play gentle games, print crafts and design in a Style Studio, all with six little animal characters. We started it in August 2026, and it is still growing.

This is not client work. It is our own product, which means we carry every decision ourselves: the design, the code, the data, the payments and what happens when something breaks.

How it is built

Part What we used
App Next.js and React with TypeScript, styled with Tailwind CSS
Hosting Vercel, deploying from GitHub on every change to the main branch
Accounts and data Supabase, with Row Level Security on every table
Stories and content Sanity, so stories, printables and games are edited without code
Payments Lemon Squeezy subscriptions, live, with a webhook that updates each family’s membership

What it does

  • Parent accounts with child profiles. A grown-up signs in. Each child is a profile inside that account.
  • A members’ club. Some stories, games and printables are for members. Payment, renewals and cancellations flow from Lemon Squeezy into the database automatically, and the site unlocks or locks content to match.
  • Progress, favourites and badges saved per child, so a child picks up where they left off.
  • An admin area for the two of us, including revenue.
  • Analytics only with consent. Analytics cookies stay off until a parent allows them, they are never used for advertising, and the site works the same if they say no.

Children’s data, handled with care

A site for children has to be careful with data, so we built the rules into the database, not just the privacy page.

  • Children never get their own login. A child profile holds only a name, an age, an avatar and a favourite character, and it belongs to a parent’s account.
  • Every table is locked down by default. Row Level Security means the app’s queries run as the signed-in person and only return their own family’s rows.
  • Memberships cannot be faked from the browser. Only our server code, the payment webhook and our own admin tool, can write a membership, so nobody can grant themselves the members’ club.
  • Removing a child really removes them. A removed child disappears from the account straight away. The profile is kept for thirty days so a mistake can be undone, then purged together with the child’s badges the next time the family’s account syncs.
  • We keep it out of our own tools too. When we work on the database, we check structure and counts, not families’ rows.

How it scores

We ran our own free health check on the homepage on 1 October 2026, on a simulated phone: SEO 100, best practices 100, accessibility 97. Speed scored 74. The homepage leads with a large illustrated scene, and making that appear faster is on our list.

The honest note

Wimlets is ongoing, and it is ours, so we have no client to quote. What it shows is that we can build and run a full web app with accounts, a database, a content system and live payments, and look after children’s data properly while doing it.