This is a pre-production deployment of Warehouse. Changes made here affect the production instance of PyPI (pypi.python.org).
Help us improve Python packaging - Donate today!

Yet another async web server

Project Description

What’s Pyx?

Pyx is yet another async web server written in Python, with the asyncio module.

It’s small and simple. It has no dependency at all except Python itself.

Yet Pyx is also carefully crafted to behave nicely in stressful and dangerous enviroments.

How to install?

Just use pip or tools alike:

pip install pyxserver

What can Pyx do?

Pyx is a simple static file server by itself:

pyx -b localhost -p 8000 -r /some/where

This will start pyx and bind it to localhost:8000, serving files in the directory /some/where

And you can also use the small framework provided by Pyx to write your own dynamic web application:

import asyncio
from pyx import (HttpHeader, HttpConnectionCB)

@asyncio.coroutine
def req_cb(req):
    resp = req.respond(200)
    resp.headers.append(HttpHeader('Content-Length', 5))
    resp.headers.append(HttpHeader('Content-Type', 'text/plain'))
    yield from resp.send()
    yield from resp.send_body(b'hello')

loop = asyncio.get_event_loop()

conn_cb = HttpConnectionCB(req_cb)
starter = asyncio.start_server(conn_cb, '127.0.0.1', 8080, loop=loop)
_server = loop.run_until_complete(starter)

loop.run_forever()

Please see the implementation of pyx.http.StaticRootResource for a more sophisticated example.

License

Pyx is licensed under the terms of the MIT license.

Release History

Release History

This version
History Node

0.1.4

History Node

0.1.3

History Node

0.1.2

History Node

0.1.1

History Node

0.1.0

Download Files

Download Files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

File Name & Checksum SHA256 Checksum Help Version File Type Upload Date
pyxserver-0.1.4.tar.gz (15.9 kB) Copy SHA256 Checksum SHA256 Source Aug 1, 2015

Supported By

WebFaction WebFaction Technical Writing Elastic Elastic Search Pingdom Pingdom Monitoring Dyn Dyn DNS Sentry Sentry Error Logging CloudAMQP CloudAMQP RabbitMQ Heroku Heroku PaaS Kabu Creative Kabu Creative UX & Design Fastly Fastly CDN DigiCert DigiCert EV Certificate Rackspace Rackspace Cloud Servers DreamHost DreamHost Log Hosting