chore: add project files and setup gitignore
This commit is contained in:
76
docs/01_PROJECT_OVERVIEW.md
Normal file
76
docs/01_PROJECT_OVERVIEW.md
Normal file
@@ -0,0 +1,76 @@
|
||||
# 🍽️ ReservaMesa — Documentação do Projeto
|
||||
|
||||
## Visão Geral
|
||||
|
||||
**ReservaMesa** é um painel web (dashboard) desenvolvido para restaurantes gerirem as suas reservas de mesa de forma eficiente. Funciona como o **backend visual** de uma aplicação mobile já existente que permite aos clientes reservarem mesas em restaurantes.
|
||||
|
||||
### Problema que resolve
|
||||
- Filas de espera nos restaurantes → eliminadas por reservas antecipadas
|
||||
- Gestão caótica de mesas → centralizada num dashboard
|
||||
- Clientes sem visibilidade do espaço disponível → reserva com confirmação imediata
|
||||
- Restaurantes com capacidade subutilizada → otimização por slot de tempo
|
||||
|
||||
---
|
||||
|
||||
## Objetivos do Website
|
||||
|
||||
| Objetivo | Descrição |
|
||||
|---|---|
|
||||
| **Dashboard de Gestão** | Interface para o restaurante ver todas as reservas em tempo real |
|
||||
| **Gestão de Mesas** | Configurar número de mesas, capacidade, zonas (interior/exterior/VIP) |
|
||||
| **Calendário de Reservas** | Visualização diária, semanal e por turno |
|
||||
| **Notificações** | Alertas de novas reservas, cancelamentos, no-shows |
|
||||
| **Relatórios** | Ocupação média, horários de pico, receita estimada |
|
||||
| **Autenticação** | Login seguro para cada restaurante com Firebase Auth |
|
||||
|
||||
---
|
||||
|
||||
## Stakeholders
|
||||
|
||||
| Papel | Utilizador | Necessidade |
|
||||
|---|---|---|
|
||||
| **Gestor de Restaurante** | Acede ao dashboard | Ver e gerir reservas do dia |
|
||||
| **Staff (Maître)** | Tablet na recepção | Check-in de clientes |
|
||||
| **Cliente Final** | App mobile (existente) | Fazer reserva, receber confirmação |
|
||||
| **Admin do Sistema** | Super-admin | Gerir restaurantes na plataforma |
|
||||
|
||||
---
|
||||
|
||||
## Integração com App Mobile
|
||||
|
||||
O website consome a **mesma base de dados Firebase** que a aplicação mobile:
|
||||
- Dados partilhados em tempo real via Firestore
|
||||
- Autenticação unificada via Firebase Auth
|
||||
- Storage de imagens via Firebase Storage
|
||||
- Sem duplicação de dados — única fonte de verdade
|
||||
|
||||
---
|
||||
|
||||
## Fases do Projeto
|
||||
|
||||
| Fase | Nome | Duração Estimada | Status |
|
||||
|---|---|---|---|
|
||||
| 1 | Planeamento & Documentação | 1 semana | ✅ Concluído |
|
||||
| 2 | Setup & Estrutura Base | 3 dias | ⏳ A iniciar |
|
||||
| 3 | Autenticação & Onboarding | 3 dias | 🔜 Pendente |
|
||||
| 4 | Dashboard Principal | 1 semana | 🔜 Pendente |
|
||||
| 5 | Gestão de Reservas | 1 semana | 🔜 Pendente |
|
||||
| 6 | Gestão de Mesas | 4 dias | 🔜 Pendente |
|
||||
| 7 | Relatórios & Analytics | 4 dias | 🔜 Pendente |
|
||||
| 8 | Notificações & Real-time | 3 dias | 🔜 Pendente |
|
||||
| 9 | Testes & Deploy | 1 semana | 🔜 Pendente |
|
||||
|
||||
---
|
||||
|
||||
## Decisões de Arquitetura
|
||||
|
||||
1. **Next.js** como framework principal — SSR para SEO, routing file-based, API routes
|
||||
2. **Firebase SDK** no frontend — listeners em tempo real sem servidor intermediário
|
||||
3. **Tailwind CSS** — design system consistente e rápido de implementar
|
||||
4. **Shadcn/UI** — componentes acessíveis e customizáveis
|
||||
5. **Vercel** — deploy automático com cada push
|
||||
|
||||
---
|
||||
|
||||
*Documento gerado em: Maio 2026*
|
||||
*Versão: 1.0.0*
|
||||
Reference in New Issue
Block a user