A zero-dependency TypeScript/JavaScript cron library to schedule functions or compute upcoming run times on Node, Deno, Bun and browsers.
whyour/qinglong
A self-hosted web panel for scheduling and managing cron jobs written in Python3, JavaScript, Shell, or TypeScript.
- Stars
- 20,073
- Forks
- 3,228
- Open issues
- 76
- Last commit
- 2 days ago
What is it?
Qinglong is a timed task management platform that runs scripts on a schedule and lets you manage them through a web interface. It supports Python3, JavaScript, Shell, and TypeScript scripts, and can run jobs at second-level granularity.
From the web panel you can edit scripts, environment variables, and configuration files online, view task logs, and receive system-level notifications. A dark mode and mobile-friendly controls are included. It is distributed as a Docker image (Alpine or Debian-based) and as an npm package.
An optional remote CLI, published separately as @whyour/qinglong-cli, lets you create, run, and inspect tasks and subscriptions from a terminal or automation pipeline, with JSON output for scripting.
Key features
- 01Runs Python3, JavaScript, Shell, and TypeScript scripts on a schedule.
- 02Supports second-level task scheduling.
- 03Edits scripts, environment variables, and config files in the browser.
- 04Shows task logs online and sends system-level notifications.
- 05Provides a remote CLI with JSON output for scripts and AI agents.
Use cases
- Running recurring check-in or automation scripts on a home server or NAS.
- Managing scheduled jobs for a team through a shared web panel.
- Scripting remote task management from CI pipelines or terminals.
Quick start
- 1
Install the npm package (requires node, npm, python3, pip3 and pnpm already installed)
npm i @whyour/qinglong - 2
Open the panel in your browser at the local address
Things to know
- The npm version only supports debian, ubuntu and alpine systems and needs node, npm, python3, pip3 and pnpm installed manually.
- Running as a non-root Docker user requires the debian image, because Alpine's crond needs root.
In collections
Topics
FAQ
- What is qinglong?
- A self-hosted web panel for scheduling and managing cron jobs written in Python3, JavaScript, Shell, or TypeScript. Qinglong is a timed task management platform that runs scripts on a schedule and lets you manage them through a web interface. It supports Python3, JavaScript, Shell, and TypeScript scripts, and can run jobs at second-level granularity.
- Is qinglong free to use? What license does it have?
- qinglong is open source under the Apache-2.0 license. Check the license terms before using it in commercial products.
- Is qinglong still maintained?
- Actively maintained. The last commit to qinglong was on Nov 5, 2026.
- What can I use qinglong for?
- Running recurring check-in or automation scripts on a home server or NAS. Managing scheduled jobs for a team through a shared web panel. Scripting remote task management from CI pipelines or terminals.
- How do I install qinglong?
- Install the npm package (requires node, npm, python3, pip3 and pnpm already installed): npm i @whyour/qinglong Open the panel in your browser at the local address
- Where can I get qinglong?
- The source code and installation instructions are on GitHub: https://github.com/whyour/qinglong
Summary generated by AI from the project's README. GitHub stats refresh daily.
Related projects
A multi-server task scheduler and runner with a web UI, positioned as a more capable replacement for Cron.
Web UI for managing cron jobs with human-readable schedules, live logs, and per-job execution history.
A self-hosted cron-style task scheduler that defines recurring shell jobs in YAML and manages runs through a web UI.
Official command-line tool for Cronitor.io that syncs cron jobs, wraps commands with monitoring, and manages Cronitor resources from the terminal.
Open-source, self-hosted task and chore manager with shared groups, recurring schedules, and reminders via mobile, Telegram, Discord, or Pushover.