O EmDash é um monorepo pnpm. O pacote principal é packages/core, publicado como emdash; ele contém a integração com o Astro, a API REST, a camada de banco de dados, o gerenciamento de esquemas e o sistema de plugins. A interface de administração em React fica em packages/admin.
Esta página mostra o caminho mais rápido até um ambiente de desenvolvimento funcional. O CONTRIBUTING.md é a fonte canônica para pré-requisitos, estrutura do repositório, política de contribuição, verificações obrigatórias, changesets e requisitos de pull requests.
Configuração local
-
Clone, instale e compile o workspace.
git clone https://github.com/emdash-cms/emdash.git cd emdash pnpm install pnpm build -
Inicie a demo de desenvolvimento principal.
cd demos/simple pnpm devA demo roda no Node.js com SQLite em
http://localhost:4321. Na primeira requisição, ela aplica o esquema deseed/seed.json; o bypass de desenvolvimento do próximo passo também adiciona seu conteúdo de exemplo. -
Abra o painel de administração.
Para a configuração local mais rápida, abra o bypass de desenvolvimento. Ele executa as migrações, cria um administrador de desenvolvimento, faz o login por você e redireciona para o painel de administração.
Para testar em vez disso o fluxo de configuração com passkey, abra o painel de administração. O assistente de configuração cria o banco de dados, executa as migrações e pede que você crie uma conta de administrador.
Fluxo de trabalho de desenvolvimento
Modo watch
Quando você alterar packages/core com a demo em execução, use dois terminais para que o pacote seja recompilado automaticamente:
# Terminal 1 — rebuild packages/core on change
cd packages/core && pnpm dev
# Terminal 2 — run the demo
cd demos/simple && pnpm dev
Verificações
Execute as verificações obrigatórias a partir da raiz do repositório antes de fazer o commit:
pnpm typecheck # TypeScript
pnpm lint # full type-aware lint
pnpm format # auto-format with oxfmt and Prettier
Testes
Todos os testes
pnpm test Somente o núcleo
cd packages/core && pnpm test Modo watch
cd packages/core && pnpm test --watch E2E
pnpm test:e2e # starts its own server Os testes usam bancos de dados SQLite reais em memória em vez de mocks de banco de dados. Cada teste recebe um banco de dados novo.
Escolher um caminho de contribuição
Correções de bugs, documentação, testes, traduções, tarefas de manutenção e refatorações ou mudanças de desempenho que preservam o comportamento podem ir direto para um pull request de implementação. Uma funcionalidade precisa de um plano de funcionalidade ou RFC aceito antes da implementação. Leia a política de contribuição completa antes de começar a trabalhar, para saber qual caminho se aplica.
O CONTRIBUTING.md também aponta para as políticas canônicas de governança, roadmap, triagem, revisão, propostas e IA.
As alterações na documentação também devem seguir o guia de estilo da documentação.
Para os principais caminhos de execução do EmDash, leia Arquitetura (internos). Os padrões e invariantes em nível de código estão documentados em AGENTS.md.