# Un negozio che si avvia in cinque minuti, anche fra un anno

> E-commerce di prodotti per bambini con backend e frontend distinti, messi in piedi con Docker e una guida di avvio che funziona su qualunque sistema.

**Enneci Agency** — Tenuta del Barone di Montemurlo di Nicolò Coppi. Via Piemonte 4/40, 59100 Prato (PO), Italia.
Contatti: ciao@enneciagency.it · +39 379 2885434 (anche WhatsApp) · https://www.enneciagency.it
Zona servita: Prato e provincia, Firenze e Pistoia, e in tutta la Toscana.

## Scheda

- Cliente: BabyShop
- Settore: Retail
- Tipo di lavoro: E-commerce
- Anno: 2026
- Sito online: https://www.iobimbo.it
- Tecnologie: TypeScript, Node.js, Docker, JavaScript
- Pagina: https://www.enneciagency.it/progetti/babyshop/

## Risultati

- **2** — servizi: backend e frontend
- **1** — comando per l'ambiente completo
- **3** — sistemi coperti dalla guida: Windows, macOS, Linux
- **Docker** — stessa configurazione ovunque

BabyShop è un e-commerce di prodotti per l'infanzia. La parte difficile di progetti come questo non è la vendita: è che restino avviabili quando qualcuno ci torna dopo mesi, magari da un computer diverso.

## Il progetto che nessuno riesce più ad avviare

Capita a molti progetti: funzionano sul computer di chi li ha scritti e nessun altro riesce a partire senza mezza giornata di tentativi. Quando il progetto è di un cliente, questo significa dipendere da una persona sola.

È un costo che non si vede nel preventivo ma si paga alla prima manutenzione.

## Separare i servizi e scrivere come si accendono

Backend e frontend sono due cartelle e due servizi distinti, descritti in un file di composizione: si avviano insieme con un comando, o separatamente quando serve lavorare solo su uno dei due.

Accanto al codice c'è una guida di avvio scritta per chi arriva da fuori, con i requisiti e i passaggi per Windows, macOS e Linux, più una guida separata per il rilascio. Sono due file che fanno la differenza fra un progetto vivo e uno che si può solo riscrivere.

## Com'è organizzato

- **Backend** — Servizio applicativo con la logica del negozio e l'accesso ai dati.
- **Frontend** — Interfaccia del negozio: catalogo, scheda prodotto e carrello.
- **Ambiente in un comando** — Composizione Docker per avviare i servizi con la stessa configurazione ovunque.
- **Guide di avvio e rilascio** — Istruzioni per i tre sistemi operativi e per la messa in produzione.

## Ventinove migrazioni, cioè una storia leggibile

Backend e frontend sono due progetti TypeScript distinti, ciascuno con le proprie dipendenze: si aggiornano separatamente e un problema su uno non blocca l'altro.

Lo schema del database è gestito con Prisma e conta ventinove migrazioni. Non è un numero da esibire: è il registro di come il negozio è cambiato — nuovi campi sui prodotti, varianti, ordini — e la ragione per cui si può tornare indietro su un passaggio sbagliato invece di rimettere le mani nel database a caso.

La composizione Docker descrive l'ambiente completo: chi riprende il progetto fra sei mesi accende tutto con un comando, invece di ricostruire a memoria quali servizi servivano.

## Manutenibile anche da chi non l'ha scritto

Il negozio funziona, ma la cosa che conta per il cliente è un'altra: chiunque abbia accesso al repository può avviarlo e rilasciarlo seguendo due file di istruzioni. Nessuna dipendenza da una persona sola.
