You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
PyScaffold extension that lets you create your own custom extensions.
Description
This extension was written to help users interested in developing their own extension for PyScaffold.
It configures your project so that you can start writing your extension logic and tests right away,
taking care of all the wiring required to conform to PyScaffold's needs.
Let's say you want to create an extension named notebooks that creates a notebooks folder with some template Jupyter notebook.
After having installed this extension with:
pip install pyscaffoldext-custom-extension
you will be able to just use it with:
putup --custom-extension notebooks
This will create a typical PyScaffold project template with some modifications:
the topmost namespace will be pyscaffoldext to have a unified namespace for PyScaffold extensions,
assures that the package (as pip/PyPI sees it) is named pyscaffoldext-notebooks in setup.cfg,
sets the correct install_requires as well as the options.entry_points parameters in setup.cfg,
automatically activates the extensions --no-skeleton, --pre-commit, --cirrus and
since we want clean-coded, high-quality extensions,
creates a extension.py module holding a class which serves you as a template for your extension,
adds basic unit tests checking that the invocation of your extension works and that it complies with our flake8 code guidelines,
provides a modified README.rst indicating that this is a PyScaffold extensions and how to install it.
Making Changes & Contributing
This project uses pre-commit, please make sure to install it before making any
changes:
pip install pre-commit
cd pyscaffoldext-custom-extension
pre-commit install
It is a good idea to update the hooks to the latest version: