Este é um projeto de API Laravel 12, containerizado com Docker e utilizando PostgreSQL, Redis e Mailpit para desenvolvimento local.
- Framework: Laravel 12
- Linguagem: PHP ^8.2
- Banco de Dados: PostgreSQL (Docker)
- Cache/Fila: Redis (Docker)
- Teste de E-mails: Mailpit (Docker)
- Containerização: Docker Compose (Laravel Sail)
- Testes: PHPUnit, Pest
-
Clone o repositório:
git clone <url-do-seu-repositorio> cd <diretorio-do-projeto>
-
Copie o arquivo de ambiente:
cp .env.example .env
Edite o
.env
conforme necessário para sua configuração local. -
Inicie os containers de desenvolvimento:
./vendor/bin/sail up -d
Se você ainda não instalou o Sail, execute:
composer install
Depois inicie o Sail como acima.
-
Instale as dependências PHP:
./vendor/bin/sail composer install
-
Gere a chave da aplicação:
./vendor/bin/sail artisan key:generate
-
Execute as migrações do banco de dados:
./vendor/bin/sail artisan migrate
Este projeto possui um comando Artisan para gerar uma API key para um cliente. Caso o ID do cliente não seja informado ou não exista, um novo cliente será criado automaticamente.
Comando:
./vendor/bin/sail artisan customer:generate-api-key {customer_id}
customer_id
(opcional): ID do cliente existente. Se omitido ou não encontrado, um novo cliente será criado.
Exemplos:
Gerar API key para um cliente existente (ID 5):
./vendor/bin/sail artisan customer:generate-api-key 5
Gerar API key para um novo cliente:
./vendor/bin/sail artisan customer:generate-api-key
Saída esperada:
API key generated successfully
API key: <sua-api-key-gerada>
Para rodar a suíte de testes:
./vendor/bin/sail test