Веб-интерфейс для управления cron-задачами: понятные расписания, логи в реальном времени и история запусков каждой задачи.
Hexagon/croner
Библиотека cron на TypeScript/JavaScript без зависимостей: планирует запуск функций и вычисляет время следующих запусков в Node, Deno, Bun и браузерах.
- Звёзды
- 2,611
- Форки
- 75
- Открытые issues
- 7
- Последний коммит
- 39 минут назад
Что это?
Croner позволяет запускать функции в коде на JavaScript и TypeScript по расписанию cron, а также разбирать cron-выражения, чтобы получить список следующих запусков и проверить, соответствует ли дата шаблону. Библиотека работает в памяти, без базы данных и файлов конфигурации, и поддерживает Node.js, Deno, Bun и браузеры.
Помимо стандартного синтаксиса cron, поддерживаются необязательные поля секунд и года, а также модификаторы L (последний день или день недели), W (ближайший будний день), # (n-й день недели месяца) и + (логика AND между днем месяца и днем недели). Для задач можно указать часовой пояс, приостанавливать, возобновлять или останавливать их, а также задать максимальное число запусков или время начала и окончания.
Для защиты во время выполнения предусмотрена блокировка повторного запуска, пока выполняется предыдущая асинхронная задача, настраиваемая обработка ошибок и возможность вызвать unref для таймеров, чтобы процессы Node или Deno могли завершиться. Типы включены в пакет.
Ключевые возможности
- 01Планирует запуск функций по cron-выражениям с необязательными полями секунд и года.
- 02Показывает время следующих и предыдущих запусков и проверяет, соответствует ли дата шаблону.
- 03Поддерживает часовые пояса, модификаторы L, W, # и +, а также нумерацию дней недели в стиле Quartz.
- 04Встроенная защита от повторного запуска асинхронных задач и настраиваемая обработка ошибок.
- 05Не имеет зависимостей; типы TypeScript включены.
Сценарии использования
- Запуск периодических фоновых задач в сервере на Node.js или Bun без отдельного сервиса планирования.
- Вычисление нескольких следующих запусков расписания для отображения в интерфейсе.
- Планирование задач в заданном часовом поясе для пользователей из разных регионов.
- Запуск таймеров в стиле cron в среде Deno или браузере.
Быстрый старт
- 1
Установите croner через npm
npm install croner - 2
Импортируйте класс Cron в проект
import { Cron } from "croner"; - 3
Запланируйте выполнение функции с помощью cron-шаблона
new Cron('*/5 * * * * *', () => { console.log('This will run every fifth second'); });
Что важно знать
- Поскольку всё хранится в памяти, таймеры работают только пока запущен процесс хоста.
Темы
Частые вопросы
- Что такое croner?
- Библиотека cron на TypeScript/JavaScript без зависимостей: планирует запуск функций и вычисляет время следующих запусков в Node, Deno, Bun и браузерах. Croner позволяет запускать функции в коде на JavaScript и TypeScript по расписанию cron, а также разбирать cron-выражения, чтобы получить список следующих запусков и проверить, соответствует ли дата шаблону. Библиотека работает в памяти, без базы данных и файлов конфигурации, и поддерживает Node.js, Deno, Bun и браузеры.
- croner можно использовать бесплатно? Какая у него лицензия?
- croner распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
- croner всё ещё поддерживается?
- Активно поддерживается. Последний коммит в croner — 22 окт. 2026 г..
- Для чего можно использовать croner?
- Запуск периодических фоновых задач в сервере на Node.js или Bun без отдельного сервиса планирования. Вычисление нескольких следующих запусков расписания для отображения в интерфейсе. Планирование задач в заданном часовом поясе для пользователей из разных регионов. Запуск таймеров в стиле cron в среде Deno или браузере.
- Как установить croner?
- Установите croner через npm: npm install croner Импортируйте класс Cron в проект: import { Cron } from "croner"; Запланируйте выполнение функции с помощью cron-шаблона: new Cron('*/5 * * * * *', () => { console.log('This will run every fifth second'); });
- Где скачать croner?
- Исходный код и инструкции по установке — на GitHub: https://github.com/Hexagon/croner
Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.
Похожие проекты
Библиотека логирования для JavaScript и TypeScript без зависимостей, работающая в Deno, Node.js, Bun, браузерах и edge-функциях.
Среда выполнения JavaScript, TypeScript и WebAssembly с безопасными настройками по умолчанию, построенная на V8, Rust и Tokio.
Распределённая очередь задач для Python: выполняет фоновые задания и распределяет работу между воркерами через брокеры сообщений.
Бесплатная коллекция открытых API с ежедневными 60-секундными сводками мировых новостей, трендами китайских платформ, ценами, погодой и другими данными; разворачивается на Docker, Deno, Bun, Node.js или Cloudflare Workers.
Минималистичная TypeScript-библиотека без зависимостей для создания настоящих PDF-файлов с текстом, фигурами, линиями, JPEG-изображениями и ссылками.