Interface web para gerenciar cron jobs com agendamentos fáceis de entender, logs em tempo real e histórico de execução por job.
Hexagon/croner
Biblioteca de cron para TypeScript/JavaScript sem dependências, que agenda funções ou calcula próximas execuções em Node, Deno, Bun e navegadores.
- Estrelas
- 2,611
- Forks
- 75
- Issues abertas
- 7
- Último commit
- há 4 dias
O que é?
Croner permite que código JavaScript e TypeScript execute funções de acordo com uma agenda cron ou avalie uma expressão cron para listar próximas execuções e verificar se uma data corresponde a um padrão. Ele roda em memória, sem banco de dados nem arquivos de configuração, e funciona em Node.js, Deno, Bun e navegadores.
Além da sintaxe cron padrão, oferece um campo opcional para segundos e outro para ano, além de L (último dia ou dia da semana), W (dia da semana mais próximo), # (enésimo dia da semana do mês) e + (lógica AND entre o dia do mês e o dia da semana). Os jobs podem usar fusos horários específicos, ser pausados, retomados ou interrompidos, e receber um limite máximo de execuções ou horários de início e término.
As proteções em tempo de execução incluem a prevenção de sobreposição, que bloqueia novos disparos enquanto uma tarefa assíncrona anterior ainda estiver em execução, captura de erros configurável e uma opção para desvincular os timers, permitindo que processos Node ou Deno sejam encerrados. As definições de tipos estão incluídas.
Recursos principais
- 01Agenda funções com expressões cron que incluem campos opcionais para segundos e ano.
- 02Lista horários de execuções futuras e anteriores e verifica se uma data corresponde a um padrão.
- 03Oferece suporte a fusos horários, aos modificadores L, W, # e + e à numeração de dias da semana no estilo Quartz.
- 04Inclui proteção contra sobreposição de tarefas assíncronas e tratamento de erros configurável.
- 05Não tem dependências e inclui definições de tipos para TypeScript.
Casos de uso
- Executar jobs periódicos em segundo plano dentro de um servidor Node.js ou Bun, sem um serviço de agendamento separado.
- Calcular os próximos horários de execução de uma agenda para exibi-los em uma interface.
- Agendar tarefas em um fuso horário específico para usuários de diferentes regiões.
- Executar timers no estilo cron em um ambiente Deno ou navegador.
Início rápido
- 1
Instale o croner pelo npm
npm install croner - 2
Importe a classe Cron no seu projeto
import { Cron } from "croner"; - 3
Agende uma função com um padrão cron
new Cron('*/5 * * * * *', () => { console.log('This will run every fifth second'); });
Antes de usar
- Como tudo fica na memória, os temporizadores só funcionam enquanto o processo do host estiver ativo.
Tópicos
Perguntas frequentes
- O que é croner?
- Biblioteca de cron para TypeScript/JavaScript sem dependências, que agenda funções ou calcula próximas execuções em Node, Deno, Bun e navegadores. Croner permite que código JavaScript e TypeScript execute funções de acordo com uma agenda cron ou avalie uma expressão cron para listar próximas execuções e verificar se uma data corresponde a um padrão. Ele roda em memória, sem banco de dados nem arquivos de configuração, e funciona em Node.js, Deno, Bun e navegadores.
- croner é gratuito? Qual é a licença?
- croner é open source sob a licença MIT. Confira os termos da licença antes de usá-lo em produtos comerciais.
- croner ainda é mantido?
- Manutenção ativa. O último commit de croner foi em 18 de out. de 2026.
- Para que posso usar croner?
- Executar jobs periódicos em segundo plano dentro de um servidor Node.js ou Bun, sem um serviço de agendamento separado. Calcular os próximos horários de execução de uma agenda para exibi-los em uma interface. Agendar tarefas em um fuso horário específico para usuários de diferentes regiões. Executar timers no estilo cron em um ambiente Deno ou navegador.
- Como instalar croner?
- Instale o croner pelo npm: npm install croner Importe a classe Cron no seu projeto: import { Cron } from "croner"; Agende uma função com um padrão cron: new Cron('*/5 * * * * *', () => { console.log('This will run every fifth second'); });
- Onde consigo croner?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/Hexagon/croner
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Biblioteca de logging sem dependências para JavaScript e TypeScript, compatível com Deno, Node.js, Bun, navegadores e edge functions.
Runtime de JavaScript, TypeScript e WebAssembly com padrões seguros, desenvolvido com V8, Rust e Tokio.
Fila de tarefas distribuída para Python que executa tarefas em segundo plano e distribui o trabalho entre workers e brokers de mensagens.
Coleção gratuita de APIs abertas com notícias diárias de 60 segundos, assuntos em alta em plataformas chinesas, preços, previsão do tempo e mais, implantável em Docker, Deno, Bun, Node.js ou Cloudflare Workers.
Biblioteca TypeScript minimalista e sem dependências para gerar PDFs reais com texto, retângulos, linhas, imagens JPEG e links.