← Tutte le idee Gestionali per aziende

Craftplan

Il gestionale di produzione nato per la panetteria di sua moglie

Cosa fa

Un creatore ha costruito per la moglie uno strumento per gestire la produzione della sua panetteria: ricette, ordini, ingredienti, quantità da preparare.

Come guadagna

Presentato su Hacker News dal suo creatore, che non dichiara incassi. Idee nostre per guadagnare con un progetto simile: abbonamento per piccoli laboratori artigianali (forni, pasticcerie, gelaterie).

Rendilo tuo

  • Per i forni e le pasticcerie italiane: ordini delle torte, allergeni obbligatori in etichetta, costo per pezzo.
  • Il miglior software nasce da un problema vero: parti da un laboratorio che conosci.

Le frasi da scrivere all'AI

1. Base del sito e grafica

Crea un'app web in italiano chiamata "Impasto": gestisce la produzione di un forno o di una pasticceria: ricette in percentuali del panettiere, ordini dei clienti, e ogni sera la lista di cosa preparare domani con le quantità esatte di ogni ingrediente. Usa React, Vite, TypeScript e Tailwind CSS.

Pagine da creare:
1. Pagina iniziale con le funzioni e il prezzo
2. Ricette: ingredienti in percentuale sulla farina, peso del pezzo, resa, allergeni
3. Ordini: clienti (bar, ristoranti, privati) con le quantità per giorno, anche ricorrenti
4. Piano di produzione di domani: pezzi, impasti, ingredienti da pesare
5. Magazzino ingredienti e costi delle ricette

Stile: caldo da forno: sfondo crema #FFF8EB, marrone crosta #92400E, giallo grano #EAB308, carattere "Nunito", numeri grandi da leggere in laboratorio con le mani sporche. 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:
- "ricette": nome, peso del pezzo crudo, ingredienti con percentuale sulla farina, allergeni, scarto di lavorazione
- "clienti" e "ordini": cliente, ricetta, quantità, giorno (o giorni ricorrenti)
- "ingredienti": nome, scorta, costo al kg

Regole di sicurezza obbligatorie:
- ogni laboratorio vede solo i suoi dati
- gli allergeni di ogni ricetta sono obbligatori

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. Dal numero di pezzi ai grammi da pesare

Le ricette si scrivono in percentuali del panettiere: farina 100%, acqua 65%, sale 2%, lievito 1%... più il peso del pezzo crudo e lo scarto (es. 3%).

Ogni sera il piano di domani somma gli ordini (singoli e ricorrenti) per ricetta e calcola quanta farina serve e quindi i grammi di ogni ingrediente (codice nei Dettagli tecnici). Il risultato si stampa o si legge sul tablet: una scheda per impasto con i pesi in grande.

Etichette per i clienti con nome del prodotto, ingredienti in ordine di peso e allergeni in grassetto, come richiede la normativa.

4. Magazzino e costi

Il magazzino scala gli ingredienti usati nel piano di produzione e avvisa quando servono riordini. Costo di ogni ricetta al pezzo dagli ingredienti, per controllare i margini rispetto al prezzo di vendita.

Riepilogo degli ordini per cliente e mese, da usare per le fatture.

5. Pagamenti con Stripe

Aggiungi un abbonamento a 19 € al mese. Gratis l'utente ha: 10 ricette e 10 clienti. Con il piano Pro sblocca: ricette e clienti illimitati, ordini ricorrenti, magazzino, costi ed etichette.

A pagamento riuscito il webhook porta l'utente al piano Pro; se l'abbonamento viene disdetto o non rinnovato lo riporta al piano gratuito.

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. Calcoli: 100 baguette da 300 g con idratazione 70% e scarto 3%: controlla a mano la farina e l'acqua calcolate.
Correggi quello che non va e scrivimi cosa hai cambiato.

Dettagli tecnici

Dalle percentuali del panettiere ai grammi

Il peso totale d'impasto (pezzi × peso, più lo scarto) diviso la somma delle percentuali dà la farina; ogni ingrediente è la sua percentuale della farina.

type Ricetta = {
  nome: string;
  pesoPezzoGrammi: number;
  scartoPercento: number;                          // impasto perso in lavorazione
  ingredienti: { nome: string; percento: number }[];   // farina = 100
};

export function grammiPerProduzione(r: Ricetta, pezzi: number) {
  const impastoTotale = pezzi * r.pesoPezzoGrammi * (1 + r.scartoPercento / 100);
  const sommaPercentuali = r.ingredienti.reduce((s, i) => s + i.percento, 0);
  const farina = (impastoTotale * 100) / sommaPercentuali;

  return {
    impastoTotaleKg: Math.round(impastoTotale) / 1000,
    ingredienti: r.ingredienti.map((i) => ({
      nome: i.nome,
      grammi: Math.round((farina * i.percento) / 100),
    })),
  };
}

// Esempio: 100 baguette da 300 g, scarto 3%, farina 100 / acqua 70 / sale 2 / lievito 1
// impasto 30,9 kg -> farina circa 17.554 g, acqua 12.288 g, sale 351 g, lievito 176 g

Ordini ricorrenti e piano di domani

Gli ordini possono valere per un giorno o per certi giorni della settimana; la query somma i pezzi da fare domani per ricetta.

create table ordini (
  id uuid primary key default gen_random_uuid(),
  laboratorio_id uuid not null,
  cliente_id uuid not null,
  ricetta_id uuid not null,
  pezzi int not null check (pezzi > 0),
  giorno date,                          -- ordine singolo
  giorni_settimana int[],               -- ordine ricorrente: 1 = lunedì ... 7 = domenica
  attivo boolean not null default true,
  check (giorno is not null or giorni_settimana is not null)
);

-- Pezzi da preparare domani, per ricetta
select ricetta_id, sum(pezzi) as pezzi
from ordini
where laboratorio_id = 'ID-LABORATORIO' and attivo
  and (giorno = current_date + 1
       or extract(isodow from current_date + 1)::int = any (giorni_settimana))
group by ricetta_id;

Pezzi comuni a tutti i progetti

Glossario

Percentuale del panettiere
Un modo di scrivere le ricette in cui la farina vale 100 e ogni ingrediente è una percentuale della farina.
Allergeni
Le 14 sostanze (come glutine, latte, frutta a guscio) che per legge vanno evidenziate in etichetta.