Metadata-Version: 2.1
Name: Genderize
Version: 0.2.0
Summary: Client for Genderize.io web service.
Home-page: https://github.com/SteelPangolin/genderize
Author: Erica Ehrhardt
Author-email: 955421+SteelPangolin@users.noreply.github.com
License: MIT
Platform: UNKNOWN
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 2
Classifier: Programming Language :: Python :: 2.7
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.3
Classifier: Programming Language :: Python :: 3.4
Classifier: Programming Language :: Python :: 3.5
Classifier: Programming Language :: Python :: 3.6
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Dist: requests (>=1.0.0)

Genderize
---------

Client for the `Genderize.io <https://genderize.io/>`_ web service.

.. image:: https://img.shields.io/github/license/steelpangolin/genderize.svg?style=flat
  :target: https://github.com/SteelPangolin/genderize

.. image:: https://img.shields.io/pypi/v/Genderize.svg?style=flat
  :target: https://pypi.python.org/pypi/Genderize

.. image:: https://img.shields.io/travis/SteelPangolin/genderize.svg?style=flat
  :target: https://travis-ci.org/SteelPangolin/genderize

.. image:: https://img.shields.io/codecov/c/github/SteelPangolin/genderize.svg?style=flat
  :target: https://codecov.io/gh/SteelPangolin/genderize

.. image:: https://readthedocs.org/projects/genderize/badge/?style=flat
  :target: https://genderize.readthedocs.org/


Basic usage
-----------

Import the `Genderize` class and call its `get` method with a list of names.

::

    from genderize import Genderize
    print(Genderize().get(['James', 'Eva', 'Thunderhorse']))

::

    [{u'count': 1037, u'gender': u'male', u'name': u'James', u'probability': 0.99},
     {u'count': 234, u'gender': u'female', u'name': u'Eva', u'probability': 1.0},
     {u'gender': None, u'name': u'Thunderhorse'}]


Shell usage
-----------

If run as a script, takes a list of names on stdin, and prints them with their genders.

::

    echo "James\nEva\nThunderhorse" | python -m genderize

::

    James: male
    Eva: female
    Thunderhorse: None


Advanced usage
--------------

Create a `Genderize` instance with a custom user agent,
and an `API key <https://store.genderize.io/>`_.
Note that you'll need to use your own API key or this example won't work.

::

    from genderize import Genderize
    genderize = Genderize(
        user_agent='GenderizeDocs/0.0',
        api_key='example_api_key')
    print(genderize.get(['James', 'Eva', 'Thunderhorse']))

::

    [{u'count': 1037, u'gender': u'male', u'name': u'James', u'probability': 0.99},
     {u'count': 234, u'gender': u'female', u'name': u'Eva', u'probability': 1.0},
     {u'gender': None, u'name': u'Thunderhorse'}]


Maintenance
-----------

Setup for local development:

::

    virtualenv --prompt '(genderize) ' venv -p python3
    pip install -r requirements.txt
    pip install -r requirements-dev.txt


Release checklist:

#. Generate a new version number: `major.minor.micro`. It should be compatible with both `PEP 440 <https://www.python.org/dev/peps/pep-0440/>`_ and `SemVer 2.0.0 <https://semver.org/>`_.
#. Update `__version__` in `genderize/__init__.py`. This is read by `setup.py` and doesn't need to be changed there.
#. Add a changelog entry and date for the new version in `CHANGES.rst`.
#. Commit the changes. This may be done as part of another change.
#. Tag the commit with `git tag major.minor.micro`.
#. Push the tag to GitHub with `git push origin major.minor.micro`.
#. Travis will create a new PyPI release from the tag.


