Metadata-Version: 2.1
Name: fastapi-serviceutils
Version: 0.2.1
Summary: Utils for fastapi based services.
Home-Page: https://fastapi-serviceutils.readthedocs.io/en/latest/
Project-URL: Repository, https://github.com/skallfass/fastapi_serviceutils
Author: Simon Kallfass
Author-email: skallfass@ouroboros.info
License: MIT
Requires-Python: ==3.*,>=3.7.0
Keywords: python,fastapi
Classifier: Operating System :: Unix
Classifier: License :: OSI Approved :: MIT License
Classifier: Programming Language :: Python :: 3.7
Requires-Dist: aiofiles==0.*,>=0.4.0
Requires-Dist: autoflake==1.*,>=1.3.0; extra == "devs" or extra == "dev"
Requires-Dist: cookiecutter==1.*,>=1.6.0
Requires-Dist: coverage==4.*,>=4.5.0; extra == "devs" or extra == "dev"
Requires-Dist: coverage-badge==1.*,>=1.0.0; extra == "devs" or extra == "dev"
Requires-Dist: email-validator==1.*,>=1.0.4
Requires-Dist: fastapi==0.*,>=0.42.0
Requires-Dist: flake8==3.*,>=3.7.0; extra == "devs" or extra == "dev"
Requires-Dist: ipython==7.*,>=7.8.0; extra == "devs" or extra == "dev"
Requires-Dist: isort==4.*,>=4.3.0; extra == "devs" or extra == "dev"
Requires-Dist: jedi==0.*,>=0.14.0; extra == "devs" or extra == "dev"
Requires-Dist: loguru==0.*,>=0.3.0
Requires-Dist: neovim==0.*,>=0.3.1; extra == "devs" or extra == "dev"
Requires-Dist: pre-commit>=1.18.3; extra == "devs" or extra == "dev"
Requires-Dist: pudb==2019.*,>=2019.1.0; extra == "devs" or extra == "dev"
Requires-Dist: pygments==2.*,>=2.4.0; extra == "devs" or extra == "dev"
Requires-Dist: pytest==5.*,>=5.0.0; extra == "devs" or extra == "dev"
Requires-Dist: pytest-asyncio>=0.10; extra == "devs" or extra == "dev"
Requires-Dist: pytest-cov>=2; extra == "devs" or extra == "dev"
Requires-Dist: pytest-xdist==1.*,>=1.30.0; extra == "devs" or extra == "dev"
Requires-Dist: pyyaml==5.*,>=5.1.0
Requires-Dist: requests==2.*,>=2.22.0
Requires-Dist: sphinx>=2; extra == "devs" or extra == "dev"
Requires-Dist: sphinx-autodoc-typehints>=1.6; extra == "devs" or extra == "dev"
Requires-Dist: sphinx-rtd-theme>=0.4.3; extra == "devs" or extra == "dev"
Requires-Dist: starlette-prometheus==0.*,>=0.3.0
Requires-Dist: toolz==0.*,>=0.10.0
Requires-Dist: ujson==1.*,>=1.35.0
Requires-Dist: uvicorn==0.*,>=0.9.0
Requires-Dist: yapf==0.*,>=0.27.0; extra == "devs" or extra == "dev"
Provides-Extra: dev
Provides-Extra: devs



.. image:: https://github.com/skallfass/fastapi_serviceutils/blob/master/docs/_static/coverage.svg
   :target: https://github.com/skallfass/fastapi_serviceutils/blob/master/docs/_static/coverage.svg
   :alt: coverage


.. image:: https://badge.fury.io/py/fastapi-serviceutils.svg
   :target: https://pypi.python.org/pypi/fastapi-serviceutils/
   :alt: PyPI version fury.io


.. image:: https://img.shields.io/pypi/pyversions/fastapi-serviceutils.svg
   :target: https://pypi.python.org/pypi/fastapi-serviceutils/
   :alt: PyPI pyversions


.. image:: https://readthedocs.org/projects/fastapi-serviceutils/badge/?version=latest
   :target: http://fastapi-serviceutils.readthedocs.io/?badge=latest
   :alt: Documentation Status


.. image:: https://img.shields.io/badge/License-MIT-blue.svg
   :target: https://img.shields.io/badge/License-MIT-blue.svg
   :alt: MIT License


.. image:: https://github.com/dephell/dephell/blob/master/assets/badge.svg
   :target: https://github.com/dephell/dephell/blob/master/assets/badge.svg
   :alt: Powered by Dephell


Installation
------------

.. code-block:: bash

       pip install fastapi-serviceutils

Usage
-----

For more details and usage see: `readthedocs <https://fastapi-serviceutils.readthedocs.io/en/latest/>`_

Development
-----------

Initialize project
^^^^^^^^^^^^^^^^^^

After cloning the repository, you can initialize your development environment using

.. code-block:: bash

       make init

This will create the dev environment exampleservice/dev. Activate it using:

.. code-block:: bash

       dephell venv shell --env devs

Start development
^^^^^^^^^^^^^^^^^

**Note:**

Make sure to always activate the environment when you start working on the
project in a new terminal using

.. code-block:: bash

       dephell venv shell --env devs

Updating dependencies
^^^^^^^^^^^^^^^^^^^^^

After each change in dependencies defined at ``pyproject.toml`` run the
following to ensure the environment-definition and lock-file are up to date:

.. code-block:: bash

       make update

Checking with linters and checkers
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^

To run all pre-commit-hooks manually run:

.. code-block:: bash

       make check

Info about project-state
^^^^^^^^^^^^^^^^^^^^^^^^

To show summary about project run:

.. code-block:: bash

       make info

Documentation
^^^^^^^^^^^^^

The project's developer documentation is written using Sphinx.

The documentation sources can be found in the docs subdirectory.
They are written using restructuredText.

The API-documentation is auto-generated from the docstrings of modules,
classes, and functions.
We're using the Google docstring standard.

To generate the documentation, run

.. code-block:: bash

       make docs

The generated HTML files will be in the ``docs/_build`` directory.

There is also a swagger-documentation to be used for users of the service.

The apidoc can be found at ``/apidoc/index.html``.

Tests
^^^^^

For testing we use ``pytest``\ , for details see
`Pytest Docs <http://doc.pytest.org/en/latest/>`_.
To run all tests:

.. code-block:: bash

       make tests
