Tool Open source
GoCron is a self-hosted task scheduler built with Go and Vue.js. It defines recurring jobs, cron schedules, shell commands, and per-job environment variables in a YAML configuration file, then runs the commands through a web interface backed by SQLite. The interface can trigger jobs manually, display live logs, inspect run history, and provide a sandboxed terminal.
Jobs can inherit default schedules, timeouts, retries, environment variables, and pre- or post-command hooks. GoCron supports HTTP health-check callbacks for job start, completion, and failure, optional OpenID Connect authentication, configurable rate limiting and CORS, and live run updates through Server-Sent Events. It watches the configuration file and rebuilds the scheduler when applicable settings change, without restarting; scheduled runs are single-flight, so overlapping runs are skipped rather than queued. It is distributed as a Docker container, downloadable Linux binaries, and a NixOS package/module, and is licensed under the MIT License.
1 use taken from transcripts — each links to the moment in the video.
Gives recurring scripts a simple dashboard: define jobs and schedules in one YAML file, then use the web UI to trigger a run, watch its logs, or check what happened last night. It keeps run history in SQLite, supports timeouts and retries, can send callbacks when a job fails, and picks up config changes without a restart.
1 in the library.