Windmill is an open-source platform that combines a workflow engine, an internal app builder, and a script execution runtime into a single self-hostable product. The backend is written in Rust with stateless API servers and workers pulling jobs from a PostgreSQL queue, which gives it low orchestration overhead. Project-published benchmarks compare it favorably with Airflow, Prefect, and Temporal on lightweight and sequential workflow tasks. Scripts can be written in Python, TypeScript, Go, PHP, Bash, C#, SQL, Rust, or run inside arbitrary Docker containers.
The platform works at three levels: individual scripts get automatic parameter parsing and UI generation so any function becomes a shareable tool; flows compose scripts into multi-step workflows with branching, retries, error handling, and approval steps via a visual editor or YAML; and the app builder creates data-centric dashboards and internal tools using drag-and-drop components or full React/Svelte code. Local development is supported through a CLI and VS Code extension that sync with Git repos, and workspace forks enable parallel teamwork with built-in diffs and audit trails before merging to production. Sandboxing uses nsjail for filesystem and PID namespace isolation to prevent jobs from accessing worker memory.
Self-hosting uses Docker or Kubernetes backed by PostgreSQL, with scaling from small deployments to larger worker groups. The public pricing page keeps free/open-source self-hosting separate from Enterprise, which starts at $120/month and adds SSO/SAML, Git sync, audit logs, dependency caching, security controls, and dedicated support. The raw license file is nuanced: source is variously Apache-2.0 or AGPLv3, while certain Community Edition and enterprise features include proprietary or non-public terms that commercial teams should review.
