A Pythonic replacement for GNU Make, with re-usability and modularity added as a bonus.
Jeeves transforms your shell experience by enabling you to create custom Python-based shell commands to manage and automate your development workflows.
- Custom Shell Commands: Construct commands to build, compile, lint, format, test, deploy, and propel your projects forward.
- Python-Powered: Use Python for readable and maintainable workflows.
- Rich Integrations: Stylish command output with
rich
andsh
. - Plugin System: Share your setup across projects.
Install with pip:
pip install 'jeeves-shell[all]'
Or with poetry:
poetry add --group dev --extras=all jeeves-shell
Create a file named jeeves.py
in the root of your project.
import rich
import sh
def hi():
"""Hello world."""
user_name = sh.whoami()
machine = sh.uname('-a')
rich.print(f'Hello [b]{user_name}[/b]!')
rich.print(f'This code is running on: [b]{machine}[/b].')
And then execute in your shell:
j hi
this should print something along the lines of:
Hello john-connor!
This code is running on: Cyberdyne T800!
Read the tutorial!
This project was generated with wemake-python-package
.