Adventure Keeper Docs
Acessar

Template Oficial de Módulo (Starter Kit)

1. Visão Geral

Para acelerar o desenvolvimento e assegurar conformidade com os padrões de segurança e arquitetura do Adventure Keeper, disponibilizamos o template público:

👉 adventure-keeper-module-template


2. Estrutura do Template

O template inclui uma estrutura de diretórios padronizada com validação em tempo de desenvolvimento:

adventure-keeper-module-template/
├── .github/
│   └── workflows/
│       └── validate.yml       # Validação automatizada de schemas e linters no CI
├── locales/
│   ├── pt-BR.json             # Catálogo de strings canônico
│   └── en.json                # Catálogo em inglês
├── schemas/
│   ├── character-extension.json  # Schema JSON de exemplo para fichas
│   └── campaign-extension.json   # Schema JSON de exemplo para campanhas
├── tests/
│   └── schema.spec.ts         # Testes automatizados com Vitest
├── module.json                # Manifesto oficial com schema vinculado
├── package.json               # Scripts de lint, test e package
└── tsconfig.json              # Configurações TypeScript estritas

3. Como Usar

1. Criar novo repositório a partir do template

Clique em Use this template no GitHub ou clone localmente:

git clone https://github.com/brunohonda/adventure-keeper-module-template meu-modulo-ak
cd meu-modulo-ak
yarn install

2. Customizar o module.json

Atualize o id com o namespace da sua equipe e preencha as informações do autor e licença.

3. Validar localmente

Execute os comandos de validação antes de submeter o pacote:

yarn test       # Executa testes unitários de schema
yarn lint       # Verifica padrões de formatação
yarn validate   # Valida conformidade do manifesto module.json

4. Checklist Pré-Publicação

  • id único com namespace em formato minúsculo (ex: community.meu-modulo).
  • Versão SemVer atualizada no module.json.
  • Schemas JSON válidos e sem propriedades não declaradas (additionalProperties: false).
  • Dicionário locales/ preenchido com todos os identificadores referenciados no schema.
  • Repositório público com licença de código aberto válida.