Askmill

From the Websites shelf · No. 0003

Falegnameria Valgrande

A family joinery near Verona wants a site that shows its kitchens and stairs and lets people book the free measuring visit.

Worked example (simulated interview)

Website prompt · 2,281 words · Published

The brief

This is a worked example. Askmill wrote this prompt from a simulated client interview, in which a model answered the questions for an invented client. The line under the title is the opening request the interview started from; everything else came out of the answers.

The prompt

The complete text, exactly as it is handed to an AI builder.

Download (.txt)

A one-page site for Falegnameria Valgrande, a small family joinery in San Giovanni Lupatoto (Verona), an example business (names, years, contacts and prices below are sample values), making kitchens, fitted wardrobes and wooden staircases: a walnut kitchen drawn front-on across the top, and below it a workshop wall calendar on which a family picks the afternoon the joiner comes to measure. Concept: one grain line runs unbroken from the first kitchen door to the chosen day. Booking rules (example values): home visits only on Tuesdays and Thursdays, in two slots, 14:30 and 16:00, each 90 minutes including the drive (inside the 14:30-18:00 window); the page offers the next 6 weeks, 12 afternoons, 24 slots, starting two days after today; visit and written quote are free; the workshop travels about 30 km, half an hour by car. No account, no password, no payment. A CONFIG block at the top of the file, commented in Italian for Giulia, who keeps the site, holds sample values to be replaced with the real ones: WhatsApp number +00 000 000 0002, landline 000 000 0002, email [email protected], address Via dell'Artigianato 12, closed periods (11-24 August; 24 December-6 January), taken slots written as "YYYY-MM-DD 16:00", and for each work its wood, town and an optional photo file name. The page cannot see requests sent a minute ago and says so: "Il giorno è confermato quando Le rispondiamo su WhatsApp, di solito entro sera."

Mood: quiet, early, trustworthy, unhurried: the workshop at seven in the morning, low sun through the window, shavings on the bench, machines still off. Light page. Palette: planed spruce #F6EFE2, page ground; pale board #EADCC4, cards and calendar; walnut ink #2A1D14, all text (about 14:1 on the ground, about 12:1 on the board); walnut #5A3A22, headings, rules and drawn wood (at least 8:1 on the ground); oak honey #B98A4E, illustration fills and borders, never text; morning sun #F3D9A0, the light band only; carpenter's-pencil red #B3261E, reserved for the booking action alone: the opening button, the pencil and its circle on the chosen slot, and the send button, with spruce lettering on it at 5.7:1. Nothing else is red. Allowed tints: walnut and oak mixed into the ground at 12% and 24%.

Structure: five parts in this order, no menu bar, no carousel, under 450 words of running text in all. 1) Opening: the kitchen as six tall handle-less doors side by side in SVG, one set of grain lines crossing all five door gaps without a jog; headline, one line, the red button. 2) "Lavori fatti": three work sheets on pale board, each a line drawing with small-caps labels LAVORO, LEGNO, COMUNE: "Cucina in noce · Verona"; "Scala in rovere · Zevio" (open treads in side elevation); "Armadio fino al soffitto, sotto il tetto inclinato · San Giovanni Lupatoto" (doors cut to the slope). The wardrobe's wood is empty in CONFIG, and an empty field hides its LEGNO line entirely. A named photo file replaces the drawing inside the same frame; otherwise the drawing stays. 3) "Il sopralluogo": the calendar as a planed board with one paper tag per slot, then the visit slip. 4) "Chi suona al campanello": Renzo Valgrande, his son Mattia (ten years at the bench with him) and Davide, the apprentice, as three small drawn aprons with names, and four sentences of history. 5) Foot: address, landline, colophon "Falegnameria Valgrande · dal 1979 · San Giovanni Lupatoto (Verona)". The kitchen's grain continues faintly (walnut at 12%) down the page margin through every part and ends at the calendar.

Typography: body in "Iowan Old Style", Palatino, Georgia, serif at 19 px (18 px on phones), line-height 1.6, at most 62 characters per line, sized for readers of 85; headings in the same serif, weight 600, clamp(2rem, 6vw, 3.75rem), line-height 1.08; labels in "Gill Sans", "Trebuchet MS", Verdana, sans-serif, 13 px capitals, letter-spacing 0.12em; tabular numbers for dates and times. System fonts only. Voice: Italian, formal "Lei", the way a craftsman speaks at a customer's door; short sentences, no superlatives. Exact copy: headline "La venatura non si interrompe."; under it "Cucine, armadi su misura e scale in legno. Dal 1979 a San Giovanni Lupatoto."; button "Scelga il giorno del sopralluogo"; beside it "Sopralluogo e preventivo sono gratuiti."; kitchen caption "Le tavole di noce le ho scelte una per una in segheria: una mattina intera. Per questo la venatura corre su tutte le ante, come su un pezzo solo."; history "Mio padre ha aperto il laboratorio nel 1979 e gli ha dato il nostro cognome. Oggi al banco siamo in tre. Il legno lo scegliamo in segheria, tavola per tavola. Alle carte e a questo sito pensa Giulia."; foot, at 16 px, "Preferisce telefonare? 000 000 0002. Rispondo dopo le 18:30, quando ho finito in laboratorio. Per fare prima, scelga il giorno qui sopra."; empty state "In queste settimane i pomeriggi sono tutti presi. Ci scriva su WhatsApp e troviamo un giorno insieme."; error "Controlli il numero di telefono: servono almeno 9 cifre."

Entrance: at 0 ms headline, six doors and red button are already painted, so the page is never empty; from 200 to 1800 ms the grain draws itself left to right across the doors (stroke reveal, cubic-bezier(.2,.8,.2,1)); at 1000 ms the caption fades in over 400 ms; by 3 s everything rests. Without input a band of morning sun drifts across the opening once every 60 s.

Interaction: the red button moves to the calendar. Each afternoon reads like "martedì 14 ottobre" with two tags, "14:30" and "16:00"; taken tags show "Già preso" struck through, closed days "Laboratorio chiuso". Choosing a tag opens the visit slip in place, never as an overlay, with five fields: "Nome e cognome", "Telefono", "Comune", "Via e numero", "Che cosa Le serve" (Cucina / Armadio su misura / Scala / Altro), plus an optional note of 300 characters. Comune lists 20 towns in range (Verona, San Giovanni Lupatoto, Zevio, Buttapietra, San Martino Buon Albergo, Oppeano, Bovolone, Isola della Scala, Castel d'Azzano, Vigasio, Villafranca di Verona, Povegliano Veronese, Sommacampagna, Bussolengo, Lavagno, Caldiero, Soave, San Bonifacio, Ronco all'Adige, Legnago) and "Altro comune", which shows "Arriviamo fino a circa 30 km da San Giovanni Lupatoto. Ci scriva lo stesso: Le diciamo subito se riusciamo." The send button "Invii la richiesta su WhatsApp" opens a wa.me link to the workshop with this message: "Buongiorno, sono Anna Bertolini. Vorrei un sopralluogo gratuito giovedì 16 ottobre alle 16:00. Lavoro: cucina. Indirizzo: <via e numero>, Zevio. Telefono: 347 555 0124. Mappa: <link to the address on a map>". A plain link, "Non usa WhatsApp? Invii la stessa richiesta per email", opens the same text as a mailto. Phone: one column, 12 afternoon rows, tags 48 px high. Wide screens (900 px and up): kitchen at 60% width beside the headline; calendar as 6 week columns by 2 rows, slip to its right. Keyboard: Tab through button, sheets, calendar, slip; arrow keys move between tags, Home and End reach the first and last free tag, Enter or Space chooses, Escape closes an open sheet or releases the chosen tag.

Signature moment: the pencil mark. 0-200 ms the chosen tag presses 2 px into the board; 200-800 ms a red carpenter's pencil enters from the right and draws an uneven circle around the tag; 800-1100 ms the margin grain extends its last stretch and touches the circle; 1100-1600 ms the slip slides out below with day and time already written. Resting state: circled tag, filled slip heading, cursor in the first field. Hidden detail: one oak-honey shaving curl stays at the slip's corner. Any key or tap skips to the resting state.

No sound: the workshop is silent at that hour. Reduced motion: grain and circle appear already drawn, the sun band stands still, the slip appears without sliding. Performance: no libraries, file under 150 KB, first paint within 1 s on a ten-year-old phone, each illustration under 400 paths, animation only on transform, opacity and stroke offset, paused when the tab is hidden. Persistence: localStorage key "ferrari-sopralluogo-v1" keeps the five fields and the last request, shown on return as "Ha già chiesto: giovedì 16 ottobre alle 16:00. Aspetti la nostra risposta."; without storage the page works and forgets. Accessibility: visible 3 px walnut focus ring, every tag named with its full date and time, errors announced in a live region, no keyboard trap, usable at 200% text size. Prohibitions: nothing ever covers the page (no pop-up windows, no cookie banner because nothing is tracked, no chat bubble), no sign-up, no newsletter, no star ratings, no autoplay. Deliver as a single self-contained HTML file with no fonts, libraries or network requests; the only optional external files are the photos named in CONFIG. Done when: 1) a first-time visitor picks a slot, fills the five fields and reaches WhatsApp with the message ready in under two minutes, with no account; 2) the message carries name, day, time, type of work, full address and phone, so no call back is needed; 3) only Tuesdays and Thursdays at 14:30 and 16:00 can be chosen, never closed or taken slots; 4) the whole flow works with the keyboard alone; 5) nothing overlays the content at any moment.

DESCRIPTION
A sheet of pale spruce in early light. Across the top stand six tall walnut doors drawn in thin brown line, and within two seconds a single grain sweeps over all of them from left to right, crossing every gap as if the kitchen were one board. Beside it, in a calm book serif: "La venatura non si interrompe.", and the only red thing on the page, a button the colour of a carpenter's pencil. Further down, three work sheets on pale board: the walnut kitchen in Verona, an oak staircase with open treads in Zevio, a ceiling-high wardrobe cut to a sloping roof in San Giovanni Lupatoto. Then the wall calendar: twelve Tuesday and Thursday afternoons, two paper tags each. Touch one and a red pencil circles it by hand, the grain that has followed the margin all the way down arrives at the circle, and a visit slip slides out, asking five things in polite Italian. One more press and WhatsApp opens with the whole request written, address and map included. Below, three aprons with three names, four sentences about 1979, and a small phone number answered after 18:30.

VISUAL TECHNIQUES
- Inline SVG kitchen elevation: six doors, 12 to 16 continuous grain paths generated once from seeded smooth noise so they cross all five door gaps without offset
- Grain entrance by stroke-dasharray/dashoffset reveal, 1600 ms, cubic-bezier(.2,.8,.2,1), staggered 40 ms per line
- Margin grain: the same paths continued as one tall SVG at walnut 12%, its final segment drawn only when a slot is chosen
- Three line illustrations (kitchen, open-tread staircase in side elevation, sloped wardrobe) in walnut strokes of 1.5 px with oak-honey flat fills
- Photo override: a CONFIG file name swaps the drawing for an image in the same 4:3 frame, with the drawing kept as fallback on load error
- Calendar generated from today's date with Intl.DateTimeFormat("it-IT"), filtered by weekday, closed periods and taken slots
- Slot tags as paper labels with a punched hole and a 1 px drop shadow; pressed state translates 2 px
- Hand-drawn pencil circle: an imperfect ellipse path with a slight overlap at the join, revealed over 600 ms, with a small SVG flat pencil travelling along the path
- Visit slip as a ruled paper card with a torn top edge via clip-path, opening in the document flow by animating grid rows
- Morning sun band: a single 60 s linear-gradient sweep in #F3D9A0 at 18% opacity, paused via the Page Visibility API
- Planed-board texture from two layered repeating gradients, no image files
- Message composer: a template string, URL-encoded once, feeding the wa.me link, the mailto link and the map address
- Inline validation with live-region announcements; localStorage persistence under a versioned key with silent fallback
- Reduced-motion stylesheet that sets every drawn stroke to its finished state and removes all transitions

INTERACTION MODEL
Pressing "Scelga il giorno del sopralluogo" (tap, click, Enter or Space) moves the page to the calendar and puts focus on the first free tag. Tapping or clicking a work sheet, or pressing Enter on it, unfolds its caption in place; Escape or a second press folds it. In the calendar, tap or click a free tag to choose it; arrow keys move between tags, Home and End jump to the first and last free tag, Enter or Space chooses; taken and closed tags can be read but not chosen. Choosing plays the pencil circle and opens the visit slip below the board (to its right on wide screens); any key or tap during the sequence skips to its end; Escape, or choosing another tag, releases the choice. In the slip, Tab walks through Nome e cognome, Telefono, Comune, Via e numero, Che cosa Le serve, the optional note, the send button and the email link; each field is checked when left, and a mistake shows one plain line under the field without moving anything. "Invii la richiesta su WhatsApp" opens WhatsApp with the finished message; the email link opens the same text in the mail program; the landline in the foot dials when tapped. On return visits the slip is pre-filled and the last request is shown with a "Cambi giorno" link. Pointer hover and keyboard focus darken a tag's border to walnut and show a 3 px focus ring; every target is at least 48 px high. With reduced motion, grain, circle and slip appear in their finished state and the sun band does not move.

What's inside this prompt

The sections of this prompt, in order, with their length.

  1. Overview 237 words
  2. Mood 131 words
  3. Structure 221 words
  4. Typography 242 words
  5. Entrance 67 words
  6. Interaction 279 words
  7. Signature moment 92 words
  8. No sound 261 words
  9. Description 191 words
  10. Visual techniques 287 words
  11. Interaction model 268 words

More prompts from the library

  • Website prompt · 2,040 words

    Helen Larkspur, Piano in Headingley

    I teach piano from my front room in Leeds and need a simple site where parents see the fees and book a free trial lesson.

    Worked example (simulated interview)

  • Project prompt · 2,420 words

    Quanto basta, le ricette di nonna Titina

    My 91-year-old grandmother cooks without measures; we want her recipes as a family book to read on the phone and print for Christmas.

    Worked example (simulated interview)

  • Game prompt · 2,361 words

    Tea and Photos

    A gentle memory game with our family photos for my mum, who has early dementia, played with her carer.

    Worked example (simulated interview)

Write yours

This prompt was written for someone else's idea. Askmill interviews you about yours, one plain question at a time, then writes the prompt your AI builder needs: $4.00 for a public prompt, $8.00 for a private one.

Get my prompt · $8.00How it works