.. meta::
:description: Rocketry, modern scheduling framework
:keywords: schedule, task, script, run, Python
.. raw:: html
:file: header.html
- `Documentation `_
- `Source code (Github) `_
- `Releases (PyPI) `_
No time to read? :ref:`Get started then. `
Rocketry is a modern scheduling framework for Python
applications. It is simple, clean and extensive.
**Key features:**
- Simple: Productive and easy to set up
- Robust: Well tested and production ready
- Extensive: A lot of built-in features
- Customizable: Designed to be modified
**Core functionalities:**
- Powerful scheduling
- A lot of built-in scheduling options (including :ref:`cron `)
- Concurrency (async, threading, multiprocessing)
- Parametrization
- Task pipelining
- Modifiable runtime session
- Async support
**It looks like this:**
.. literalinclude:: /code/demos/minimal_with_api.py
:language: py
.. raw:: html
There is also a string based option
.. literalinclude:: /code/demos/minimal.py
:language: py
.. raw:: html
Why Rocketry?
-------------
There are some alternatives for a scheduler:
- Crontab
- APScheduler
- Airflow
Unlike the alternatives, Rocketry's scheduler is
statement-based. Rocketry natively supports the
same scheduling strategies as the other options,
including cron and task pipelining, but it can also be
arbitrarily extended using custom scheduling statements.
In addition, Rocketry is very easy to use. It does not
require complex setup but it can be used for bigger applications.
It has a lot of options to fine-tune and a lot of features
to support various needs.
Rocketry is designed to be modified and it suits well as the
engine for autonomous applications. It is the automation
back-end that sets your applications alive.
More Examples
-------------
.. raw:: html
Choosing Execution Option
.. literalinclude:: /code/snippets/parallelization.py
:language: py
.. raw:: html
.. raw:: html
Custom Conditions
.. literalinclude:: /code/snippets/custom_condition.py
:language: py
.. raw:: html
.. raw:: html
Pipelining Tasks
.. literalinclude:: /code/snippets/pipeline.py
:language: py
.. raw:: html
.. raw:: html
Parametrizing Tasks
.. literalinclude:: /code/snippets/parametrize.py
:language: py
.. raw:: html
Interested?
-----------
Just install the library:
.. code-block:: console
pip install rocketry
There is much more to offer. See :ref:`quick start `
and get started with :ref:`tutorials `. There are also
:ref:`handbooks ` to check options and details.
.. toctree::
:maxdepth: 2
:caption: Contents:
tutorial/index
handbooks/index
cookbook/index
examples/index
condition_syntax/index
how_it_works
rocketry_vs_alternatives
contributing
versions
Indices and tables
==================
* :ref:`genindex`