Skip to content

Stack Tecnológica e Configuração ​

Esta página descreve a stack tecnológica e as instruções de configuração para a Gami API.


Stack Tecnológica ​

ComponenteTecnologia
RuntimeNode.js (TypeScript)
FrameworkFastify
Base de DadosPostgreSQL
ORMPrisma
ValidaçãoZod
DocumentaçãoSwagger / OpenAPI
ContainerizaçãoDocker & Docker Compose

Pré-requisitos ​

  • Node.js v18+
  • Docker & Docker Compose

Variáveis de Ambiente ​

Crie um ficheiro .env no diretório raiz:

env
DATABASE_URL="postgresql://user:password@localhost:5432/gamibot?schema=public"

Instalação ​

Docker (Recomendado) ​

Inicie a API e a base de dados PostgreSQL:

bash
docker-compose up -d --build

A API estará disponível em http://localhost:3000.

Desenvolvimento Local ​

  1. Instalar Dependências:

    bash
    npm install
  2. Executar Migrações:

    bash
    npx prisma generate
    npx prisma migrate dev
  3. Iniciar Servidor:

    bash
    npm run dev

Testes ​

O projeto usa Vitest para testes de integração:

bash
npm test

Suites de Teste ​

SuiteCobertura
Testes de XPXP atribuído corretamente com base nas pontuações
Testes de TópicosProgresso calculado com precisão
Testes de CrachásTodos os crachás atribuídos quando as condições são cumpridas
Testes de StatsAgregação de estatísticas e inicialização

Próximos Passos ​

Released under the MIT License.