Introduzione a EmDash

In questa pagina

EmDash è un sistema di gestione dei contenuti nativo di Astro. Porta pattern CMS familiari — collezioni, tassonomie, menu, widget e un’interfaccia amministrativa raffinata — direttamente nel tuo sito Astro con pieno supporto TypeScript e distribuzione portabile.

Cos’è EmDash

EmDash è un CMS costruito specificamente per Astro. Utilizza le Live Content Collections di Astro 6 per servire contenuti a runtime, quindi le modifiche appaiono immediatamente. I contenuti sono memorizzati in un database SQL — SQLite, libSQL, Cloudflare D1 o PostgreSQL — e i media in storage compatibile S3 (R2 o il filesystem locale).

Caratteristiche principali:

  • Modellazione visuale dei contenuti — Definisci e modifica collezioni e campi dall’interfaccia amministrativa; le modifiche hanno effetto immediato.
  • Live Collections — I contenuti sono serviti a runtime, quindi le modifiche appaiono immediatamente.
  • Sistema di plugin — Hook ispirati a WordPress, storage, impostazioni ed estensioni dell’interfaccia amministrativa.
  • Cloud-portable — Funziona su Cloudflare (Workers + D1 + R2) o Node.js, con SQLite, libSQL o PostgreSQL e qualsiasi storage compatibile S3.

Cosa non è EmDash

  • Non è un CMS headless — EmDash è strettamente integrato con Astro e funziona nello stesso deployment, piuttosto che come un servizio separato che chiami tramite un’API.
  • Non è compatibile con WordPress — Non esegue PHP o plugin WordPress. I contenuti e i concetti di WordPress migrano agli equivalenti di EmDash.
  • Non è un page builder — EmDash gestisce contenuti strutturati. Costruisci layout visivi con componenti Astro.

Per chi è EmDash

Sviluppatori di agenzie

Crea rapidamente siti per clienti con plugin e temi riutilizzabili. I plugin vengono eseguiti in contesti isolati con API esplicite.

Sviluppatori indipendenti

La gestione dei contenuti è parte del sito Astro, distribuito e gestito come un unico progetto.

Editor di contenuti

Crea e modifica contenuti nel pannello amministrativo.

Utenti WordPress

Percorso di migrazione per contenuti e plugin. Strumenti moderni, concetti familiari.

Architettura a colpo d’occhio

Il seguente diagramma mostra come EmDash si inserisce in un sito Astro, collegando il motore dei contenuti, il pannello amministrativo e i plugin al livello dati.

┌─────────────────────────────────────────────────────────────┐
│                      Your Astro Site                        │
│                                                             │
│  ┌───────────────────────────────────────────────────────┐  │
│  │                 EmDash Integration                  │  │
│  │                                                       │  │
│  │  ┌─────────────┐  ┌─────────────┐  ┌──────────────┐   │  │
│  │  │  Content    │  │   Admin     │  │   Plugins    │   │  │
│  │  │  Engine     │  │   Panel     │  │              │   │  │
│  │  └─────────────┘  └─────────────┘  └──────────────┘   │  │
│  │                                                       │  │
│  │  ┌───────────────────────────────────────────────────┐│  │
│  │  │                  Data Layer                       ││  │
│  │  │Database (SQLite/libSQL/D1/Postgres) + media store ││  │
│  │  └───────────────────────────────────────────────────┘│  │
│  └───────────────────────────────────────────────────────┘  │
│                                                             │
│  ┌───────────────────────────────────────────────────────┐  │
│  │                   Astro Framework                     │  │
│  │        Live Collections • Sessions • Middleware       │  │
│  └───────────────────────────────────────────────────────┘  │
└─────────────────────────────────────────────────────────────┘

Concetti fondamentali

Questi sono i concetti chiave utilizzati in tutta la documentazione:

  • Collections — Tipi di contenuto definiti nel database (post, pagine, prodotti, ecc.)
  • Fields — Le proprietà di una collezione (titolo, contenuto, prezzo, ecc.)
  • Taxonomies — Sistemi di classificazione (categorie, tag, tassonomie personalizzate)
  • Menus — Strutture di navigazione modificabili dall’amministrazione
  • Widget Areas — Aree di contenuto configurabili per sidebar e footer
  • Plugins — Estensioni che aggiungono funzionalità tramite hook, storage e interfaccia utente

Prossimi passi