Sistema para criação e gerenciamento de roteiros de viagem, com processamento assíncrono de reservas.
Cadastro de usuários
Criação de roteiros de viagem
Inclusão de reservas na viagem:
-
Voos
-
Hotéis
-
Aluguel de carros
-
Listagem de viagens
Visualização de detalhes completos da viagem, incluindo todas as reservas associadas
O sistema é dividido em duas camadas principais: Backend e Frontend, com integração por meio de APIs REST.
Tecnologias Utilizadas
-
Node.js (v14+)
-
Express
-
MySQL
-
Prisma ORM – mapeamento objeto-relacional
-
Bull, SQS ou RabbitMQ – para gerenciamento de filas assíncronas (reservas)
-
Docker e docker-compose – para ambiente isolado e padronizado
-
Winston ou Pino – para logging estruturado
API RESTful para manipulação de usuários, viagens e reservas
Processamento assíncrono para garantir performance e escalabilidade
Validações de dados e tratamento de erros padronizados
Stack Tecnológica Next.js 14 (App Router)
-
Tailwind CSS + CSS Modules – estilização moderna e modular
-
Next-Auth (com provedor de credenciais) – autenticação segura
-
Zod – validação de schemas e inputs
-
React Hook Form – gerenciamento de formulários reativo e performático
-
Context API ou Zustand – gerenciamento de estado leve e flexível
-
Lucide React – ícones modernos em SVG
-
date-fns – manipulação eficiente de datas
Interface moderna e responsiva
Formulários reativos para cadastro e gerenciamento de roteiros
Listagem e visualização de viagens com reservas detalhadas
Feedback visual para estados de carregamento e processamento assíncrono
Este projeto utiliza o docker-compose para facilitar o setup e a execução local de todos os serviços: banco de dados, backend e frontend.
📦 Serviços Inclusos MySQL
Backend API (Node.js + Express)
Frontend (Next.js 14)
Bull (Filas)
Docker
Docker Compose
Porta 3000 (frontend) e 3333 (backend) livres
Crie um arquivo .env no projeto api-travel e cole os dados do aqruivo .env.example
Se for testar local, utilize a .env.local
Clone o repositório:
git clone https://github.com/MaikonLima/trips-wconnect.git
cd trips-wconnect
docker-compose up -d
ou, para iniciar os contêineres e verificar os logs em caso de erro
docker compose up -d && docker compose logs -f
Frontend: http://localhost:3000
Backend: http://localhost:3333
docker-compose down






