4.1 KiB
4.1 KiB
PawLink — Registo de Progresso
Estado Geral
- Fase actual: Fase 1 — MVP
- Última actualização: 2026-05-04 09:37
- Sessão #: 1
Legenda de Estados
- ✅ Concluído
- 🔄 Em progresso
- ⏳ Por fazer
- ❌ Bloqueado (indicar motivo)
- ⚠️ Atenção necessária
Fase 1 — MVP
Infra-estrutura e Configuração
- ⏳ Setup Next.js 14 + TypeScript + Tailwind + shadcn/ui
- ⏳ Configuração ESLint + Prettier + Husky
- ⏳ Esquema Prisma + ligação Supabase
- ⏳ Migrações iniciais da base de dados
- ⏳ Seed de dados de desenvolvimento
- ⏳ Configuração variáveis de ambiente (.env.example)
- ⏳ Deploy inicial Vercel + domínio
Autenticação
- ⏳ Configuração NextAuth.js
- ⏳ Registo de utilizador (nome, email, password, birthdate, distrito)
- ⏳ Validação de +18 anos no servidor
- ⏳ Verificação de email (Resend)
- ⏳ Login por email + password
- ⏳ Recuperação de palavra-passe
- ⏳ Middleware de protecção de rotas
- ⏳ Controlo de acesso por roles (USER, SHELTER_ADMIN, ADMIN)
Canis
- ⏳ Registo de canis (painel admin)
- ⏳ Perfil público do canil (nome, morada, horários, contacto)
- ⏳ Painel privado do canil (dashboard base)
Animais
- ⏳ CRUD de animais (painel do canil)
- ⏳ Upload de fotos (Supabase Storage)
- ⏳ Listagem pública com SSR (página inicial)
- ⏳ Sistema de filtros (distrito, espécie, raça, sexo, esterilizado)
- ⏳ Ficha detalhada do animal
- ⏳ Galeria de fotos
- ⏳ Badge de animal urgente
- ⏳ Estado do animal (Disponível / Reservado / Adoptado)
Reservas
- ⏳ Calendário de datas disponíveis
- ⏳ Criação de reserva (animal → Reservado)
- ⏳ Email de confirmação (react-email + Resend)
- ⏳ Histórico de reservas na área de conta
- ⏳ Confirmação/cancelamento pelo canil
UI / UX
- ⏳ Layout principal (Header, Footer)
- ⏳ Menu lateral (3 traços, canto superior direito)
- ⏳ Modo escuro / claro (toggle + persistência)
- ⏳ Área de conta (definições, palavra-passe, dados)
- ⏳ Design responsivo (mobile-first)
Fase 2 — Doações (Por iniciar)
- ⏳ Integração Stripe (PaymentIntent + Payment Element)
- ⏳ Suporte MBWay
- ⏳ Fluxo doação monetária
- ⏳ Webhook Stripe
- ⏳ Fluxo doação de ração
- ⏳ Fluxo doação de brinquedos
- ⏳ Sistema de necessidades dos canis (ShelterNeed)
- ⏳ Email recibo de doação
- ⏳ Histórico de doações na conta
Fase 3 — IA e Comunidade (Por iniciar)
- ⏳ Match inteligente (Claude API)
- ⏳ Chatbot de suporte Paws (streaming)
- ⏳ Geração automática de descrições de animais
- ⏳ Perfis pós-adopção
- ⏳ Sistema de notificações por email
- ⏳ Destaque de animais urgentes
- ⏳ Registo de voluntários
- ⏳ Avaliações de canis
Fase 4 — Escala (Por iniciar)
- ⏳ App móvel React Native
- ⏳ Relatórios fiscais (IRS)
- ⏳ Dashboard analítico
- ⏳ API pública
- ⏳ Suporte multilingue
Decisões Técnicas Tomadas
| Data | Decisão | Motivo |
|---|---|---|
| — | — | — |
Problemas Conhecidos / Bloqueios
| # | Descrição | Estado | Sessão detectada |
|---|---|---|---|
| — | — | — | — |
Dependências Externas Configuradas
| Serviço | Estado | Notas |
|---|---|---|
| Supabase (PostgreSQL) | ⏳ Por configurar | — |
| Supabase Storage | ⏳ Por configurar | — |
| Vercel | ⏳ Por configurar | — |
| Stripe | ⏳ Por configurar | — |
| Resend | ⏳ Por configurar | — |
| Anthropic Claude API | ⏳ Por configurar | — |
| Upstash Redis | ⏳ Por configurar | — |
| Cloudflare | ⏳ Por configurar | — |
Histórico de Sessões
Sessão #1 — 2026-05-04
Duração: —
Trabalho realizado:
- Leitura de toda a documentação
- Criação de docs/PROGRESS.md
Ficheiros criados/modificados:
- docs/PROGRESS.md
Próximos passos para a sessão seguinte:
- Iniciar a Fase 1 — Infra-estrutura e Configuração (Setup Next.js, instalar dependências, prisma init, shadcn init)
Notas:
- Nenhuma.