Um tema EmDash é um projeto Astro completo distribuído como template create-astro. Contém as rotas e componentes públicos, a configuração de runtime do EmDash e um arquivo seed opcional para o modelo de conteúdo inicial do site.
Não há pacote de tema em runtime nem hierarquia de templates. Após o scaffolding, os arquivos do tema pertencem ao site e podem ser editados diretamente.
Conteúdo do tema
Os templates EmDash atuais usam estes caminhos:
astro.config.mjs
package.json
seed/
└── seed.json
src/
├── components/
├── layouts/
├── live.config.ts
├── pages/
└── styles/
astro.config.mjsconfigura a saída do servidor, o adapter de deployment, o EmDash, o banco de dados e o armazenamento.src/live.config.tsregistra a collection live_emdash.src/pages/define as rotas públicas.seed/seed.jsonpode declarar collections, campos, configurações, taxonomias, bylines, menus, redirecionamentos, áreas de widgets, seções e conteúdo de exemplo iniciais.package.json#emdash.seedaponta para o arquivo seed.
O template em branco deliberadamente não tem seed de usuário e cai no seed padrão embutido do EmDash. Os outros templates atuais apontam para seed/seed.json.
Instalar um template
O comando a seguir faz o scaffolding do template de blog Node:
npm create astro@latest -- --template @emdash-cms/template-blog
Use o pacote -cloudflare correspondente para um projeto Cloudflare Workers:
npm create astro@latest -- --template @emdash-cms/template-blog-cloudflare
Os pacotes de template atuais incluem:
| Finalidade | Node | Cloudflare |
|---|---|---|
| Casca vazia do projeto | @emdash-cms/template-blank | Sem equivalente atual |
| Site básico de páginas | @emdash-cms/template-starter | @emdash-cms/template-starter-cloudflare |
| Posts, páginas, categorias, tags e widgets | @emdash-cms/template-blog | @emdash-cms/template-blog-cloudflare |
| Portfólio de projetos | @emdash-cms/template-portfolio | @emdash-cms/template-portfolio-cloudflare |
| Páginas de marketing compostas de blocos versionados | @emdash-cms/template-marketing | @emdash-cms/template-marketing-cloudflare |
Após o scaffolding, instale as dependências e inicie o site gerado:
cd my-site
npm install
npm run dev
Abra http://localhost:4321/_emdash/admin. A primeira visita redireciona para a configuração, onde você informa a identidade do site e os detalhes do administrador. Quando o template selecionado tem entradas de exemplo, o assistente também permite incluí-las ou omiti-las. Incluí-las é útil ao avaliar o design porque as rotas têm conteúdo realista para renderizar.
Primeira configuração
O EmDash lê o seed no momento do build. Procura nesta ordem:
.emdash/seed.json.- O caminho em
package.json#emdash.seed. seed/seed.json.- O seed padrão embutido quando nenhum seed de usuário é encontrado.
Na primeira visita ao admin, o assistente de configuração mostra os metadados do seed e permite ao administrador escolher se inclui conteúdo de exemplo. Aplica o seed a um banco de dados vazio e registra a conclusão da configuração. Inicializações posteriores não reaplicam o seed a um site existente.
Personalizar o site instalado
Edite o projeto gerado diretamente:
- Altere os arquivos de rota em
src/pages/. - Altere a marcação compartilhada em
src/layouts/esrc/components/. - Altere o modelo inicial em
seed/seed.jsonantes da primeira configuração. - Gerencie o modelo de um site existente em Content Types no admin.
Use Criar temas para preparar um template reutilizável e Arquivos seed para o contrato seed completo.