An OOP task runner for Python that enhances task reuse.
Project details
Bakefile is an Object-Oriented Programming (OOP) task runner designed to simplify the execution of tasks in Python. Unlike traditional Makefiles, Bakefile allows tasks to be defined once and reused across different projects, making it an ideal solution for developers looking for efficiency and convenience in their workflow.
bakefile is an Object-Oriented Programming (OOP) task runner designed to streamline the way developers manage tasks. Unlike traditional task systems such as Makefile, which can be cumbersome for reusability across projects, bakefile allows tasks to be defined once and utilized anywhere, leveraging the power of Python classes.
A quick way to start using bakefile is by defining your tasks in a custom Bakebook:
from bake import Bakebook, command, console
class MyBakebook(Bakebook):
@command()
def build(self) -> None:
console.echo("Building...")
self.ctx.run("cargo build")
bakebook = MyBakebook()
You can then execute the defined tasks with a simple command:
bake build
To create a new bakefile, use bakefile init or consult the simple example.
For comprehensive documentation, visit bakefile.wisl.dev where you can find resources on:
To contribute to the project, clone the repository and follow the development setup instructions outlined in the accompanying documentation. The project employs uv for dependency management, ensuring efficient project upkeep. Contributions are welcome, and clear guidelines for development can be found in the CLAUDE.md document in the repository.
Learn more about the author at wisl.dev.
Explore the full functionality of bakefile and see how it can enhance your task management processes.
Comments
0Start the conversation
Share the first comment.