Skip to main content
https://travis-ci.org/renskiy/marnadi.svg?branch=master

Yet another WSGI Web Framework, the simplest and fastest ever written.

Has no dependencies. Works both with Python 2 and Python 3.

Features

  • Support both of functional and object-oriented programming styles

  • Dynamic routes, e.g. “/path/{param}/”

  • Headers, query, data, cookies descriptors

  • Rich extending abilities

Installation

Simply execute following line:

pip install marnadi

“Hello World”

Run this script and open http://localhost:8000/ on your browser:

from marnadi import Response
from marnadi.wsgi import App

application = App()


@application.route('/')
@Response.get
def main_page():
    return 'This is main page'

if __name__ == '__main__':
    from wsgiref.simple_server import make_server
    make_server('', 8000, application).serve_forever()

More complex example

Script below additionally will respond to http://localhost:8000/foo/bar/ and http://localhost:8000/foo/ requests:

from marnadi import Response, Route
from marnadi.wsgi import App


class MainPageResponse(Response):

    def get(self):
        return 'This is main page'


class FooBarResponse(Response):

    def get(self, foo, bar=None):
        return 'foo is {foo}, bar is {bar}'.format(foo=foo, bar=bar)

routes=(
    Route('/', MainPageResponse),
    Route('/{foo}/', FooBarResponse, routes=(
        Route('{bar}/', FooBarResponse),
    )),
)

application = App(routes=routes)

if __name__ == '__main__':
    from wsgiref.simple_server import make_server
    make_server('', 8000, application).serve_forever()

Metadata

Release files for Marnadi 0.5.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Marnadi 0.5.3
File Size Uploaded
Marnadi-0.5.3.tar.gz 11.1 kB Details

Release files / Marnadi-0.5.3.tar.gz

Download URL Marnadi-0.5.3.tar.gz
Size 11.1 kB
Tags Source
SHA-256 checksum
How to use checksums
bbe7bebbcf77adab0b4cd32253dca10233811dbb8e37fdcc89b54f87f942e0bd
BLAKE2b-256 checksum
How to use checksums
0a1777da59846e875b661424a9634010623653f67e690c196429cbb30cdd3d90
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.5.3 This release

1 release file

0.5.2

1 release file

0.5.1

1 release file

0.5.0

1 release file

0.4.2

1 release file

0.4.1

1 release file

0.4.0

1 release file

0.3.2

1 release file

0.3.1

1 release file

0.3.0

1 release file

0.2.9

1 release file

0.2.8

1 release file

0.2.7

1 release file

0.2.6

1 release file

0.2.5

1 release file

0.2.4

1 release file

0.2.3

1 release file

0.2.2

1 release file

0.2.1

1 release file

0.1.2

1 release file

0.1.1

1 release file

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page