windmill-labs / windmill
Open-source developer platform to power your entire infra and turn scripts into webhooks, workflows and UIs. Fastest workflow engine (13x vs Airflow). Open-source alternative to Retool and Temporal.
AI Architecture Analysis
This repository is indexed by RepoMind. By analyzing windmill-labs/windmill in our AI interface, you can instantly generate complete architecture diagrams, visualize control flows, and perform automated security audits across the entire codebase.
Our Agentic Context Augmented Generation (Agentic CAG) engine loads full source files into context on-demand, avoiding the fragmentation of traditional RAG systems. Ask questions about the architecture, dependencies, or specific features to see it in action.
Repository Overview (README excerpt)
Crawler viewOpen-source developer platform for internal code: APIs, background jobs, workflows and UIs. Self-hostable alternative to Retool, Pipedream, Superblocks and a simplified Temporal with autogenerated UIs and custom UIs to trigger workflows and scripts as internal apps. Scripts are turned into sharable UIs automatically, and can be composed together into flows or used into richer apps built with low-code. Supported languages: Python, TypeScript, Go, Bash, SQL, GraphQL, PowerShell, Rust, and more. Try it - Website - Docs - Discord - Hub - Contributor's guide Windmill - Developer platform for APIs, background jobs, workflows and UIs Windmill is fully open-sourced (AGPLv3) and Windmill Labs offers dedicated instances and commercial support and licenses. https://github.com/user-attachments/assets/d80de1d9-64de-4d89-aacd-6df23fa81fc4 • Windmill - Developer platform for APIs, background jobs, workflows and UIs • Main Concepts • Show me some actual script code • Local Development • Stack • Fastest Self-Hostable Workflow Engine • Security • Performance • Architecture • How to self-host • Docker compose • Kubernetes (Helm charts) • Cloud providers • OAuth, SSO \& SMTP • License • Integrations • Environment Variables • Run a local dev setup • Frontend only • Backend + Frontend • Contributors • Copyright Main Concepts • Define a minimal and generic script in Python, TypeScript, Go or Bash that solves a specific task. The code can be defined in the provided Web IDE or synchronized with your own GitHub repo (e.g. through VS Code extension): provided Web IDE or synchronized with your own GitHub repo (e.g. through VS Code extension): • Your scripts parameters are automatically parsed and generate a frontend. • Make it flow! You can chain your scripts or scripts made by the community shared on WindmillHub. • Build complex UIs on top of your scripts and flows. Scripts and flows can be triggered by schedules, webhooks, HTTP routes, Kafka, WebSockets, emails, and more. Build your entire infra on top of Windmill! Show me some actual script code Local Development Windmill supports multiple ways to develop locally and sync with your instance: | Tool | Description | |------|-------------| | **CLI** | Sync scripts from local files or GitHub, run scripts/flows from the command line | | **VS Code Extension** | Edit and test scripts & flows directly from VS Code / Cursor with full IDE support | | **Git Sync** | Two-way sync between Windmill and your Git repository | | **Claude Code** | AI-assisted development with Claude for scripts, flows, and apps | https://github.com/user-attachments/assets/c541c326-e9ae-4602-a09a-1989aaded1e9 You can run scripts locally by passing the right environment variables for the client library to fetch resources and variables from your instance. See local development docs. Stack • **Database**: Postgres (compatible with Aurora, Cloud SQL, Neon, Azure PostgreSQL) • **Backend**: Rust - stateless API servers and workers pulling jobs from a Postgres queue • **Frontend**: Svelte 5 • **Sandboxing**: nsjail and PID namespace isolation • **Runtimes**: • TypeScript/JavaScript: Bun (default) and Deno • Python: python3 with uv for dependency management • Go, Bash, PowerShell, PHP, Rust, C#, Java, Ansible Fastest Self-Hostable Workflow Engine We have compared Windmill to other self-hostable workflow engines (Airflow, Prefect & Temporal) and Windmill is the most performant solution for both benchmarks: one flow composed of 40 lightweight tasks & one flow composed of 10 long-running tasks. All methodology & results on our Benchmarks page. Security • **Sandboxing**: nsjail for filesystem/resource isolation, and PID namespace isolation (enabled by default) to prevent jobs from accessing worker process memory • **Secrets**: One encryption key per workspace for credentials stored in Windmill's K/V store. We recommend encrypting the Postgres database as well. See Security documentation for details. Performance Once a job started, there is no overhead compared to running the same script on the node with its corresponding runner (Deno/Go/Python/Bash). The added latency from a job being pulled from the queue, started, and then having its result sent back to the database is ~50ms. A typical lightweight deno job will take around 100ms total. Architecture How to self-host For detailed setup options, see Self-Host documentation. Docker compose Deploy Windmill with 3 files (docker-compose.yml, Caddyfile, .env): Go to http://localhost - default credentials: / **Using an external database**: Set in to point to your managed Postgres (AWS RDS, GCP Cloud SQL, Azure, Neon, etc.) and set db replicas to 0. Kubernetes (Helm charts) See windmill-helm-charts for configuration options. Cloud providers Windmill works on AWS (EKS/ECS), GCP, Azure, Ubicloud, Fly.io, Render.com, Hetzner, Digital Ocean, and others. Rule of thumb: 1 worker per 1vCPU and 1-2 GB RAM. OAuth, SSO & SMTP Configure OAuth and SSO (Google Workspace, Microsoft/Azure, Okta) directly from the superadmin UI. See documentation. License The Community Edition is free to use internally. For commercial redistribution or managed services, contact . See LICENSE and Pricing for details. The "Community Edition" of Windmill available in the docker images hosted under ghcr.io/windmill-labs/windmill and the github binary releases contains the files under the AGPLv3 and Apache 2 sources but also includes proprietary and non-public code and features which are not open source and under the following terms: Windmill Labs, Inc. grants a right to use all the features of the "Community Edition" for free without restrictions other than the limits and quotas set in the software and a right to distribute the community edition as is but not to sell, resell, serve Windmill as a managed service, modify or wrap under any form without an explicit agreement. The binary compilable from source code in this repository without the "enterprise" feature fl…