API de agendamentos para negócios desenvolvida com NestJS, Prisma e PostgreSQL.
- Node.js (v18+)
- PostgreSQL
- npm ou yarn
- Clone o repositório:
git clone [url-do-repositorio]
cd marquei-api- Instale as dependências:
npm install- Configure as variáveis de ambiente:
- Crie um arquivo
.envna raiz do projeto - Adicione as seguintes variáveis:
DATABASE_URL="postgresql://usuario:senha@localhost:5432/marquei?schema=public"
JWT_SECRET="sua_chave_secreta_aqui"- Execute as migrações do banco de dados:
npm run prisma:migrate- Gere o cliente Prisma:
npm run prisma:generate# desenvolvimento
npm run start:dev
# produção
npm run build
npm run start:prodA documentação da API está disponível através do Swagger UI em:
http://localhost:3000/api
- POST /auth/login - Login do negócio
- POST /agendamentos - Criar novo agendamento
- GET /agendamentos/negocio/:id - Listar agendamentos de um negócio
- PUT /agendamentos/:id/status - Atualizar status do agendamento
# testes unitários
npm run test
# testes e2e
npm run test:e2e
# cobertura de testes
npm run test:covsrc/
├── auth/ # Módulo de autenticação
├── agendamentos/ # Módulo de agendamentos
├── prisma/ # Serviço e configuração do Prisma
└── main.ts # Ponto de entrada da aplicação
- Autenticação JWT
- Validação de dados com class-validator
- Documentação com Swagger
- Testes unitários
- Conexão com PostgreSQL via Prisma
- CORS habilitado