Skip to content

schedule

A small Python library for running functions on a schedule, written in plain readable syntax.

Stars
12.3k
Forks
1k
Licence
MIT
Language
Python
Last update
2.4 years ago
Type
Library

No commits in over a year — check for forks or alternatives before adopting.

What it is

schedule is a Python library for running your own functions at set times or intervals, such as every 10 minutes or every day at 10:30. It is described as "Python job scheduling for humans," meaning it aims for simple, readable code instead of complex scheduler configuration. The README provided to me was empty, so this description relies mainly on the repository description and homepage.

  • Run a Python function every few minutes while a script is running
  • Trigger a daily report-generating function at a fixed time
  • Build a small polling loop that checks for updates at intervals

Great for

  • Python developers who need simple recurring tasks inside a script or small service
  • People writing quick automation scripts that run on a timer
  • Developers who want readable scheduling code without learning a large framework

Not ideal for

  • Production systems needing persistence, retries across restarts, or distributed workers, since nothing in the available metadata confirms those features
  • Users who do not write Python, because it is a Python library
  • Anyone needing a graphical scheduling tool, as no interface is mentioned
Step-by-step guide: how to use scheduleInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Python

    Install from PyPI

    pip install schedule
  2. 2

    Run it

    • Install the package with pip.
    • Import the schedule module in a Python script.
    • Define a function and register it with a schedule such as every interval or daily time.
    • Run a loop that calls schedule.run_pending() to execute due jobs.
  3. 3

    Get the most out of it

    • Read the official documentation at schedule.readthedocs.io for the full list of scheduling options.
    • Keep the scheduler loop lightweight so it does not block other work.
    • Wrap jobs in error handling so one failing task does not stop the script.

Downloads

Strengths

  • Simple, readable syntax for describing schedules
  • Open source under the MIT license
  • Has a documentation site linked from the repository

Trade-offs

  • The README was not available in the provided material, so feature details could not be verified
  • No release tags are listed, so version stability is unclear
  • Last push date is May 2024, so activity level should be checked before relying on it

How it compares

ProjectStarsTypeLevelUpdatedBest for
schedule (this)12.3kLibrarybeginner2.4 years agoPython developers who need simple recurring tasks inside a script or small service
cron14.2kLibraryintermediate2.3 years agoGo developers who need periodic tasks inside an application

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.