Sobre o projeto
Windmill é uma plataforma de desenvolvedor auto-hospedável projetada para gerenciar código interno, incluindo APIs, jobs de segundo plano, fluxos de trabalho e interfaces de usuário. Ela permite que desenvolvedores escrevam scripts em múltiplas linguagens — incluindo Python, TypeScript, Go, Bash, SQL, GraphQL, PowerShell e Rust — que são então convertidos automaticamente em UIs compartilháveis com base em seus parâmetros.
As principais capacidades incluem:
- **Orquestração de Workflow**: Scripts podem ser encadeados em fluxos complexos e acionados via agendamentos, webhooks, rotas HTTP, Kafka, WebSockets ou e-mails.
- **Construtor de UI**: Ferramentas low-code para construir aplicações internas complexas sobre scripts e fluxos existentes.
- **Desenvolvimento Local**: Suporte para CLI, extensões do VS Code e sincronização bidirecional com Git para um fluxo de desenvolvimento profissional.
- **Alta Performance**: Um backend baseado em Rust com uma fila Postgres, projetado para execução de jobs com baixa latência.
- **Segurança**: Utiliza nsjail para isolamento de sistema de arquivos e recursos, além de isolamento de namespace PID para garantir a segurança na execução de jobs.
A plataforma pode ser implantada via Docker Compose ou Kubernetes (Helm charts) e suporta vários provedores de nuvem. Ela utiliza uma stack composta por Rust para o backend, Svelte 5 para o frontend e Postgres para o banco de dados.