Background Tasks Unleashed (BTU)
A software package that allows Frappe Framework users to create, schedule, and monitor background Tasks, all from a web page.
Tasks are any Python function, from any installed Frappe App.
BTU users don't need to write code, touch 'hooks.py', or SSH into a web server: everything they need is performed in their browser.
Things You Can Do
- Automatically create and submit Sales Invoices at 8 PM nightly.
- Email purchase orders to suppliers automatically, every Monday at 7 AM and Wednesday at 3 PM.
- Run a maintenance task to clean your ERPNext tables every 8 hours.
- Fetch data from 3rd party APIs every 5 minutes.
- On-demand, click a button to create a Stock Entry journal.

How does it work?
The BTU consists of 3 pieces of software:
-
A Frappe App with DocTypes such as Tasks, Task Schedules, and Task Logs. (Link to its GitHub repo here.)
-
A scheduler daemon, that integrates with the frontend Frappe App. (GitHub repo here.)
- Enqueues Tasks based on their Schedules.
- Listens for commands.
- Automatically refreshes the schedules, in case of a server reboot.
- CLI component.
- An optional CLI tool. Web administrators can use this for querying and interacting with the scheduler daemon.
Further Reading
To learn more about this tool, visit the Official Documentation, or chat with me here on the forums. 