This commit is contained in:
Carlos Correia
2026-05-29 11:03:29 +01:00
parent 967584f083
commit fee538eebd
14 changed files with 1349 additions and 1149 deletions

View File

@@ -1,101 +1,101 @@
# 🎯 MVP — Definição do Produto Mínimo Viável
# MVP — Produto Atual
## Objetivo do MVP
## Objetivo
Criar a versão mais simples possível da app que já seja útil para um utilizador real.
**Sem IA avançada. Sem funcionalidades complexas. Sem over-engineering.**
O produto atual do **DayMaker** é uma app móvel funcional para guardar itens pessoais, consultar o inventário, planear dias da semana e pedir sugestões à IA com base nos itens existentes.
O MVP deve validar a hipótese central:
> "Os utilizadores estão dispostos a fotografar os seus itens para depois receber sugestões contextuais."
O foco é oferecer uma experiência simples e útil, sem obrigar o utilizador a configurar regras complexas.
---
## Funcionalidades obrigatórias (must-have)
## Funcionalidades implementadas
### 1. 📸 Upload / Captura de Foto
- O utilizador tira foto a um item com a câmara do telemóvel
- Alternativa: selecionar foto da galeria
- A foto é guardada no perfil do item
- **Requisito mínimo:** uma foto por item
### 1. Autenticação
### 2. 📦 Guardar Item
- Cada item tem:
- `nome` (texto livre ou sugerido pela IA de imagem)
- `foto` (obrigatória)
- `categoria` (selecionada pelo utilizador ou auto-detetada)
- `tags` (opcional, atribuídas manualmente ou automaticamente)
- `data de adição`
- O item é guardado na base de dados do utilizador
- Login e registo com Supabase Auth.
- Dados associados ao utilizador autenticado.
- Perfil com nome/email do utilizador.
### 3. 🏷️ Categorização
- O utilizador escolhe a categoria principal do item
- Categorias base disponíveis no MVP:
- Roupa
- Eletrónica
- Calçado
- Acessórios
- Documentos
- Outros
- Subcategorias simples dentro de cada categoria (ver `04_CATEGORIES_AND_TAGS.md`)
### 2. Home
### 4. 🔍 Pesquisa e Visualização do Inventário
- Lista de todos os itens (grid de fotos ou lista)
- Filtrar por categoria
- Pesquisa por nome ou tag
- Detalhe do item ao clicar
- Saudação personalizada.
- Card com dia atual.
- Contagem de itens no inventário.
- Lista de itens planeados para hoje.
- Lista de itens recentes.
- Botão de adicionar item.
- Botão "Pedir sugestão à IA".
### 5. 🎯 Sugestões Simples por Contexto (sem IA)
- O utilizador seleciona um contexto pré-definido:
- "Vou viajar (curta duração)"
- "Vou viajar (longa duração)"
- "Vou ao trabalho"
- "Fim de semana casual"
- A app filtra e mostra os itens relevantes para esse contexto
- As regras são estáticas e definidas manualmente (ver `05_RECOMMENDATION_ENGINE.md`)
### 3. Inventário
Cada item contém, conforme disponibilidade da base de dados:
- `id`
- `user_id`
- `nome`
- `categoria`
- `tags`
- `nota` ou `notes`
- imagens relacionadas em `item_images(image_url)`
Funcionalidades:
- Vista em grid.
- Vista em lista.
- Pesquisa por nome ou tag.
- Filtro por categoria.
- Detalhe do item.
- Edição de nome, categoria e tags.
- Remoção de itens.
### 4. Planeamento semanal
- Separação por dias da semana.
- Tabela `plans` para representar um plano diário.
- Tabela `plan_items` para associar itens ao plano.
- Adição manual de itens a um dia.
- Remoção de itens de um dia.
- Home mostra os itens do dia atual.
### 5. Chat com IA
- Ecrã `AiChatScreen` acessível pela barra inferior.
- Histórico de conversa em memória durante a sessão do serviço.
- Sugestões rápidas no topo do chat.
- Mensagens com design consistente com o tema da app.
- Integração com Ollama via endpoint remoto.
### 6. Sugestão IA na Home
Fluxo atual:
1. Utilizador toca em "Pedir sugestão à IA".
2. App pede a ocasião, por exemplo: `piquenique no parque`.
3. IA recebe o inventário do utilizador como contexto.
4. IA responde apenas com nomes de itens do inventário.
5. App cruza a resposta com os itens reais.
6. App mostra os itens sugeridos com imagem e categoria.
7. Utilizador pode exportar esses itens para um dia da semana.
---
## Funcionalidades excluídas do MVP
## Funcionalidades fora do escopo atual
> Estas funcionalidades são importantes mas ficam para iterações futuras.
- ❌ Sugestões baseadas em clima
- ❌ Montagem automática de outfits
- ❌ Integração com calendário
- ❌ Assistente conversacional ("O que devo levar amanhã?")
- ❌ Sistema de preferências pessoais aprendidas
- ❌ Multi-utilizador / partilha
- ❌ Exportação de listas
- ❌ Notificações inteligentes
- Reconhecimento automático de imagem por IA.
- Previsão meteorológica.
- Notificações push.
- Sincronização com calendário externo.
- Partilha de inventário entre utilizadores.
- Recomendação visual por cor/compatibilidade.
- Testes automatizados completos.
---
## Fluxo principal do utilizador (MVP)
## Critérios de sucesso atuais
```
1. Utilizador abre a app
2. Tira foto de um item
3. App sugere nome e categoria (via Google Vision)
4. Utilizador confirma ou edita
5. Item guardado no inventário
6. Utilizador acede ao inventário → pesquisa / filtra
7. Utilizador seleciona contexto → app mostra lista filtrada
```
---
## Critérios de sucesso do MVP
- [ ] Utilizador consegue adicionar 10 itens em menos de 5 minutos
- [ ] Pesquisa devolve resultados corretos em menos de 1 segundo
- [ ] Sugestão por contexto é considerada "útil" por 70%+ dos utilizadores testados
- [ ] Taxa de retenção ao fim de 7 dias > 40%
---
## Notas para o agente IA
- Quando o utilizador pedir para construir uma funcionalidade, verificar primeiro se está no MVP ou no roadmap futuro
- Se estiver fora do MVP, avisar e perguntar se deve ser priorizada ou adiada
- Nunca adicionar complexidade desnecessária ao MVP
- Preferir sempre a solução mais simples que funcione
- O utilizador consegue criar conta e entrar.
- O utilizador consegue adicionar e consultar itens.
- A pesquisa e filtros devolvem itens corretos.
- O utilizador consegue planear itens para qualquer dia da semana.
- A IA responde usando o inventário do utilizador.
- A sugestão da IA pode ser exportada para a semana.