awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
dbader avatar

dbader/schedule

0
View on GitHub↗
schedule.readthedocs.io↗

Schedule

This project is a lightweight Python scheduling library used for managing recurring jobs and automating the execution of functions within a single process. It serves as an event-based task scheduler that triggers functions at specific intervals or weekdays.

The library utilizes human-readable timing syntax to schedule periodic function calls. It supports the organization of timed workflows through job tag filtering and provides mechanisms for scheduler state inspection to track planned execution times.

The system handles both periodic and specific job scheduling with timezone support. It includes capabilities for managing execution limits via timeouts and manual cancellation.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Job Schedulers - Provides a lightweight utility for automating recurring function calls at fixed intervals.
  • Interval Parsing - Provides human-readable timing syntax to define recurring task intervals.
  • Task Scheduling - Automates the execution of Python functions using human-readable timing syntax.
  • Time-Based Triggers - Uses time-based triggers to execute jobs when the system clock matches the scheduled time.
  • Job Scheduling - Enables scheduling of functions at precise times or specific weekdays with timezone support.
  • In-Process Task Schedulers - Manages a queue of timed events within the memory space of a single Python process.
  • Scheduling Libraries - Provides a lightweight Python library for managing recurring jobs without external dependencies.
  • Background Job Schedulers - Automates the execution of repetitive background tasks on a fixed schedule.
  • Job Tagging - Supports organizing and managing groups of timed tasks through assigned job tags.
  • Workflow Schedulers - Organizes and controls groups of timed tasks using tags, timeouts, and state monitoring.
  • Execution Time Limits - Includes capabilities to terminate scheduled tasks via timeout conditions or manual cancellation.
  • Job Registries - Maintains a dynamic registry of scheduled functions and metadata for runtime inspection and filtering.
  • Event Loops - Runs a continuous single-threaded event loop to sequentially check and execute pending jobs.
  • Synchronous Execution Models - Implements a blocking execution model that ensures scheduled tasks run synchronously on the main thread.
  • Scheduler State Inspection - Allows tracking of next planned execution times and system idleness to monitor scheduler progress.
  • Job Schedulers - Human-friendly job scheduling.
  • Notes and Productivity - Job scheduling for humans.
12,245 stars·998 forks·Python·MIT·29 views

Star history

Star history chart for dbader/scheduleStar history chart for dbader/schedule

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Projects sharing features with Schedule

These projects share indexed features with Schedule. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • agronholm/apscheduleragronholm avatar

    agronholm/apscheduler

    7,539View on GitHub↗

    APScheduler is a Python task scheduler designed to execute functions at specific times or recurring intervals. It functions as an asynchronous background scheduler and distributed job dispatcher, allowing tasks to run concurrently with application lifecycles and web server request handling. The system distinguishes itself through a persistent job store that saves schedules and task states in external databases, ensuring continuity across process restarts. It separates task scheduling from execution by dispatching jobs to distributed workers in separate processes to prevent execution bottlenec

    Python
    View on GitHub↗7,539
  • taskforcesh/bullmqtaskforcesh avatar

    taskforcesh/bullmq

    8,432View on GitHub↗

    BullMQ is a Redis-backed message queue library and background processor designed for distributed task queueing. It functions as a distributed queue manager and task scheduler, utilizing Redis to manage asynchronous job processing and persistence. The system distinguishes itself through its role as a job workflow orchestrator, enabling the definition of complex parent-child job dependencies and hierarchies for multi-step workflows. It provides sandboxed process execution to isolate heavy workloads and prevent event loop blocking, alongside distributed rate limiting to protect downstream servic

    TypeScriptbackground-jobselixirnodejs
    View on GitHub↗8,432
  • hatchet-dev/hatchethatchet-dev avatar

    hatchet-dev/hatchet

    6,622View on GitHub↗

    Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for building and executing fault-tolerant, multi-step pipelines as directed acyclic graphs (DAGs), with automatic retries, scheduling, and real-time observability. The system is built around durable task checkpointing, which persists execution state after each step so work can resume from the last checkpoint after a worker crash or restart, and it supports event-driven task resumption that pauses a task until a matching external event arrives. The platform distinguishes itself through it

    Goconcurrencydagdistributed
    View on GitHub↗6,622
  • prefecthq/prefectPrefectHQ avatar

    PrefectHQ/prefect

    21,640View on GitHub↗

    Prefect is a workflow orchestration platform designed to define, schedule, and monitor complex data pipelines as Python code. It functions as a container-native engine that wraps individual tasks in isolated environments, ensuring consistent dependencies and resource allocation across diverse infrastructure. By utilizing a state-machine-based orchestration model, the system tracks execution progress through discrete transitions and persistent event logs to maintain reliable and observable task processing. The platform distinguishes itself through a decoupled worker-API architecture, which sep

    Pythonautomationdatadata-engineering
    View on GitHub↗21,640
Compare all 30 related projects→

Frequently asked questions

What does dbader/schedule do?

This project is a lightweight Python scheduling library used for managing recurring jobs and automating the execution of functions within a single process. It serves as an event-based task scheduler that triggers functions at specific intervals or weekdays.

What are the main features of dbader/schedule?

The main features of dbader/schedule are: Job Schedulers, Interval Parsing, Task Scheduling, Time-Based Triggers, Job Scheduling, In-Process Task Schedulers, Scheduling Libraries, Background Job Schedulers.

Which projects share features with dbader/schedule?

Projects with overlapping indexed features include: agronholm/apscheduler — APScheduler is a Python task scheduler designed to execute functions at specific times or recurring intervals. It… taskforcesh/bullmq — BullMQ is a Redis-backed message queue library and background processor designed for distributed task queueing. It… hatchet-dev/hatchet — Hatchet is an open-source durable workflow engine and task orchestration platform. It provides a framework for… prefecthq/prefect — Prefect is a workflow orchestration platform designed to define, schedule, and monitor complex data pipelines as… agenda/agenda — Agenda is a persistent background job scheduler and distributed task runner for Node.js applications. It functions as… go-co-op/gocron — gocron is a task scheduling library for Go designed to automate recurring tasks using crontab expressions, fixed…