Python project scaffolding generator
Project description
Propylen
Propylen is a Python CLI tool for generating Python projects. In nature, it is a wrapper around pipenv and poetry with some added swag.
NOTE: Package is not yet fully tested
Installation
Propylen should be installed using pipx
as:
pipx install propylen
Usage
Initialize project
Propylen generates project structure of type:
{project-name}
|- src/
|- {project-name}
|- __init__.py
|- __main__.py
|- test/
|- Pipfile
|- pyproject.toml
|- README.md
You can generate a project structure interactively:
propylen init <project-name>
Alternatively, you can provide necessary infromation in form of command line options. To see available options:
propylen init -h
Package Management
pipenv
is used as a backend for package management. Options are stripped down.
Propylen reconciles packages installed using pipenv
(to Pipfile
) to the pyproject.toml
file. This behavior can be disabled temporarily by calling propylen install
or propylen uninstall
with --no-reconcile
option or permanently by adding auto_reconcile_dependencies = false
into [tool.propylen]
section of pyproject.toml
By default propylen tries to proactively version packages in pyproject.toml
if no version is provided in Pipfile
. This behavior can be disabled by adding proactive_versioning = false
into [tool.propylen]
section of pyproject.toml
.
You can also use propylen
to install packages using
propylen install <package-name1> <package-name2> ...
Or without package name to install dependencies from Pipfile
propylen install
Additional options are also available, to see them:
propylen install -h
You can uninstall packages using
propylen uninstall <package-name1> <package-name2> ...
You can reconcile packages from Pipfile
to pyproject.toml
using
propylen reconcile
Unless it is unset as described above it happens automatically during installs and uninstalls.
Building
poetry is used as a backend for building. Options are stripped down.
You can build the project using
propylen build
Additional options are also available, to see them:
propylen build -h
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file propylen-0.4.4.tar.gz
.
File metadata
- Download URL: propylen-0.4.4.tar.gz
- Upload date:
- Size: 6.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | c71e059868af9ccb8825f8a998ec0f8302bd04da55ee589541133dea02d9709e |
|
MD5 | 4e41acc4da993f9f57716bebd746cb93 |
|
BLAKE2b-256 | 574423674eb0fb7749d54752a6e02d229961a71765e7af84e362f81174435148 |
File details
Details for the file propylen-0.4.4-py3-none-any.whl
.
File metadata
- Download URL: propylen-0.4.4-py3-none-any.whl
- Upload date:
- Size: 6.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.8.0 pkginfo/1.8.2 readme-renderer/33.0 requests/2.27.1 requests-toolbelt/0.9.1 urllib3/1.26.8 tqdm/4.63.0 importlib-metadata/4.11.2 keyring/23.5.0 rfc3986/2.0.0 colorama/0.4.4 CPython/3.9.10
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | b6426a1680d37e6c8a0eec10b116bc68d36323837cb7833203f8bb745cf9b321 |
|
MD5 | 9eb5d07a44b3edb21b6a24ed342e41ee |
|
BLAKE2b-256 | 15a04c48714a6f79cbf639cf44185141293a78e629c32db7a71b7d8727132889 |