LUIS BOTELHO.

Case study / MVP concluído

SafeAnchor

Sistema para organizar embarcações, manutenções e rotinas de inspeção com demonstração web publicada.

Ilustração editorial de uma carta náutica com âncora, embarcação, rota e marcações de checklist.
Carta editorial do SafeAnchor: manutenção, inspeções e rotas organizadas em torno da embarcação.

Problema e usuário

Informações de manutenção e inspeção dispersas tornam a rotina de proprietários e pequenas frotas mais frágil.

Meu papel

Desenho do produto e implementação do frontend, backend e persistência.

Escopo entregue

  • CRUD e detalhes de embarcações
  • Manutenção corretiva e preventiva
  • Dashboard e históricos de manutenção
  • Templates e execuções de checklists
  • Histórico de inspeções
  • Seed de desenvolvimento reproduzível

Restrições

  • Demonstração estática/SPA publicada no GitHub Pages
  • Autenticação completa, gestão de documentos e academia marítima ainda não foram entregues
  • Aplicação mobile e recursos de IA não existem nesta etapa

Arquitetura e fluxo de dados

Frontend React 19 com Vite e arquitetura MVVM; API Node.js com Express 5 em camadas de controllers e services; PostgreSQL no Supabase com Prisma 7.

Decisões e trade-offs

Começar pelo registro estruturado de embarcações, manutenção e inspeções para construir uma fonte confiável antes de ampliar o produto.

Testes e validações

Testes da API com o runner nativo do Node.js, smoke test de persistência, validação e geração do Prisma e build do frontend.

O que existe hoje

Aplicação web publicada no GitHub Pages para demonstração; fluxos de embarcações, manutenção e checklists integrados.

Limitações conhecidas

  • A experiência final e a cobertura funcional ainda estão em evolução.
  • A arquitetura Next.js/NestJS documentada no projeto representa uma direção futura, não a implementação atual.

Próximas etapas

  • Consolidar os fluxos principais
  • Validar com usuários do domínio

Formação relacionada

Stack

  • React 19
  • Vite
  • Node.js
  • Express 5
  • PostgreSQL/Supabase
  • Prisma 7

Carregando documentação do repositório…