Pular para o conteúdo
He4rt / Docs
Toggle sidebar
Interno noindex

Referência técnica — acessível, mas fora dos buscadores.

Discord
Getting Started Leitura · 4 min

Rodando o Projeto

Este guia leva você do clone até a aplicação rodando localmente. O projeto é um monorepo Laravel modular (internachi/modular): cada feature mora em app-modules/, com namespace He4rt\*.

Pré-requisitos

Garanta que as versões abaixo estão instaladas antes de começar. Elas seguem o que o composer.json declara:

Setup inicial

Clone o repositório e rode o script de setup. Ele instala dependências PHP e Node, copia o .env, gera a chave da aplicação, cria o link de storage e roda os helpers de IDE de uma só vez:

git clone [email protected]:he4rt/he4rt-bot-api.git
cd he4rt-bot-api

composer setup

O composer setup é equivalente a executar, em ordem:

composer install
npm install
cp .env.example .env          # se ainda não existir
php artisan key:generate
php artisan storage:link

Depois rode as migrations (e seeders, se quiser dados de exemplo):

php artisan migrate
php artisan migrate --seed     # opcional, popula dados de desenvolvimento

Subindo a aplicação

Use o script dev do Composer. Ele sobe quatro processos em paralelo — servidor HTTP, worker de fila, logs ao vivo (Pail) e o Vite — para que você não precise abrir vários terminais:

composer run dev
Processo Comando por baixo Para quê
server php artisan serve Servidor HTTP em localhost:8000
queue php artisan queue:listen Processa jobs e eventos
logs php artisan pail Stream de logs no terminal
vite npm run dev Hot reload de CSS/JS

Se você só precisa do frontend recompilando (por exemplo, ajustando Blade/CSS), rode o Vite isolado:

npm run dev      # desenvolvimento, com hot reload
npm run build    # build de produção (gera o manifesto)

Se uma mudança de frontend não aparecer na tela, normalmente é o manifesto do Vite desatualizado: rode npm run dev ou npm run build.

A aplicação expõe múltiplos painéis Filament além do portal público:

Rodando os testes

A suíte usa Pest 4. Para rodar tudo de forma compacta:

php artisan test --compact

Filtre por um teste específico durante o desenvolvimento — é mais rápido:

php artisan test --compact --filter=NomeDoTeste

Você também pode rodar apenas os testes de um módulo apontando para o diretório:

php artisan test --compact app-modules/docs

O alvo composer test roda a verificação completa (Rector, Pint e PHPStan) além da suíte — é o que a CI executa. Veja Convenções de Código para os detalhes de cada ferramenta.

Discord bot

O bot do Discord vive em app-modules/bot-discord/ e usa o framework Laracord. Para subi-lo localmente:

php artisan bot:boot

Você precisa de um token de bot válido configurado no .env e dos IDs de canal/ cargo em config/bot-discord.php. Se for trabalhar só na aplicação web, o bot é opcional.

Problemas comuns