130 lines
3.0 KiB
Markdown
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.
|