https://github.com/idlesign/makeapp
Simplifies routine Python application development processes.
- Make a skeleton for your new application with one console command.
- Automatically create a VCS repository for your application.
- Automatically check whether the chosen application name is not already in use.
- Customize new application layouts with skeleton templates.
- Put some skeleton default settings into a configuration file not to mess with command line switches anymore.
- Easily add entries to your changelog.
- Publish your application to remotes (VCS, PyPI) with a single command.
- Easily bootstrap your development environment.
- Build and local serve the docs.
- Run code styling/linting.
Scaffold a new application:
ma new shiny_app /home/librarian/shiny/ --description "My app." --author "I am"!!! note
ma is a convenient alias for makeapp command.
This will create a decent application skeleton using the default skeleton template (pyproject.toml, docs, tests, etc.)
and initialize Git repository.
makeapp also bundles templates for commonly used application types:
clickpowered apppytestpluginDjangoappwebscaffproject here- etc.
Multiple templates can be used together. Complete list of featured templates can be found in the documentation. User-made templates are also supported.
When you're ready to add another entry to your changelog use change command:
ma change "+ New 'change' command implemented"This will also stage and commit all changed files.
When you're ready to publish issue the following command:
ma release
; Bump version number part manually: major, minor, patch
ma release --increment majorThis will automatically:
- bump up application version number
- tag version in VCS
- push sources to remote repository
- upload application package to PyPI
Or you just want to participate in the development of some other app.
Use tools and up commands to initialize tools and the environment to develop the application.
ma tools
ma upApply code style with style command:
ma styleUse docs command:
ma docs