Skip to content
Async Web framework based on Tulip/asyncio
Python
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
examples
sockjstest
tests
vase
.gitignore
.travis.yml
LICENSE.md
README.rst
runtests.py
setup.py

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()
You can’t perform that action at this time.