Windmill
Code-first orchestration platform: turn Python, TypeScript, Go or Bash scripts into workflows, internal apps and APIs โ self-hostable in minutes
Website: https://www.windmill.dev/ ยท Source: GitHub ยท Type: Open-source company (Paris), ~9,800 known instances, funded by cloud & enterprise tiers
Why it exists
Every team accumulates glue work โ invoices to reconcile, accounts to sync, reports to generate โ that nobody wants to build a frontend for and nobody wants to run from cron. Airflow is a YAML tax, Zapier is a subscription to limitations, and "just a script" doesn't scale to coworkers. Windmill's thesis: keep the code as the source of truth, and automate everything around it โ runners, scheduling, permissions, UIs, flows, rollback. The result is an internal-software platform where a Python or TypeScript function becomes a monitored, permission-checked, user-facing app in minutes.
Main features
- Polyglot scripts โ Python, TypeScript, Go, PHP, Bash and SQL as first-class building blocks, with typed parameters and dependency handling.
- Flows (DAGs) โ compose scripts into workflows with branches, loops, error handling, retries and approvals; visual editor without lock-in.
- Autogenerated UIs โ every script and flow instantly gets a form-style UI from its parameters; share it with non-engineers.
- Low-code apps builder โ drag-and-drop custom dashboards and internal tools wired to your scripts and data.
- Schedules & webhooks โ cron anything; every script/flow gets an auto-generated webhook endpoint for event-driven glue.
- Fast workers โ Rust-based execution engine; workers run one job at a time with full CPU/memory, no container-per-run overhead.
- Git-based collaboration โ deploy from Git, review changes, manage workspaces, permissions and secrets properly.
- AI agents โ build agentic workflows with the same primitives (the site now markets "agents" as a first-class use case).
Who it's for
- Engineering teams drowning in cron jobs, Airflow configs and Slack-ops requests.
- Internal-tools teams that want UIs without leaving the codebase.
- Startups that need "the backend your product deserves but nobody budgeted for" โ billing syncs, ETL, AI pipelines.
- Self-hosters who want serious orchestration on one Docker host.
How it compares
- Airflow / Prefect / Dagster โ Python-centric data orchestration; Windmill is broader (apps, webhooks, multi-language) and dramatically lighter to run.
- Zapier / Make / n8n โ node-based automation; Windmill trades the toy-box UI for actual code and your own infrastructure, while n8n sits between the two.
- Retool โ internal app builder; Windmill's apps are code-first and bundled with the orchestrator, not a separate subscription.
- GitHub Actions โ great for CI, wrong for operational jobs; Windmill is the "always-on" sibling with proper permissions and secrets.
Notes
- Self-hosting is genuinely quick ("3 minutes" per the site) via Docker Compose; the OSS core is AGPLv3 (some paths Apache-2.0) with a separate proprietary license for enterprise features.
- Security model is thought through: granular permissions per script/flow, variable & secret management, approval steps for sensitive runs.
- The free cloud tier exists (one workspace) for trying it without self-hosting.
- If your whole world is pure data pipelines in Python, Dagster/Airflow still fit; the moment you need apps, APIs and multi-language glue, Windmill wins.
Useful links
- Official site: https://www.windmill.dev/
- Source code: https://github.com/windmill-labs/windmill
- Documentation: https://www.windmill.dev/docs/
- Hub of community scripts & flows: https://hub.windmill.dev/