Pular para conteúdo

Primeiros Passos — Hoteis & Pousadas

Pre-requisitos

  • Docker e Docker Compose
  • Java 21 (para desenvolvimento local)
  • Node.js 18+ (para o frontend)
  • Servicos Haus rodando (OATH, Guild, Herald, Vault)

Subindo o Ambiente

1. Clone o repositorio

git clone <repo-url>
cd hotel-backend

2. Configure o banco

O PostgreSQL roda na porta 5434:

docker compose up -d postgres

3. Inicie o backend

./mvnw quarkus:dev

O backend inicia na porta 5020.

4. Inicie o frontend

cd ../hotel-frontend
npm install
npm run dev

O frontend inicia na porta 5173 com proxy para o backend.

Primeiro Acesso

1. Criar conta

Acesse http://localhost:5173/signup e crie uma conta. O cadastro e feito via OATH.

2. Criar hotel

Apos o login, voce sera direcionado para criar seu primeiro hotel:

  • Nome do hotel
  • CNPJ (opcional)
  • Slug (URL publica)
  • Endereco, cidade, estado

3. Configurar quartos

Em Quartos > Novo:

  • Numero do quarto
  • Tipo (Single, Double, Suite, etc.)
  • Capacidade
  • Preco base
  • Amenidades

4. Criar reserva

Em Reservas > Nova:

  • Selecionar quarto e datas
  • Dados do hospede
  • Forma de pagamento

5. Configurar comunicacao

Em Configuracoes > Comunicacao:

  • Configurar WhatsApp (conectar numero via QR Code)
  • Configurar templates de mensagem
  • Configurar email SMTP (opcional)

Variaveis de Ambiente

Backend (.env)

QUARKUS_DATASOURCE_USERNAME=hotel
QUARKUS_DATASOURCE_PASSWORD=hotel123
QUARKUS_DATASOURCE_JDBC_URL=jdbc:postgresql://localhost:5434/hoteldb
OATH_API_URL=http://localhost:5001
GUILD_API_URL=http://localhost:5002
HERALD_API_URL=http://localhost:5004
VAULT_URL=http://localhost:5006
ENCRYPTION_KEY=sua-chave-aes-256

Frontend (.env)

VITE_API_URL=http://localhost:5020
VITE_OATH_URL=http://localhost:5001

Estrutura de Pastas

hotel-backend/
├── src/main/java/hotel/
│   ├── api/                # Controllers
│   ├── application/        # Services
│   ├── domain/            # Entities + Enums
│   └── infrastructure/    # Clients, Repos, Security
├── src/main/resources/
│   └── application.properties
└── pom.xml

hotel-frontend/
├── src/
│   ├── api/               # BFF client
│   ├── stores/            # Zustand
│   ├── hooks/             # React Query
│   ├── pages/             # Paginas
│   └── components/        # Componentes
└── package.json

Comandos Uteis

# Backend
./mvnw quarkus:dev                    # Dev mode
./mvnw clean package                  # Build
./mvnw clean package -Dnative         # Native build

# Frontend
npm run dev                           # Dev server
npm run build                         # Production build
npm test                              # Testes
npm run test:e2e                      # E2E (Playwright)