7.5 KiB
Patterns Index - Angular IDT App
📚 Índice de Padrões e Documentação
Este documento centraliza todos os padrões de arquitetura, implementação e documentação técnica do projeto Angular IDT App.
🏗️ Padrões de Arquitetura
App Component Pattern
Arquivo: APP_COMPONENT_PATTERN.md
- Objetivo: Integração de serviços PWA e Mobile no componente raiz
- Inclui: Dependency injection, auto-initialization, logging pattern
- Aplicação: Funcionalidades que devem estar ativas desde o início da app
Mobile Zoom Prevention Pattern
Arquivo: MOBILE_ZOOM_PREVENTION.md
- Objetivo: Prevenção completa de zoom em dispositivos móveis
- Inclui: Meta tags, CSS prevention, JavaScript service
- Aplicação: Apps que precisam de experiência nativa sem zoom
📱 Progressive Web App (PWA)
PWA Implementation
Arquivo: PWA_IMPLEMENTATION.md
- Objetivo: Implementação completa de funcionalidades PWA
- Inclui: Service Worker, Manifest, notificações, install prompts
- Aplicação: Apps que precisam funcionar como aplicativos nativos
PWA Quick Start
Arquivo: PWA_QUICK_START.md
- Objetivo: Guia rápido para desenvolvimento e troubleshooting PWA
- Inclui: Comandos essenciais, testes por dispositivo, debugging
- Aplicação: Desenvolvimento e manutenção de funcionalidades PWA
🎯 Componentes Reutilizáveis
Tab System Pattern
Localização: shared/components/tab-system/
- Objetivo: Sistema avançado de abas para edição de registros
- Inclui: Limite configurável, gestão de estado, títulos responsivos
- Aplicação: Formulários de edição complexos, CRUD operations
Data Table Pattern
Localização: shared/components/data-table/
- Objetivo: Tabelas responsivas com otimizações mobile
- Inclui: Header adaptativo, paginação compacta, filtros expansíveis
- Aplicação: Listagem de dados em dispositivos móveis e desktop
🔧 Serviços e Utilities
Service Naming Standards Pattern
Arquivo: SERVICE_NAMING_CHECKLIST.md
- Objetivo: Garantir nomenclatura consistente em todos os services
- Inclui: Checklist obrigatório, templates corretos, anti-patterns
- Aplicação: OBRIGATÓRIO consultar antes de criar/editar qualquer service
PWA Service Pattern
Arquivo: shared/services/pwa.service.ts
- Objetivo: Gerenciamento centralizado de funcionalidades PWA
- Inclui: Update detection, install prompts, observables
- Aplicação: Qualquer app que implemente PWA
Mobile Behavior Service Pattern
Arquivo: shared/services/mobile-behavior.service.ts
- Objetivo: Controle de comportamentos móveis nativos
- Inclui: Zoom prevention, touch optimization, device detection
- Aplicação: Apps com foco em experiência mobile nativa
📊 Otimizações e Performance
CSS Budget Management
Localização: assets/styles/app.scss
- Objetivo: Compressão de CSS para manter funcionalidades dentro do limite
- Inclui: Compressão manual, seletores combinados, mobile-first
- Aplicação: Projetos com restrições de bundle size
Responsive Design Patterns
Localização: Multiple files (*.scss)
- Objetivo: Padrões de responsividade mobile-first
- Inclui: Breakpoints consistentes, edge-to-edge layouts, touch-friendly controls
- Aplicação: Interfaces adaptivas para todos os dispositivos
🎨 UI/UX Patterns
Standalone Component Pattern
Aplicação: All components
- Objetivo: Componentes independentes sem NgModules
- Inclui: Imports explícitos, tree-shaking otimizado
- Aplicação: Arquitetura Angular moderna (17+)
Material Design Integration
Localização: assets/styles/app.scss
- Objetivo: Integração consistente com Angular Material
- Inclui: Theme customization, component overrides
- Aplicação: Apps que usam Angular Material como base
🔄 Domain-Driven Design (DDD)
Domain Structure Pattern
Localização: app/domain/
- Objetivo: Organização por domínios de negócio
- Inclui: vehicles/, drivers/, routes/, finances/
- Aplicação: Apps com múltiplos contextos de negócio
Shared Resources Pattern
Localização: app/shared/
- Objetivo: Recursos compartilhados entre domínios
- Inclui: components/, services/, interfaces/
- Aplicação: Funcionalidades transversais aos domínios
🧪 Testing Patterns
Service Testing Pattern
Aplicação: All services
- Objetivo: Testes unitários para serviços Angular
- Inclui: Mocks, spies, dependency injection testing
- Aplicação: Garantia de qualidade e confiabilidade
Component Testing Pattern
Aplicação: All components
- Objetivo: Testes de componentes standalone
- Inclui: TestBed configuration, async testing
- Aplicação: Validação de comportamento de UI
📚 Documentação Patterns
README Pattern
Arquivo: README.md
- Objetivo: Documentação principal do projeto
- Inclui: Setup, comandos, estrutura geral
- Aplicação: Onboarding de novos desenvolvedores
MCP Pattern
Arquivo: MCP.md (Model Context Protocol)
- Objetivo: Contexto completo para desenvolvimento assistido por IA
- Inclui: Arquitetura, padrões, configurações
- Aplicação: Desenvolvimento com assistentes de IA
🔗 Interconexões de Padrões
PWA + Mobile Pattern
App Component (DI) → PWA Service → PWA Notifications
→ Mobile Service → Zoom Prevention
Domain + Shared Pattern
Domain Components → Shared Components → Tab System
→ Data Table
→ Shared Services → PWA Service
→ Mobile Service
Testing + Documentation Pattern
Implementation → Testing → Documentation → MCP Context
📋 Quick Reference
Para Novo Componente
- Usar Standalone pattern
- Documentar no domain apropriado
- Adicionar testes unitários
- Atualizar MCP.md se relevante
Para Nova Funcionalidade PWA
- Implementar no PWAService
- Adicionar notification no PWANotificationsComponent
- Testar em mobile real
- Documentar em PWA_IMPLEMENTATION.md
Para Nova Otimização Mobile
- Implementar no MobileBehaviorService
- Adicionar CSS em app.scss
- Testar responsividade
- Documentar em MOBILE_ZOOM_PREVENTION.md
Para Novo Service
- OBRIGATÓRIO: Consultar
SERVICE_NAMING_CHECKLIST.md - Implementar seguindo nomenclatura padrão:
create,update,delete,getById,get[Domain]s - Usar ApiClientService (nunca HttpClient diretamente)
- Implementar DomainService interface
- Adicionar fallback com dados mock
Para Novo Padrão
- Implementar seguindo padrões existentes
- Criar documentação específica
- Adicionar ao PATTERNS_INDEX.md
- Referenciar no MCP.md
📊 Status dos Padrões
| Padrão | Status | Documentação | Testes | Aplicação |
|---|---|---|---|---|
| App Component | ✅ | ✅ | ⚠️ | ✅ |
| PWA Implementation | ✅ | ✅ | ⚠️ | ✅ |
| Mobile Zoom Prevention | ✅ | ✅ | ⚠️ | ✅ |
| Tab System | ✅ | ✅ | ✅ | ✅ |
| Data Table | ✅ | ⚠️ | ⚠️ | ✅ |
| Service Naming Standards | ✅ | ✅ | ✅ | ✅ |
| Standalone Components | ✅ | ✅ | ✅ | ✅ |
| DDD Structure | ✅ | ✅ | ⚠️ | ✅ |
Legenda: ✅ Completo | ⚠️ Parcial | ❌ Pendente
Última atualização: Janeiro 2025 Contribuidores: Equipe de desenvolvimento IDT App