Super Fast HTTP2 Framework for Progressive Web Application
To install Hyper2Web, run this command in your terminal:
$ # due to a known issue, please install Curio manually
$ pip install git+https://github.com/dabeaz/curio.git
$ pip install hyper2webThis is the preferred method to install Hyper2Web, as it will always install the most recent stable release.
If you don't have pip installed, this Python installation guide can guide you through the process.
Python3.6
h2
curio
Assuming you have a directory structure like:
your project/ --public/ --index.html --index.js ... --app.py
Your app.py looks like
fromhyper2webimportappif__name__=='__main__':
# A basic callback style API is provided# Function name is up to youasyncdefpost_echo(request, response):
# Send the data received back to the clientawaitresponse.send(request.stream.data)
app=app.App(port=5000)
app.post('name', post_echo)
app.up()Then run this script
$ python app.pyThat's it!
If you just want to serve static files, it's just 2 lines!
fromhyper2webimportappapp.App(port=5000).up()Documentation is hosted on hyper2web.readthedocs.io.
See the example folders for examples.
$ python -m unittest discover testRun all tests under test/ dir.
April 23rd, 2017, Sunday, I woke up and felt bored and decided to create my own HTTP2 web framework.
Since I had little or some prior web knowledge, this would be a super learning and fun project for me.