Metadata-Version: 2.1
Name: klein
Version: 23.5.0
Summary: werkzeug + twisted.web
Home-page: https://github.com/twisted/klein
Maintainer: Twisted Matrix Laboratories
Maintainer-email: twisted-python@twistedmatrix.com
License: MIT
Description: ============================
        Klein, a Web Micro-Framework
        ============================
        
        .. image:: https://github.com/twisted/klein/workflows/CI/badge.svg?branch=master
            :target: https://github.com/twisted/klein/actions
            :alt: Build Status
        .. image:: https://codecov.io/github/twisted/klein/coverage.svg?branch=master
            :target: https://codecov.io/github/twisted/klein?branch=master
            :alt: Code Coverage
        .. image:: https://requires.io/github/twisted/klein/requirements.svg?branch=master
            :target: https://requires.io/github/twisted/klein/requirements/?branch=master
            :alt: Requirements Status
        .. image:: https://img.shields.io/pypi/pyversions/klein.svg
            :target: https://pypi.org/project/klein
            :alt: Python Version Compatibility
        
        Klein is a micro-framework for developing production-ready web services with Python.
        It is 'micro' in that it has an incredibly small API similar to `Bottle <https://bottlepy.org/docs/dev/index.html>`_ and `Flask <https://flask.palletsprojects.com/>`_.
        It is not 'micro' in that it depends on things outside the standard library.
        This is primarily because it is built on widely used and well tested components like `Werkzeug <https://werkzeug.palletsprojects.com/>`_ and `Twisted <https://twisted.org>`_.
        
        A `Klein bottle <https://en.wikipedia.org/wiki/Klein_bottle>`_ is an example of a non-orientable surface, and a glass Klein bottle looks like a twisted bottle or twisted flask.
        This, of course, made it too good of a pun to pass up.
        
        Klein's documentation can be found at `Read The Docs <https://klein.readthedocs.org>`_.
        
        
        Example
        ========
        
        This is a sample Klein application that returns 'Hello, world!', running on port ``8080``.
        
        .. code-block:: python
        
            from klein import run, route
        
            @route('/')
            def home(request):
                return 'Hello, world!'
        
            run("localhost", 8080)
        
        
        Contribute
        ==========
        
        ``klein`` is hosted on `GitHub <https://github.com/twisted/klein>`_ and is an open source project that welcomes contributions of all kinds from the community, including:
        
        - code patches,
        - `documentation <https://klein.readthedocs.org/>`_ improvements,
        - `bug reports <https://github.com/twisted/klein/issues>`_,
        - reviews for `contributed patches <https://github.com/twisted/klein/pulls>`_.
        
        For more information about contributing, see `the contributor guidelines <https://github.com/twisted/klein/tree/master/CONTRIBUTING.rst>`_.
        
Keywords: twisted flask werkzeug web
Platform: UNKNOWN
Classifier: Environment :: Web Environment
Classifier: Intended Audience :: Developers
Classifier: License :: OSI Approved :: MIT License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python
Classifier: Programming Language :: Python :: 3.7
Classifier: Programming Language :: Python :: 3.8
Classifier: Programming Language :: Python :: 3.9
Classifier: Programming Language :: Python :: 3.10
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: Implementation :: CPython
Classifier: Programming Language :: Python :: Implementation :: PyPy
Classifier: Topic :: Internet :: WWW/HTTP :: Dynamic Content
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Requires-Python: >=3.7
Description-Content-Type: text/x-rst
License-File: LICENSE
License-File: AUTHORS
