Skip to content
/ jivago Public

The highly-reflective object-oriented Python web framework

License

Notifications You must be signed in to change notification settings

keotl/jivago

Repository files navigation

Jivago Framework - The Highly-Reflective Object-Oriented Python Web Framework

travis-ci readthedocs PyPI version

Jivago is an object-oriented, highly-reflective Python framework for building web applications. It relies heavily on type annotations and decorators to enforce typing, providing package auto-discovery and dependency injection out of the box. This leads to less boilerplate code, while maintaining loose-coupling across components.

Also includes other Java-esque goodies, such as stream operations!

Find the documentation over at docs.jivago.io.

Minimal Jivago Application

from jivago.jivago_application import JivagoApplication
from jivago.wsgi.annotations import Resource
from jivago.wsgi.methods import GET


@Resource("/")
class HelloResource(object):

    @GET
    def get_hello(self) -> str:
        return "Hello World!"


app = JivagoApplication()

if __name__ == '__main__':
    app.run_dev()

Installation

Requires Python3.6 or greater.

pip install jivago