# Cronicle — Multi-Server Job Scheduler with Web UI > A self-hosted task scheduler and runner that replaces cron with a visual web interface, multi-server targeting, and real-time log streaming. ## Install Save in your project root: # Cronicle — Multi-Server Job Scheduler with Web UI ## Quick Use ```bash # Quick install via npm npm install -g cronicle /opt/cronicle/bin/control.sh setup /opt/cronicle/bin/control.sh start # Open http://localhost:3012 in your browser ``` ## Introduction Cronicle is a self-hosted replacement for cron that adds a web-based UI, multi-server job targeting, real-time log streaming, and visual scheduling. It runs as a Node.js service and requires no external database. ## What Cronicle Does - Schedules recurring and one-time jobs with a visual calendar interface - Distributes jobs across multiple servers with automatic failover - Streams job output logs in real time through the web UI - Supports shell commands, HTTP webhooks, and custom plugins as job types - Sends notifications via email, webhooks, or custom notification plugins ## Architecture Overview Cronicle runs as a primary server that manages the schedule and one or more worker servers that execute jobs. State is stored in a built-in key-value store backed by the local filesystem, eliminating the need for a separate database. Communication between primary and workers uses a simple JSON-over-HTTP protocol. The web UI is a single-page application served by the primary. ## Self-Hosting & Configuration - Install globally with npm or download pre-built releases - Run `setup` to initialize the data directory and default admin account - Configure `conf/config.json` for port, data paths, and email settings - Add worker servers by pointing them to the primary's hostname - Set up categories and server groups to organize and target jobs ## Key Features - Visual drag-and-drop scheduling with timezone support - Multi-server job targeting with round-robin or all-server modes - Built-in retry logic, timeout enforcement, and chain scheduling - Resource limits to cap CPU and memory per job - Historical job logs with searchable output archives ## Comparison with Similar Tools - **cron** — system-level scheduler; Cronicle adds a web UI, multi-server support, and log management - **Apache Airflow** — DAG-based orchestrator; Cronicle is simpler and requires no Python or database - **Rundeck** — enterprise job scheduler; Cronicle is lighter with zero dependencies beyond Node.js - **Ofelia** — Docker cron replacement; Cronicle supports bare-metal and multi-host scheduling ## FAQ **Q: Does Cronicle require a database?** A: No. It uses a built-in filesystem-backed key-value store. **Q: Can I run jobs on remote servers?** A: Yes. Install Cronicle workers on remote servers and register them with the primary. **Q: How does failover work?** A: If the primary goes down, a standby server automatically takes over scheduling. **Q: What job types are supported?** A: Shell commands, HTTP requests, and custom plugins written in any language. ## Sources - https://github.com/jhuckaby/Cronicle - https://github.com/jhuckaby/Cronicle/blob/master/docs/Setup.md --- Source: https://tokrepo.com/en/workflows/asset-bfcb9402 Author: AI Open Source