0.0.1 • Published 4 years ago

@cristian-rincon/py-struct v0.0.1

Weekly downloads
3
License
GPL-3.0
Repository
github
Last release
4 years ago

Py-struct

Project Status travis appveyor codecov npm version npm download

Introduction

py-struct is a yeoman-generator for Python-projects using setuptools. Projects created with py-struct are ready for publication to pypi and conda. The generator creates a package barebone that support:

  • a standard setup.py, setup.cfg, MANIFEST.in,
  • project automationg tox,
  • static code analysis and reports using pylint, flake8 and bandit,
  • a unit-test suite using pytest/unittest,
  • build.sh, bld.dat and meta.yaml for conda packages,
  • documentation with readthedocs.io and sphinx,
  • badges for the project status, build status using Travis CI and code coverage using Codecov,
  • custom README.md, TODO.md and VERSIONS.md files,
  • .gitignore, .gitattributes, .travis.yml, coveragerc,
  • a GPL3 license.

The resulting folder-structure looks like this:

   |____.bandit.yml
   |____.codecov.yml
   |____.coveragerc
   |____.gitattributes
   |____.gitignore
   |____.pylintrc
   |____.travis.yml
   |____.yo-rc.json
   |____LICENSE
   |____MANIFEST.in
   |____README.rst
   |____TODO.md
   |____VERSIONS.md
   |____bld.dat
   |____build.sh
   |____docs
   | |____Makefile
   | |____source
   | | |____conf.py
   | | |____index.rst
   | | |____examples.rst
   | | |____modules.rst
   | | |____tutorial.rst
   |____emptyproject
   | |______init__.py
   |____install.sh
   |____meta.yaml
   |____requirements.txt
   |____setup.cfg
   |____setup.py
   |____tests
   | |____test_me.py
   | |____emptyproject.py
   |____test.sh
   |____tox.ini

Installation

Yeoman comes with npm, so install it first and then call:

  npm install -g yo
  npm install -g generator-py-struct

Once you have the package, you can create a scaffold using:

  yo py-struct

This builds the skeleton. Afterwards modify the sources and documentation and build both using:

  pipenv install && pipenv install --dev .
  cd docs && make html

Author

  • Cristian Rincón cristian.o.rincon.b@gmail.com