Esta documentação foi traduzida automaticamente por IA.
Estrutura do Projeto
Seja ao clonar o código-fonte do Git ou ao inicializar um projeto com create-nocobase-app, o projeto NocoBase gerado é, essencialmente, um monorepo baseado em Yarn Workspace.
Visão Geral do Diretório Raiz
O exemplo a seguir usa my-nocobase-app/ como diretório do projeto. Pode haver pequenas diferenças em ambientes distintos:
Descrição do Subdiretório packages/
O diretório packages/ contém os módulos principais do NocoBase e pacotes extensíveis. O conteúdo depende da origem do projeto:
- Projetos criados via
create-nocobase-app: Por padrão, incluem apenaspackages/plugins/, usado para armazenar o código-fonte de plugins personalizados. Cada subdiretório é um pacote npm independente. - Repositório de código-fonte oficial clonado: Você verá mais subdiretórios, como
core/,plugins/,pro-plugins/,presets/, etc., que correspondem ao núcleo do framework, plugins integrados e soluções predefinidas oficiais.
Em qualquer um dos casos, packages/plugins é o local principal para desenvolver e depurar plugins personalizados.
Diretório de Tempo de Execução storage/
O diretório storage/ armazena dados gerados em tempo de execução e saídas de build. As descrições dos subdiretórios comuns são as seguintes:
apps/: Configuração e cache para cenários de múltiplas aplicações.logs/: Logs de tempo de execução e saída de depuração.uploads/: Arquivos e recursos de mídia enviados pelos usuários.plugins/: Plugins empacotados enviados pela interface do usuário ou importados via CLI.tar/: Pacotes de plugins compactados gerados após a execução deyarn build <plugin> --tar.
Geralmente, é recomendado adicionar o diretório
storageao.gitignoree tratá-lo separadamente durante a implantação ou backup.
Configuração de Ambiente e Scripts do Projeto
.env,.env.test,.env.e2e: Usados para execução local, testes de unidade/integração e testes end-to-end, respectivamente.scripts/: Armazena scripts de manutenção comuns (como inicialização de banco de dados, utilitários de lançamento, etc.).
Caminhos de Carregamento e Prioridade de Plugins
Plugins podem existir em vários locais. O NocoBase os carregará na seguinte ordem de prioridade ao iniciar:
- Versão do código-fonte em
packages/plugins(para desenvolvimento e depuração local). - Versão empacotada em
storage/plugins(enviada pela interface do usuário ou importada via CLI). - Pacotes de dependência em
node_modules(instalados via npm/yarn ou integrados ao framework).
Quando um plugin com o mesmo nome existe tanto no diretório de código-fonte quanto no diretório empacotado, o sistema priorizará o carregamento da versão do código-fonte, facilitando substituições locais e depuração.
Modelo de Diretório de Plugin
Crie um plugin usando a CLI:
A estrutura de diretórios gerada é a seguinte:
Após a conclusão do build, o diretório
dist/e os arquivosclient.js,server.jsserão carregados quando o plugin for habilitado. Durante a fase de desenvolvimento, você só precisa modificar o diretóriosrc/. Antes de publicar, executeyarn build <plugin>ouyarn build <plugin> --tar.

