Interest is a event-driven web framework on top of aiohttp/asyncio.
Project description
# Interest
[![Travis](https://img.shields.io/travis/inventive-ninja/interest.svg)](https://travis-ci.org/inventive-ninja/interest)
[![Coveralls](http://img.shields.io/coveralls/inventive-ninja/interest.svg?branch=master)](https://coveralls.io/r/inventive-ninja/interest?branch=master)
Event-driven web framework on top of aiohttp/asyncio.
## Features
- event-driven on top of aiohttp/asyncio
- consistent, modular and flexible flow model, class-based
- configurable and pluggable
## Example
Install interest package:
```
$ pip install interest
```
Save the following code as `server.py`:
```python
# server.py
from interest import Service, http
class Service(Service):
# Public
@http.get('/')
def hello(self, request):
return http.Response(text='Hello World!')
# Listen forever
service = Service()
service.listen(host='127.0.0.1', port=9000, override=True, forever=True)
```
Run the server in the terminal and use another to interact:
```
$ python server.py
...
$ curl -X GET http://127.0.0.1:9000/; echo
Hello World!
...
```
## Read more
Please visit Interest's developer hub to get docs, news and support:
[Developer Hub](https://interest.readme.io/)
## Contributing
Please read the contribution guideline:
[How to Contribute](CONTRIBUTING.md)
Thanks!
[![Travis](https://img.shields.io/travis/inventive-ninja/interest.svg)](https://travis-ci.org/inventive-ninja/interest)
[![Coveralls](http://img.shields.io/coveralls/inventive-ninja/interest.svg?branch=master)](https://coveralls.io/r/inventive-ninja/interest?branch=master)
Event-driven web framework on top of aiohttp/asyncio.
## Features
- event-driven on top of aiohttp/asyncio
- consistent, modular and flexible flow model, class-based
- configurable and pluggable
## Example
Install interest package:
```
$ pip install interest
```
Save the following code as `server.py`:
```python
# server.py
from interest import Service, http
class Service(Service):
# Public
@http.get('/')
def hello(self, request):
return http.Response(text='Hello World!')
# Listen forever
service = Service()
service.listen(host='127.0.0.1', port=9000, override=True, forever=True)
```
Run the server in the terminal and use another to interact:
```
$ python server.py
...
$ curl -X GET http://127.0.0.1:9000/; echo
Hello World!
...
```
## Read more
Please visit Interest's developer hub to get docs, news and support:
[Developer Hub](https://interest.readme.io/)
## Contributing
Please read the contribution guideline:
[How to Contribute](CONTRIBUTING.md)
Thanks!
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
interest-0.0.1.tar.gz
(20.7 kB
view details)
Built Distribution
interest-0.0.1-py3-none-any.whl
(33.2 kB
view details)
File details
Details for the file interest-0.0.1.tar.gz
.
File metadata
- Download URL: interest-0.0.1.tar.gz
- Upload date:
- Size: 20.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2b2e9b2ac0178d2965da0c2c9ac2e01450f5910427b01b863d39dc51e1efb99 |
|
MD5 | 4ee426093c85d7dc7dd1aba7d8135605 |
|
BLAKE2b-256 | ec42795c82aeb42887e9b71b2e4e1121c5f27d490fb8c7a45da0de6712bf8970 |
File details
Details for the file interest-0.0.1-py3-none-any.whl
.
File metadata
- Download URL: interest-0.0.1-py3-none-any.whl
- Upload date:
- Size: 33.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ee674a0a0964150fa8ad491230f9692467ae080e82f2b4208e51b084c965b1d |
|
MD5 | d3270b2ab20761fc42fb2d41b41e09eb |
|
BLAKE2b-256 | a1efeb992ae2ae996fb14b69a7d8aab8df0e41a2afbefc612082f92cf46c5c34 |