Metadata-Version: 2.1
Name: sire
Version: 1.0.4
Summary: Python project generator
Home-page: http://github.com/interrogator/sire
Author: Danny McDonald
Author-email: mcddjx@gmail.com
License: MIT
Description: # sire
        
        > *sire* is a command that generates Python 3.7 project templates, with git, travis, mypy (etc.) support.
        
        > Version 1.0.4
        
        [![Build Status](https://travis-ci.org/interrogator/sire.svg?branch=master)](https://travis-ci.org/interrogator/sire)
        [![codecov.io](https://codecov.io/gh/interrogator/sire/branch/master/graph/badge.svg)](https://codecov.io/gh/interrogator/sire)
        [![readthedocs](https://readthedocs.org/projects/sire/badge/?version=latest)](https://sire.readthedocs.io/en/latest/)
        [![PyPI version](https://badge.fury.io/py/sire.svg)](https://badge.fury.io/py/sire)
        [![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/python/black)
        
        ## Install sire
        
        ```bash
        pip install sire
        #or
        git clone https://github.com/interrogator/sire && cd sire && python.setup.py install
        ```
        
        ## Usage
        
        ```bash
        sire --mkdocs --virtualenv --git --exclude=mypy <project_name>
        ```
        
        ## Alternative usages (not recommended)
        
        As Python module:
        
        ```bash
        python -m sire.sire mkdocs virtualenv <project_name>
        ```
        
        Or from inside Python (why?):
        
        ```python
        from sire import sire
        sire('project_name', mkdocs=True, virtualenv=True, git=True)
        ```
        
        ### What gets generated
        
        Pure Python:
        
        * `<project_name>/<project_name>.py`
        * `<project_name>/__init__.py`
        * `setup.py`
        * `requirements.txt` (with *black*, *isort*, *flake8* etc)
        * `tests/tests.py`
        
        Optional extras:
        
        * mkdocs (`.readthedocs.yaml`, `./docs`, `.mkdocs.yml`)
        * irtualenv (with dependencies installed)
        * git (`.git`, `.gitignore`, `.pre-commit-config.yaml`)
        
        Each of these has an associated flag:
        
        ```bash
        sire -v/--virtualenv -m/--mkdocs -g/--git projname
        ```
        
        Other files
        
        * `.coveragerc`
        * `.travis.yml`
        * `publish.sh` (a script for running tests and authoring a new version)
        * `mypy.ini`
        * MIT License
        * Empty `CHANGELOG`
        * `.bumpversion.cfg`
        
        If you want to skip any of these files, use the `--exclude` option with comma separation:
        
        ```bash
        sire --exclude=travis,setup.py,mypy projname
        ```
        
        ## Trivia
        
        * *sire* actually generated itself.
        
        ## Contributing
        
        I don't really expect many other people to want this, because it's mostly tailored to my specific ideas about how a Pthon project should look. That said, if you do find this projet useful, you are more than welcome to submit pull/feature requests!
        
        There are dozens of possible new features that could be added, which I'd personally quite like:
        
        * a `--license` option, to choose the correct license file
        * Setting git remote automatically (get github username from git global config?)
        * Deleting irrelevant strings --- if no *codecoverage*, remove the associated badge for example
        * Probably more code could be automatically generated and added for the main and test `.py` files
        
        While I'd love to have these in *sire*, coding them will take me longer than doing it manually a few times. So, unless this repo somehow becomes popular or finds some new contributors, don't expect any of this stuff to get done in a hurry, unless you add it yourself.
Platform: UNKNOWN
Description-Content-Type: text/markdown
