Streamline é uma plataforma completa de automação de processos e workflows, projetada para reduzir o TOIL (Trabalho Operacional Desnecessário) e melhorar a eficiência organizacional através de fluxos de trabalho automatizados e inteligentes.
Para guias, tutoriais e outras informações, consulte a Streamline Wiki
- Editor Visual de Fluxos: Interface drag-and-drop para criar workflows complexos
- Blocos de Automação: Componentes reutilizáveis para diferentes tipos de tarefas
- Execução Condicional: Lógica de bifurcação baseada em critérios configuráveis
- Integração com APIs: Conectores para sistemas externos via webhooks e REST APIs
- Formulários Dinâmicos: Criação de formulários customizáveis para captura de dados
- Ciclo de Vida Completo: Acompanhamento desde criação até conclusão
- Estados Configuráveis: Definição de status personalizados para cada processo
- Timeline Interativa: Visualização cronológica de todas as interações
- Agendamento Inteligente: Execução automatizada baseada em cronogramas e eventos
- Sistema de Notificações: E-mails automáticos e webhooks para Discord/Slack
- Relatórios e Analytics: Dashboards com métricas de desempenho e SLAs
- Controle de Acesso: Sistema robusto de permissões e roles
O Streamline é construído com uma arquitetura moderna e escalável:
┌─────────────────┐ ┌─────────────────┐ ┌─────────────────┐
│ │ │ │ │ │
│ Frontend │────│ Backend │────│ Database │
│ React + TS │ │ Azure Functions │ │ MongoDB │
│ │ │ │ │ │
└─────────────────┘ └─────────────────┘ └─────────────────┘
│
┌─────────────────┐
│ │
│ Infrastructure │
│ Terraform │
│ │
└─────────────────┘
- React 18.3 com TypeScript
- Chakra UI para componentes visuais
- React Query para gerenciamento de estado servidor
- React Flow para editor visual de workflows
- Vite como bundler moderno
- Azure Functions com Node.js 20
- TypeScript para type safety
- MongoDB com Mongoose ODM
- JWT para autenticação
- SendGrid para e-mails transacionais
- Terraform para Infrastructure as Code
- Azure como provedor de nuvem
- GitHub Actions para CI/CD
- Sentry para monitoramento de erros
- Node.js >= 20.0.0
- npm ou pnpm
- MongoDB (local ou cloud)
- Azure Functions Core Tools (para backend)
git clone https://github.com/your-org/streamline.git
cd streamlinecd Backend
npm install
# Configure as variáveis de ambiente
cp local.example.setting.json local.settings.json
# Edite local.settings.json com suas configuraçõesVariáveis de Ambiente Necessárias:
{
"IsEncrypted": false,
"Values": {
"FUNCTIONS_WORKER_RUNTIME": "node",
"AzureWebJobsFeatureFlags": "EnableWorkerIndexing",
"AzureWebJobsStorage": "sua-connection-string-azure-storage-para-webjobs",
"AZURE_STORAGE_CONNECTION_STRING": "sua-connection-string-azure-storage-para-aplicacao",
"AZURE_SERVICE_BUS_CONNECTION_STRING": "sua-connection-string-azure-service-bus",
"JWT_SECRET": "seu-jwt-secret-de-autenticacao",
"JWT_RESET_PASSWORD_SECRET": "seu-jwt-secret-de-reset-de-senha",
"MONGO_ADMIN_DB": "nome-do-banco-de-dados-admin-ou-global",
"FRONTEND_URL": "url-do-seu-frontend",
"MONGO_URI": "uri-mongodb",
"MONGO_PARAMS": "parametros-mongodb",
"EMAIL_ACCOUNT": "seu-email-de-remetente padrão",
"SENDGRID_API_KEY": "sua-sendgrid-api-key",
"LOGGIN": "true-ou-false",
"DISCORD_WEBHOOK_URL": "seu-discord-webhook-url",
"NODE_ENV": "development-ou-production"
},
"Host": {
"CORS": "*"
}
}Inicie o backend:
npm run devcd Frontend
npm install
# Configure as variáveis de ambiente
cp .env.example .env.local
# Edite .env.local com suas configuraçõesVariáveis de Ambiente do Frontend:
VITE_BASE_URL=http://localhost:7071/api
VITE_GOOGLE_CLIENT_ID=seu-google-client-idInicie o frontend:
npm run dev- Frontend: http://localhost:5173
- Backend API: http://localhost:7071/api
Adoramos contribuições! Veja nosso Guia de Contribuição para detalhes sobre:
- 🐛 Reportar bugs
- 💡 Sugerir funcionalidades
- 🔧 Enviar pull requests
- 📝 Melhorar documentação
- Fork o repositório
- Clone seu fork
- Crie uma branch para sua feature:
git checkout -b feature/minha-feature - Commit suas mudanças:
git commit -m 'feat: adiciona nova funcionalidade' - Push para a branch:
git push origin feature/minha-feature - Abra um Pull Request
- Nome: Luis Ricardo
- Email: luis.ricardo@tech4h.com.br
Este projeto está licenciado sob a MIT License - veja o arquivo LICENSE para detalhes.
⭐ Se este projeto foi útil para você, considere dar uma estrela!