A Go and Vue.js task scheduler that runs recurring jobs via YAML configuration with cron expressions and environment variables.
GoCron is a task scheduler built with Go and Vue.js that allows users to define and manage recurring jobs through a simple YAML configuration file. It executes commands at specified times using cron expressions and supports environment variables for each job, providing a modern alternative to traditional cron with a web-based management interface.
Developers and DevOps engineers who need to automate recurring tasks, manage scheduled jobs, or set up backup routines in a self-hosted environment.
It combines the reliability of cron with the ease of YAML configuration and a modern web UI, offering a more accessible and maintainable solution for job scheduling compared to manual cron setup or complex enterprise schedulers.
A task scheduler built with Go and Vue.js that allows users to specify recurring jobs via a simple YAML configuration file. The scheduler reads job definitions, executes commands at specified times using cron expressions, and passes in environment variables for each job.
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Jobs, cron schedules, and environment variables are defined in a single YAML file, making configuration straightforward and version-control friendly, as shown in the provided config.yaml example.
Includes a Vue.js-based web UI with dark/light modes for monitoring and managing jobs, offering a graphical alternative to command-line cron management, as depicted in the screenshots.
Comes with optional integration for backup software like BorgBackup, Restic, and Rclone, simplifying the setup of automated backup routines directly from the configuration file.
Easily deployable using Docker or Docker Compose, with provided run commands and compose files, ensuring consistent environments and easy setup as detailed in the README.
Relies solely on cron expressions for scheduling, lacking support for more advanced triggers like interval-based or event-driven jobs, which might be needed for complex automation workflows.
Software installation is tied to apt and pipx package managers, as indicated in the configuration examples, which may not be compatible with all operating systems or require additional manual setup.
The README does not mention clustering or high availability features, suggesting it's best suited for single-server deployments, limiting scalability for distributed environments.