Un tema EmDash è un sito Astro completo — pagine, layout, componenti, stili — distribuito tramite create-astro. Include anche un file seed che inizializza il database con collezioni, campi, menu, reindirizzamenti e contenuti di esempio alla prima esecuzione.
Cosa fornisce un tema
Un tema è un progetto Astro funzionante con:
- Pages — Route Astro per il rendering dei contenuti (homepage, post del blog, archivi, ecc.)
- Layouts — Struttura HTML condivisa
- Components — Elementi UI riutilizzabili (navigazione, card, footer)
- Styles — Configurazione CSS o Tailwind
- Un file seed — JSON che indica al CMS quali tipi di contenuto e campi creare
Struttura del tema
Un tema ha il seguente layout:
my-theme/
├── package.json # Metadati del tema + configurazione EmDash
├── astro.config.mjs # Configurazione integrazione Astro
├── src/
│ ├── live.config.ts # Configurazione Live Collections
│ ├── pages/ # Route Astro
│ ├── layouts/ # Componenti layout
│ └── components/ # Componenti UI
└── .emdash/
├── seed.json # Schema + contenuti di esempio
└── uploads/ # File multimediali locali opzionali
Come i temi inizializzano i siti
Creare un sito da un tema segue questi passaggi:
create-astrocrea il progetto dal template- Eseguire
npm installenpm run dev - Alla prima visita admin, il Setup Wizard viene eseguito automaticamente
- Il wizard applica il file seed, creando collezioni, menu, reindirizzamenti e contenuti
- Il sito è pronto per l’uso
Per gli utenti
Scegli un tema, esegui il wizard, inizia a modificare. Non sono richieste conoscenze di database.
Per gli sviluppatori
I temi sono progetti Astro standard. Personalizzali liberamente dopo lo scaffolding.
Installare un tema
Il seguente comando crea un sito da un template di tema ufficiale:
npm create astro@latest -- --template @emdash-cms/template-blog
I temi della community ospitati su GitHub usano il prefisso template github::
npm create astro@latest -- --template github:user/emdash-portfolio
Dopo lo scaffolding, installa le dipendenze e avvia il server di sviluppo:
cd my-site
npm install
npm run dev
Visita http://localhost:4321/_emdash/admin per completare il Setup Wizard.
Il Setup Wizard
Il Setup Wizard viene eseguito automaticamente alla prima visita admin. Esegue questi passaggi:
- Richiede titolo del sito, tagline e credenziali admin
- Offre un’opzione per includere contenuti di esempio
- Applica il file seed al database
- Reindirizza alla dashboard admin
Temi ufficiali
EmDash fornisce temi starter ufficiali, ciascuno disponibile in varianti locali (SQLite + filesystem) e Cloudflare (D1 + R2):
| Tema | Descrizione | Caso d’uso |
|---|---|---|
@emdash-cms/template-blog | Blog minimale con post, pagine, categorie e modalità scura | Blog personali, siti semplici |
@emdash-cms/template-portfolio | Portfolio in stile editoriale con progetti, tipografia serif (Playfair Display) e layout incentrati sulle immagini | Freelancer, agenzie, creativi |
@emdash-cms/template-marketing | Sito di marketing audace con blocchi Portable Text personalizzati (hero, funzionalità, testimonianze, prezzi, FAQ) | Landing page, siti SaaS, marketing di prodotto |
Varianti Cloudflare
Per il deployment su Cloudflare Workers con D1 e R2, aggiungi -cloudflare al nome del template, come nei seguenti comandi:
npm create astro@latest -- --template @emdash-cms/template-blog-cloudflare
npm create astro@latest -- --template @emdash-cms/template-portfolio-cloudflare
npm create astro@latest -- --template @emdash-cms/template-marketing-cloudflare
Queste varianti includono wrangler.jsonc per la configurazione del deployment.
Personalizzazione dopo l’installazione
Dopo il completamento del Setup Wizard, il sito è un progetto Astro standard. Personalizzalo come qualsiasi sito Astro:
- Modifica le pagine in
src/pages/ - Modifica i layout in
src/layouts/ - Aggiungi collezioni tramite l’interfaccia admin
- Installa integrazioni Astro
- Distribuisci ovunque Astro funzioni
Il file seed viene utilizzato solo durante la configurazione iniziale. Successivamente, gestisci il modello di contenuto nel pannello admin o con la CLI.
Prossimi passi
- Creare temi — Costruisci il tuo tema EmDash
- Formato del file seed — Riferimento per la struttura del file seed
- Per iniziare — Crea il tuo primo sito EmDash