Async Web framework based on Tulip/asyncio
Python
Switch branches/tags
Nothing to show
Clone or download
Latest commit 9363286 Aug 12, 2014

README.rst

Vase is a webframework for Tulip/asyncio

https://secure.travis-ci.org/vkryachko/Vase.png

Inspired by Flask It currently has a basic HTTP interface and WebSocket support. A demo websocket app is available here http://vase-chat.herokuapp.com/

Sample echo app

from vase import Vase

app = Vase(__name__)


@app.route(path="/")
def hello(request):
    return "Hello Vase!"


@app.endpoint(path="/ws/echo")
class EchoEndpoint:
    """
    WebSocket endpoint
    Has the following attributes:
    `bag` - a dictionary that is shared between all instances of this endpoint
    `transport` - used to send messages into the websocket, has send(message), close() methods
    """
    def on_connect(self):
        self.transport.send("You are successfully connected")

    def on_message(self, message):
        self.transport.send(message)

    def on_close(self, exc=None):
        print("Connection closed")

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