Windmill Labs
Windmill

Script editor

Code editor with built-in infrastructure

Every function you write gets a parameters UI, an API endpoint, triggers, one-click deployment, and monitoring out of the box.

Write code, get infrastructure

Windmill provides a full-featured code editor in the browser where you write scripts like in a classic IDE. Built on Monaco, it includes LSP autocompletion, linting, and formatting.

From a single script, Windmill automatically generates the infrastructure to make it production-ready:

Auto-generated UI

API endpoint

Triggers

Instant testing

One-click deployment

Versioning

Dedicated workers

Monitoring

Write in any language

Write your logic in TypeScript (Bun, Deno), Python, Go, Bash, SQL, or 20+ other languages. Each language runs on its real runtime with full LSP support in the browser editor.

Read the docs

Real dependencies, real runtimes

Scripts run on real runtimes, not sandboxed interpreters. You can use any dependency from npm, PyPI, Go modules, or Cargo, including packages from private registries. Inspectable lockfiles are generated per script for reproducibility, and can be centrally managed with workspace dependencies.

Read the docs

Auto-generated UI

Scripts automatically get a form UI from their function signature. Useful for quick testing during development and for exposing scripts to operators as standalone tools, no frontend needed.

Read the docs

Shared resources

Parameters typed as a resource show a dropdown of configured connections in the UI. Credentials are centrally managed, encrypted at rest, and injected at runtime. A database, API key, or OAuth2 connection is configured once and reused across any script that needs it.

Read the docs

Real-time logs and instant testing

Scripts can be tested directly from the editor. Logs stream in real-time and results are displayed instantly.

Read the docs

Integrated debugger

The integrated debugger for Python and TypeScript (Bun) supports breakpoints, step over, step into, step out, and continue controls. A variables panel shows live values in the current scope, and the console allows evaluating expressions while paused.

Read the docs

API endpoint for every script

Every deployed script is automatically exposed as a REST endpoint. Call any script programmatically with a simple HTTP request, authenticate with tokens, and integrate Windmill scripts into any external system or CI/CD pipeline without extra configuration.

Read the docs
Deployment and versioning

One click deployment and versioning

Deploy and your script is immediately available. Each save creates a new immutable version with a unique hash.

Check our versioning dedicated page
Active workers

Dedicated workers

Each script runs on an isolated worker with the full CPU and memory available to it. Scale horizontally and eliminate cold starts.

Check our workers dedicated page
Built-in granular monitoring

Built-in granular monitoring

Every execution is logged with its inputs, outputs, duration, and status. Run history is searchable and filterable.

Check our observability dedicated page

Frequently asked questions

Build your internal platform on Windmill

Scripts, flows, apps, and infrastructure in one place.