Create skeleton of python project
Project description
python-seed
Starter kit for creating a new python package.
This is a starter repo for creating a new python package. Included are templates for standard files as well as best practices.
Install
You can install python-seed using pip
$ pip install -U pip
$ pip install python-seed
or install from source:
$ git clone https://github.com/developmentseed/python-seed.git
$ cd python-seed
$ pip install -U pip
$ pip install -e .
Usage
$ pyseed --help
Usage: pyseed [OPTIONS] COMMAND [ARGS]...
python-seed subcommands.
Options:
--version Show the version and exit.
--help Show this message and exit.
Commands:
create Create new python seed skeleton
$ pyseed create --help
Usage: pyseed create [OPTIONS] NAME
Create new python seed skeleton.
Options:
--ci [circleci|github] Add CI configuration
--help Show this message and exit.
Create a new python project
# Create a project without CI
$ pyseed create awesomepythonproject
# List files created
$ ls -1 awesomepythonproject
.pre-commit-config.yaml
README.md
awesomepythonproject/
requirements-dev.txt
requirements.txt
setup.py
tests/
tox.ini
With CI framework
# Create a project github actions
$ pyseed create awesomepythonproject --ci github
# List files created
$ ls -1 awesomepythonproject
.github/workflows/ci.yml
codecov.yml
.pre-commit-config.yaml
README.md
awesomepythonproject/
requirements-dev.txt
requirements.txt
setup.py
tests/
tox.ini
Project structure
my-project/
├── .circleci/ or .github/ - CI configuration.
├── codecov.yml - codecov configuration (only if CI is added).
├── .pre-commit-config.yaml - pre-commit configuration.
├── README.md - project readme.
├── my_project/ - core python module.
├── tests/ - tests suite placeholder for your module.
├── requirements.txt - python requirements (!!! by default requirements are written in setup.py)
├── requirements-dev.txt - python dev requirements (!!! by default requirements are written in setup.py)
└──tox.ini - TOX configuration.
Contribution & Development
Issues and pull requests are more than welcome.
dev install
$ git clone https://github.com/developmentseed/python-seed.git
$ cd python-seed
$ pip install -e .[dev]
Python3.7 only
This repo is set to use pre-commit
to run isort, flake8, pydocstring, black ("uncompromising Python code formatter") and mypy when committing new code.
$ pre-commit install
About
python-seed was created by Development Seed
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
File details
Details for the file python-seed-1.1.1.tar.gz
.
File metadata
- Download URL: python-seed-1.1.1.tar.gz
- Upload date:
- Size: 10.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.1 importlib_metadata/4.0.1 pkginfo/1.7.0 requests/2.25.1 requests-toolbelt/0.9.1 tqdm/4.61.0 CPython/3.9.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e0d66d375124ec71e7670be525601e2107de50f8dcd0a46cdca36fcffb06795e |
|
MD5 | fb884d9e6a162a05169ec5b9a29f9346 |
|
BLAKE2b-256 | 06b1a5e6085988ac5ea7ce238aa7a2d95fd2b603ea602a20bc71ea2e146e81d2 |