Об этом проекте
Windmill — это платформа для разработчиков с возможностью self-hosting, предназначенная для управления внутренним кодом, включая API, фоновые задания, рабочие процессы и пользовательские интерфейсы. Она позволяет разработчикам писать скрипты на нескольких языках, включая Python, TypeScript, Go, Bash, SQL, GraphQL, PowerShell и Rust, которые затем автоматически преобразуются в доступные интерфейсы на основе их параметров.
Ключевые возможности включают:
- Оркестрация рабочих процессов: скрипты можно объединять в сложные цепочки и запускать по расписанию, через вебхуки, HTTP-маршруты, Kafka, WebSockets или электронную почту.
- Конструктор UI: low-code инструменты для создания сложных внутренних приложений на базе существующих скриптов и потоков.
- Локальная разработка: поддержка CLI, расширений VS Code и двусторонней синхронизации с Git для профессионального рабочего процесса разработки.
- Высокая производительность: бэкенд на базе Rust с очередью Postgres, разработанный для выполнения заданий с низкой задержкой.
- Безопасность: использование nsjail для изоляции файловой системы и ресурсов, а также изоляция пространства имен PID для безопасного выполнения заданий.
Платформа может быть развернута с помощью Docker Compose или Kubernetes (Helm charts) и поддерживает различных облачных провайдеров. Стек технологий состоит из Rust для бэкенда, Svelte 5 для фронтенда и Postgres для базы данных.