← Tutte le idee Casa e famiglia

KitchenDesign

Fotografi una stanza e l'AI te la mostra ristrutturata

Incasso mensile: 2100 USD (fonte indicata nella scheda)

Cosa fa

App di interior design: da una foto di una stanza o di un giardino, l'AI propone come potrebbe essere con stili e materiali diversi.

Come guadagna

Ha entrate ricorrenti ogni mese, verificate su TrustMRR. Prezzi e piani esatti sono indicati sul sito del progetto.

Rendilo tuo

  • Per negozi di arredamento e cucine: il cliente vede i loro prodotti nella sua stanza.
  • Collegalo a un preventivo di ristrutturazione con artigiani locali.

Le frasi da scrivere all'AI

1. Base del sito e grafica

Crea un'app web in italiano chiamata "Nuova Cucina": mostra come potrebbe diventare una cucina, un bagno o un giardino partendo da una foto, con una lista dei materiali e una stima dei costi indicativa. Usa React, Vite, TypeScript e Tailwind CSS.

Pagine da creare:
1. Pagina iniziale con trasformazioni prima/dopo e prezzi
2. Registrazione e accesso
3. Nuovo progetto: foto, tipo di ambiente, stile, budget
4. Risultato: varianti, confronto e lista dei materiali
5. I miei progetti

Stile: caldo e ispirante: sfondo beige chiaro #FAF7F2, verde oliva #4D5B2B, legno #92400E, carattere "Fraunces" per i titoli e "Inter" per i testi. Nessuna immagine generica di stock.

Tutto deve funzionare perfettamente da telefono. Tutti i testi in italiano, chiari e senza parole tecniche.

2. Database, account e sicurezza

Collega il progetto a Supabase e attiva la registrazione con email e password.

Crea queste tabelle:
- "progetti": tipo di ambiente, stile, budget, foto, varianti generate, lista materiali in JSON, collegati all'utente

Regole di sicurezza obbligatorie:
- ogni utente vede solo i suoi progetti e le sue foto
- i crediti non si modificano dal browser

Usa esattamente il codice SQL che trovi nei "Dettagli tecnici" di questa scheda: eseguilo nel SQL Editor di Supabase prima di continuare, poi collega le pagine alle tabelle.

3. Dalla foto alle varianti

L'utente carica la foto e sceglie l'ambiente (cucina, bagno, soggiorno, camera, giardino, terrazzo), lo stile (moderno, country, industriale, scandinavo, mediterraneo, giapponese) e il budget (basso, medio, alto).

Il pulsante "Mostrami" (un credito) chiama un'API di modifica immagini: mantiene la forma della stanza, porte e finestre, e cambia mobili, finiture e colori secondo lo stile. Si ottengono 3 varianti con il confronto a cursore.

Su ogni immagine: "Visualizzazione indicativa".

4. Lista dei materiali e costi

Per la variante scelta, la Edge Function "materiali" chiede a Claude di guardare l'immagine e scrivere la lista dei materiali e dei lavori (es. "piastrelle gres effetto legno, circa 12 m²") con una fascia di prezzo indicativa per l'Italia.

Mostra la lista come tabella, con il totale "da… a…", e l'avviso: "Stima indicativa: chiedi sempre un preventivo a un professionista". Pulsante per scaricare tutto in PDF da portare in negozio.

5. Pagamenti con Stripe

Aggiungi pacchetti di crediti: 10 progetti a 9,99 €, 30 progetti a 19,99 €. Ogni nuovo utente riceve 2 crediti gratis. Ogni progetto (3 varianti e lista materiali) costa un credito. Mostra sempre in alto quanti crediti restano e, quando finiscono, un riquadro per comprarne altri.

A pagamento riuscito il webhook aggiunge i crediti del pacchetto con la funzione aggiungi_crediti.

Per la sessione di pagamento e il webhook segui la guida "Pagamenti con Stripe" di Fattibile.

6. Controlli specifici di questo progetto

Oltre ai controlli della guida "Controllo finale", verifica in particolare:
1. Costi: verifica che ogni lista dei materiali abbia l'avviso di stima indicativa e che i prezzi siano fasce, mai cifre esatte.
Correggi quello che non va e scrivimi cosa hai cambiato.

Dettagli tecnici

Tabella e Storage

I progetti con varianti e lista dei materiali, e lo spazio privato per le foto.

create table progetti (
  id uuid primary key default gen_random_uuid(),
  utente_id uuid not null references auth.users(id) on delete cascade,
  ambiente text not null,
  stile text not null,
  budget text not null check (budget in ('basso', 'medio', 'alto')),
  foto_path text not null,
  varianti_path text[] not null default '{}',
  materiali jsonb,          -- [{ voce, quantita, prezzo_min, prezzo_max }]
  creato_il timestamptz not null default now()
);

alter table progetti enable row level security;
create policy "le mie righe" on progetti
  for all using (auth.uid() = utente_id) with check (auth.uid() = utente_id);

insert into storage.buckets (id, name, public) values ('stanze', 'stanze', false);
create policy "la mia cartella stanze" on storage.objects for all to authenticated
  using (bucket_id = 'stanze' and (storage.foldername(name))[1] = auth.uid()::text)
  with check (bucket_id = 'stanze' and (storage.foldername(name))[1] = auth.uid()::text);

Istruzioni per l'AI: materiali

La Edge Function della lista materiali. Nella "richiesta" il server mette l'immagine della variante scelta (in base64) e i dati del progetto. La creazione delle varianti scala già il credito, quindi qui si può togliere usa_credito. Il resto della funzione (accesso, crediti, rimborso se l'AI rifiuta) è uguale per tutti i progetti: è nella guida "Chiamare l'AI dal server".

Sei un geometra italiano. Guardando l'immagine di un ambiente ristrutturato, elenca i principali materiali e lavori necessari per ottenerlo, con quantità stimate e fasce di prezzo indicative per l'Italia in euro (materiale più posa). Sii prudente e realistico. Rispondi solo con JSON: {"voci": [{"voce", "quantita", "prezzo_min", "prezzo_max"}], "nota": "una frase sui fattori che cambiano il prezzo"}.

Pezzi comuni a tutti i progetti

Glossario

Storage
Lo spazio di Supabase dove si salvano i file, come foto e audio, con le sue regole di accesso.
JSONB
Un tipo di colonna che contiene dati strutturati flessibili, come un piccolo documento.