{{ background }}
04 · Just for fun

Clueless Cooks

A personal recipe blog with a chip on its shoulder — and a case study in treating dinner like documentation. The payoff says it all: if it’s listed, it’s tasted.

Role Concept, UX, content & voice Type Personal blog → future brand Languages IT · EN · FR
Ricette per Pippe — the apron-cat badge

Taste the blog

ricetteperpippe.com
Open ricetteperpippe.com (Clueless Cooks website) ↗ Follow @ricetteperpippe on Instagram ↗

One blog, three names — all of them rude about my cooking

IT

Ricette per Pippe

Affectionate Italian slang for people who are hopeless at the stove.

EN

Clueless Cooks

The English version that politely admits we have no idea what we’re doing.

FR

Recettes pour quiches

In French, une quiche is both a tart and a hopeless beginner. Couldn’t resist.

Right now the three languages are really just for friends — I have Italian-, French- and English-speaking ones, and it was nice to drop them the blog whenever a recipe came up in conversation. But the same joke landing in every language is also exactly the consistency a brand needs later: the voice is already locked.

Two universes of analysis

Same blog, two ways to read it. Pick your lens. ↓

The user persona was, embarrassingly, me

Every design decision here traces back to a real moment of me standing in my kitchen, defeated.

The crème caramel incident

Halfway through an online recipe, I found out — hidden in the final notes — that I needed a specific little pan I didn’t own. I’d already started. So there I was: caramel setting, dignity melting, and seven hours of failures later.

The endless scroll

I hated scrolling back up to the ingredients at every single step — then scrolling down and completely losing which step I was on. Hands dirty, place lost, soup over-salted.

Me, and everyone like me

The reader I write for is twenty-something and up, mostly a woman (but not only), with no idea what to do in a kitchen and often a little intimidated by it. No expertise, and not much confidence either. So the voice is cheerful and self-ironic, and the information underneath is built to guide and reassure.

So I did the only reasonable thing: I treated the recipe like a piece of technical documentation. Because a recipe is the oldest form of technical writing there is — a sequence of steps, with prerequisites, that has to produce the same result in anyone’s kitchen.

The goal: a recipe you can follow with a free mind and calm nerves

Enemy #1 · Mental load

What do I need? How much? Where was I? Everything the page can remember, you shouldn’t have to.

Enemy #2 · Performance anxiety

Am I doing it wrong? Is it ruined? Every step tells you what good looks like, and what to do if it doesn’t.

Nine years of technical communication, pointed squarely at dinner.

Designed to lighten the load, and the nerves

Every decision follows the cook’s journey, from the supermarket to the next recipe, and takes on one of the two enemies.

Lightens the loadCalms the nerves
1

Before you shop

Calms the nervesLightens the load

What to buy, and where

The supermarket can be intimidating too, especially the first time you go looking for plant-based products and don’t know what they’re called or which shelf they’re on. So the ingredient list tells you what I actually buy, down to the store and the brand: one less decision before you’ve even started.

Soy strips: 180g (6.3 oz), ready to cook (I use the ones from Eurospin or Garden Gourmet Sensational)

2

Before you start

Lightens the load

Everything you need, up front

A Quick Info box up top — servings, prep, cook, and tools — so the special pan never ambushes you on step seven. No prerequisite hides in the footnotes.

Calms the nerves

No “to taste” or “as needed”

Both only help if you already know what the dish should taste or look like. Every ingredient gets a real amount, so nothing is left to a judgment you haven’t built yet.

3

While you cook

Lightens the load

Amounts inside every step

Each step repeats the quantity it needs, so you never scroll back up to the ingredient list and lose your place: one less thing to hold in your head while your hands are busy.

Lightens the load

A live, tap-to-check list

Every step has a “Done” check. One messy-thumbed tap marks it, so you never lose your place again. Your memory doesn’t have to track where you are, the page does: a checklist that survives interruptions.

Calms the nerves

Prescriptive on purpose

When it matters, a step says it: the flame level, how to handle an ingredient, what it should look like. Bossy for an expert, a lifeline for a beginner.

Stir well to coat them in the oil and keep tossing with a spatula — at this heat they can burn easily.

Calms the nerves

Reassurance, written in

The microcopy lowers the stakes. Where precision doesn’t matter, the recipe says so. Where something can go wrong, it says what to do next, so a mistake is a detour, not a disaster.

Carrots: about 100g (no need to be precise) … If they darken too fast, lower the heat slightly.

4

Finding the next one

Lightens the load

Know where you are

Category pills sit at the top of every recipe, the active one filled in. Arrive from Google, see exactly where you landed, and step sideways into similar recipes without going back.

Localized for cultures, not just languages

Translating the words isn’t enough: what counts as obvious, and how a meal is organized, changes from one kitchen culture to the next. So the recipes and the site structure adapt too.

Cooking the pasta

To an Italian reader, “boil the water, salt it, drop the pasta” is noise: everyone knows it. For English and French readers it’s a natural part of the recipe, and leaving it out would make it feel incomplete. So the EN and FR versions spell it out.

Courses, the local way

Each culture organizes a meal its own way, and the categories follow. The Italian primi piatti becomes Pasta dishes in English, because “first course” doesn’t carry the pasta-based meaning primi has in Italian.

Grams and ounces

Italian and French cooks measure in grams, but many English-speaking ones, especially in the US, think in ounces. So every amount in the English version carries both, like 120g (4.2 oz): no calculator, no guessing.

A brand that doesn’t take itself seriously

The joke in the name sets the tone, so nobody feels judged. The type carries it through, and keeps the recipe easy to follow.

Type, and why

Three roles, three voices: a face that signs the brand, a face you actually read, and a face that disappears. The personality lives in the headings — everything else gets progressively quieter so the recipe stays legible.

Headings --font-heading

Clueless Cooks

Pacifico

Playful, handmade, a personal signature — the right tone for a recipe blog that refuses to take itself seriously.

Body --font-body

If it’s listed, it’s tasted.

Fraunces

Warmth and an editorial feel — a soft modern serif, more characterful than a classic one but still easy to read through long steps.

Meta & UI --font-small

PREP 10’ · COOK 20’ · SERVES 2

Helvetica Neue

Neutral and clean for labels, timings and technical details — it steps back so the character stays in the headings and body.

Under the hood 100% vibe-coded · Claude Code + Codex

A whole content engine behind a recipe blog

It looks like a blog. It runs like a product. I write one recipe in Italian, and internal scripts take it from a guided template, through localization driven by my own Claude skills, onto three language sites, into subscribers’ inboxes and onto Instagram — with comments flowing back in. Every piece below I built myself, pair-coding with Claude Code and Codex.

Wix

It started on Wix

The first version lived on Wix — fast to stand up, but it hit a technical ceiling almost immediately: I couldn’t shape the recipe layout the way the content actually needed, never mind wiring up translation, comments and automated newsletters. So I scrapped it and built the whole thing myself.

The publishing pipeline, one recipe’s journey

Python · internal scripts New recipe A CLI script walks me through an editorial template, so every recipe ships with tools, real amounts, timings & structured steps.
→
Claude skills Localize My own Claude skills translate and localize IT → EN / FR the way I define it: house voice, culture-specific steps and categories, grams and ounces.
→
Claude skills Instagram caption The same scripts draft a caption adapted to Instagram’s criteria, ready to post with the recipe.
→
Astro · GitHub · Netlify Build & deploy Astro generates static pages, a push to GitHub triggers a Netlify build, the site goes live.
→
GitHub Actions Notify subscribers A workflow emails the new recipe to everyone on the list the moment it’s published.
A Astro + GitHub + Netlify

Static-site frontend, version-controlled in GitHub, continuously deployed on Netlify. Fast, free to host, trivial to scale.

S Supabase

Collects and publishes reader comments — a tiny backend behind a static site so the community can talk back under every recipe.

n8n n8n

Automation flows for newsletter subscribe & unsubscribe — the plumbing that keeps the mailing list clean without me touching it.

AI Claude skills

Skills I wrote with my own localization rules: they turn one Italian recipe into English and French versions that keep the voice and adapt to each kitchen culture, then write the Instagram caption.

GH GitHub Actions

On publish, a workflow fires the new-recipe email to every subscriber — in the language they signed up in. Zero manual sends, no missed editions.

py Internal scripts

The editorial flow behind every new recipe: a guided template that enforces the structure (tools first, real amounts, step checks), then hands off to localization and the Instagram caption.

The point isn’t the individual tools — it’s that a technical writer can architect, wire, and ship an end-to-end content system. The redaction discipline and the engineering are the same instinct.

Where it’s at, honestly

The bones are in — the polish isn’t, yet

Live, but a work in progress

The blog is up and the automations are wired end-to-end — but the structure and pipelines are scaffolded, not finished. The design is where I keep iterating, and I’ve got a running list of things to push further.

The known limit: one domain, three languages

All three sites live under ricetteperpippe.com, so the English and French pages carry an Italian domain and Italian URLs (/en/chi-sono/). Doing it properly means buying a dedicated domain per language. For now the project stays Italian-first, but I keep investing in the translations, so the English and French sites are ready the day the domains are.

What’s next

From personal blog to actual brand

Right now it’s just my blog, shared with friends. But if it takes off, the brand is ready to step out on its own: I’ve planned redirects onto dedicated domains — likely recettespourquiches.fr and cluelesscooksrecipes.com — alongside automated content pipelines that draft recipes in the house tone and post them across socials, turning clueless cooks into a community. To run it more professionally, two things come first: AI-generated videos built from my real dish photos, and navigation counters to measure what people actually read, the groundwork for a future growth-marketing step.

Dedicated domains + redirects Tone-of-voice content automation Auto-posting to social A mascot worth merch (the apron cat) AI videos from real dish photos Navigation analytics for growth

Get in touch

Let’s talk.

Got a project, a role, or just want to swap kitty pictures and plant-based recipes? I’d love to hear from you.

✉ sarahlasaracina@gmail.com LinkedIn ↗ 📅 Meet me on lunch break ↗