mirror of
https://github.com/EvolutionAPI/evolution-api.git
synced 2025-12-09 09:59:40 -06:00
- Introduce AGENTS.md for repository guidelines and project structure - Add core development principles in .cursor/rules/core-development.mdc - Establish project-specific context in .cursor/rules/project-context.mdc - Implement Cursor IDE configuration in .cursor/rules/cursor.json - Create specialized rules for controllers, services, DTOs, guards, routes, and integrations - Update .gitignore to exclude unnecessary files - Enhance CLAUDE.md with project overview and common development commands |
||
|---|---|---|
| .. | ||
| specialized-rules | ||
| core-development.mdc | ||
| cursor.json | ||
| project-context.mdc | ||
| README.md | ||
Evolution API Cursor Rules
Este diretório contém as regras e configurações do Cursor IDE para o projeto Evolution API.
Estrutura dos Arquivos
Arquivos Principais (alwaysApply: true)
core-development.mdc- Princípios fundamentais de desenvolvimentoproject-context.mdc- Contexto específico do projeto Evolution APIcursor.json- Configurações do Cursor IDE
Regras Especializadas (alwaysApply: false)
Estas regras são ativadas automaticamente quando você trabalha nos arquivos correspondentes:
Camadas da Aplicação
specialized-rules/service-rules.mdc- Padrões para services (src/api/services/)specialized-rules/controller-rules.mdc- Padrões para controllers (src/api/controllers/)specialized-rules/dto-rules.mdc- Padrões para DTOs (src/api/dto/)specialized-rules/guard-rules.mdc- Padrões para guards (src/api/guards/)specialized-rules/route-rules.mdc- Padrões para routers (src/api/routes/)
Tipos e Validação
specialized-rules/type-rules.mdc- Definições TypeScript (src/api/types/)specialized-rules/validate-rules.mdc- Schemas de validação (src/validate/)
Utilitários
specialized-rules/util-rules.mdc- Funções utilitárias (src/utils/)
Integrações
specialized-rules/integration-channel-rules.mdc- Integrações de canal (src/api/integrations/channel/)specialized-rules/integration-chatbot-rules.mdc- Integrações de chatbot (src/api/integrations/chatbot/)specialized-rules/integration-storage-rules.mdc- Integrações de storage (src/api/integrations/storage/)specialized-rules/integration-event-rules.mdc- Integrações de eventos (src/api/integrations/event/)
Como Usar
Referências Cruzadas
Os arquivos principais fazem referência aos especializados usando a sintaxe @specialized-rules/nome-do-arquivo.mdc. Quando você trabalha em um arquivo específico, o Cursor automaticamente carrega as regras relevantes.
Exemplo de Uso
Quando você edita um arquivo em src/api/services/, o Cursor automaticamente:
- Carrega
core-development.mdc(sempre ativo) - Carrega
project-context.mdc(sempre ativo) - Carrega
specialized-rules/service-rules.mdc(ativado pelo glob pattern)
Padrões de Código
Cada arquivo de regras contém:
- Estruturas padrão - Como organizar o código
- Padrões de nomenclatura - Convenções de nomes
- Exemplos práticos - Código de exemplo
- Anti-padrões - O que evitar
- Testes - Como testar o código
Configuração do Cursor
O arquivo cursor.json contém:
- Configurações de formatação
- Padrões de código específicos do Evolution API
- Diretórios principais do projeto
- Integrações e tecnologias utilizadas
Manutenção
Para manter as regras atualizadas:
- Analise novos padrões no código
- Atualize as regras especializadas correspondentes
- Mantenha os exemplos sincronizados com o código real
- Documente mudanças significativas
Tecnologias Cobertas
- Backend: Node.js 20+ + TypeScript 5+ + Express.js
- Database: Prisma ORM (PostgreSQL/MySQL)
- Cache: Redis + Node-cache
- Queue: RabbitMQ + Amazon SQS
- Real-time: Socket.io
- Storage: AWS S3 + Minio
- Validation: class-validator + Joi
- Logging: Pino
- WhatsApp: Baileys + Meta Business API
- Integrations: Chatwoot, Typebot, OpenAI, Dify
Estrutura do Projeto
src/
├── api/
│ ├── controllers/ # Controllers (HTTP handlers)
│ ├── services/ # Business logic
│ ├── dto/ # Data Transfer Objects
│ ├── guards/ # Authentication/Authorization
│ ├── routes/ # Express routers
│ ├── types/ # TypeScript definitions
│ └── integrations/ # External integrations
│ ├── channel/ # WhatsApp channels (Baileys, Business API)
│ ├── chatbot/ # Chatbot integrations
│ ├── event/ # Event integrations
│ └── storage/ # Storage integrations
├── cache/ # Cache implementations
├── config/ # Configuration files
├── utils/ # Utility functions
├── validate/ # Validation schemas
└── exceptions/ # Custom exceptions
Este sistema de regras garante consistência no código e facilita o desenvolvimento seguindo os padrões estabelecidos do Evolution API.