testes/docs/Regras_Dev.md

130 lines
3.0 KiB
Markdown

# Regras de Desenvolvimento - PRALOG (Integra Finance)
**Perfil**: Desenvolvedor Sênior Front-end | **Foco**: Automação e Reutilização
---
## Stack Técnico
- React 18 + Vite + JavaScript ES6+
- Shadcn UI + Tailwind CSS
- Zustand (global) + Context (módulos)
- Feature Folders modulares
---
## Regras Principais
### 1. **Sempre Pergunte o Ambiente**
Antes de qualquer alteração, pergunte qual ambiente (`rh`, `financeiro-v2`, `prafrota`, etc).
### 2. **Reutilizar Antes de Criar**
Use `node .agent/scripts/check-reuse.js [termo]` para buscar código existente.
### 3. **Isolamento Total**
- Componentes de um ambiente em `src/features/[ambiente]/components/`
- **Nunca** importe componentes privados entre ambientes
- Use `shared/` só para elementos universais
### 4. **Componentes: Produção + Dev**
- `[Nome].jsx` - produção (todos os ambientes)
- `[Nome].dev.jsx` - dev (só Playground)
- **Playground primeiro** - teste antes de usar em views
### 5. **Performance**
- Componentes < 150 linhas
- Lazy loading com `React.lazy()`
- `useMemo`/`useCallback` em tabelas/gráficos
---
## Estrutura
```
src/
├── components/ui/ # Shadcn (NÃO editar)
├── components/shared/ # Universais
├── features/[ambiente]/ # Isolados
│ ├── components/
│ ├── hooks/
│ ├── views/
│ └── [Nome]Service.js
├── hooks/ # Globais
├── services/ # API
└── utils/ # Formatadores
```
---
## Scripts de Automação
```bash
# Buscar código existente
node .agent/scripts/check-reuse.js [termo]
# Criar componente
node .agent/scripts/create-component.js [Nome] [ambiente?]
# Criar hook
node .agent/scripts/create-hook.js use[Nome] [ambiente?]
# Criar service
node .agent/scripts/create-service.js [Nome] [ambiente?]
```
**Documentação**: `.agent/scripts/README.md`
---
## Workflow
1. **Buscar** reutilização (`check-reuse.js`)
2. **Criar** service/hook/componente (scripts)
3. **Testar** no Playground
4. **Usar** em view
5. **Validar** (`npm run dev`)
**Workflow completo**: `.agent/workflows/create-feature.md` (use `/create-feature`)
---
## Nunca Fazer
Importar entre ambientes
Componentes > 150 linhas
❌ Duplicar lógica
❌ Criar sem buscar reutilização
❌ Usar componente novo sem Playground
---
## Sempre Fazer
✅ Perguntar ambiente
✅ Buscar reutilização (`check-reuse.js`)
✅ Scripts de automação
✅ Playground primeiro
✅ Validar build
---
## Referências
- **Base**: `.agent/instructions/CORE_INSTRUCTIONS.md`
- **Reutilização**: `.agent/instructions/REUSE_AND_MODULARITY.md`
- **PRALOG**: `.agent/instructions/PRALOG_CORE_RULES.md`
- **Quick Ref**: `.agent/QUICK_REFERENCE.md`
- **Scripts**: `.agent/scripts/README.md`
---
## Ambiente de Testes
**URL**: `https://dev.workspace.itguys.com.br/plataforma/`
**User**: `financeiro@pralog.com.br`
**Pass**: `123Mudar`
---
**IMPORTANTE**: Priorize automação, reutilização e isolamento. Use scripts para tarefas repetitivas.