From 5f06a5bf30c2cc503f34a447be17e5536006894d Mon Sep 17 00:00:00 2001 From: Rodribm10 Date: Mon, 13 Apr 2026 23:14:03 -0300 Subject: [PATCH] docs: adiciona README da fase 1 --- README.md | 82 +++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 82 insertions(+) create mode 100644 README.md diff --git a/README.md b/README.md new file mode 100644 index 0000000..f0e1970 --- /dev/null +++ b/README.md @@ -0,0 +1,82 @@ +# Reserva Rede 1001 + +Página pública de reserva para as marcas do Grupo Nova (Hotel 1001 Noites, Prime, Express, Dolce Amore). + +**Status:** Fase 1 — Fundação + +## Stack + +- Vite 6 + React 19 + TypeScript +- Tailwind v4 com paleta premium (obsidian/champagne/rose-gold) +- Supabase (Postgres + Auth + Storage), schema `reserva_hotel` no projeto InAudit Hotel +- framer-motion + anime.js +- Vitest + Testing Library + +## Setup local + +1. Instale as dependências: + ```bash + pnpm install + ``` + +2. Copie as variáveis de ambiente: + ```bash + cp .env.local.example .env.local + ``` + Preencha `VITE_SUPABASE_ANON_KEY` com a anon key do projeto Supabase `acdvblhzzaneddlxqyst` (InAudit Hotel). + +3. Rode o dev server: + ```bash + pnpm dev + ``` + Abre em `http://localhost:5173`. + +## Comandos + +| Comando | Descrição | +|---|---| +| `pnpm dev` | Dev server com HMR | +| `pnpm build` | Build de produção | +| `pnpm preview` | Preview do build | +| `pnpm lint` | Roda ESLint | +| `pnpm format` | Formata com Prettier | +| `pnpm test` | Roda testes (Vitest) | +| `pnpm test:watch` | Testes em watch mode | +| `pnpm typecheck` | TypeScript check | +| `pnpm supabase:types` | Regenera tipos do Supabase | + +## Estrutura + +``` +src/ +├── components/ # Componentes React +│ └── ui/ # Primitivos shadcn/ui +├── lib/ # Clientes (supabase) e utils +├── types/ # Tipos gerados do Supabase +└── __tests__/ # Testes Vitest +supabase/ +└── migrations/ # SQL de schema (source of truth) +_poc-reference/ # POC antigo — só pra consultar +``` + +## Paleta premium + +| Token | Hex | Uso | +|---|---|---| +| `obsidian` | `#0B0D12` | Fundo principal | +| `midnight` | `#0F1A2E` | Superfícies elevadas | +| `champagne` | `#C9A961` | Ação primária, luxo | +| `rose-gold` | `#E8B4A0` | Acento secundário | +| `ivory` | `#F5F1E8` | Texto principal | +| `slate` | `#6B7280` | Texto secundário | +| `emerald` | `#10B981` | Sucesso | +| `ruby` | `#E11D48` | Erro | + +## Integração com Chatwoot + +Esta fase **não** integra com Chatwoot ainda. A geração de PIX acontece na Fase 2, onde um endpoint novo é criado no Chatwoot (`POST /public/api/v1/captain/public_reservations`) e esta app passa a consumir. + +## Referências + +- Spec de design: `chatwoot/docs/superpowers/specs/2026-04-13-reserva-1001-design.md` +- Plano Fase 1: `chatwoot/docs/superpowers/plans/2026-04-13-reserva-1001-fase-1-fundacao.md`