The lightning-fast asyncio server.
Project description
<p align="center">
<img width="320" height="320" src="https://raw.githubusercontent.com/tomchristie/uvicorn/master/docs/uvicorn.png" alt='uvicorn'>
</p>
<p align="center">
<em>The lightning-fast ASGI server.</em>
</p>
---
[![Build Status](https://travis-ci.org/encode/uvicorn.svg?branch=master)](https://travis-ci.org/encode/uvicorn)
[![Package version](https://badge.fury.io/py/uvicorn.svg)](https://pypi.python.org/pypi/uvicorn)
**Documentation**: [http://www.uvicorn.org](http://www.uvicorn.org)
**Requirements**: Python 3.5.3+
Uvicorn is a lightning-fast ASGI server implementation, using [uvloop][uvloop] and [httptools][httptools].
Until recently Python has lacked a minimal low-level server/application interface for
asyncio frameworks. The [ASGI specification][asgi] fills this gap, and means we're now able to
start building a common set of tooling usable across all asyncio frameworks.
Uvicorn currently supports HTTP/1.1 and WebSockets. Support for HTTP/2 is planned.
## Quickstart
Install using `pip`:
```shell
$ pip install uvicorn
```
Create an application, in `app.py`:
```python
class App():
def __init__(self, scope):
self.scope = scope
async def __call__(self, receive, send):
await send({
'type': 'http.response.start',
'status': 200,
'headers': [
[b'content-type', b'text/plain'],
],
})
await send({
'type': 'http.response.body',
'body': 'Hello, world!',
})
```
Run the server:
```shell
$ uvicorn app:App
```
---
<p align="center"><i>Uvicorn is <a href="https://github.com/encode/uvicorn/blob/master/LICENSE.md">BSD licensed</a> code.<br/>Designed & built in Brighton, England.</i><br/>— 🦄 —</p>
[uvloop]: https://github.com/MagicStack/uvloop
[httptools]: https://github.com/MagicStack/httptools
[asgi]: https://github.com/django/asgiref/blob/master/specs/asgi.rst
<img width="320" height="320" src="https://raw.githubusercontent.com/tomchristie/uvicorn/master/docs/uvicorn.png" alt='uvicorn'>
</p>
<p align="center">
<em>The lightning-fast ASGI server.</em>
</p>
---
[![Build Status](https://travis-ci.org/encode/uvicorn.svg?branch=master)](https://travis-ci.org/encode/uvicorn)
[![Package version](https://badge.fury.io/py/uvicorn.svg)](https://pypi.python.org/pypi/uvicorn)
**Documentation**: [http://www.uvicorn.org](http://www.uvicorn.org)
**Requirements**: Python 3.5.3+
Uvicorn is a lightning-fast ASGI server implementation, using [uvloop][uvloop] and [httptools][httptools].
Until recently Python has lacked a minimal low-level server/application interface for
asyncio frameworks. The [ASGI specification][asgi] fills this gap, and means we're now able to
start building a common set of tooling usable across all asyncio frameworks.
Uvicorn currently supports HTTP/1.1 and WebSockets. Support for HTTP/2 is planned.
## Quickstart
Install using `pip`:
```shell
$ pip install uvicorn
```
Create an application, in `app.py`:
```python
class App():
def __init__(self, scope):
self.scope = scope
async def __call__(self, receive, send):
await send({
'type': 'http.response.start',
'status': 200,
'headers': [
[b'content-type', b'text/plain'],
],
})
await send({
'type': 'http.response.body',
'body': 'Hello, world!',
})
```
Run the server:
```shell
$ uvicorn app:App
```
---
<p align="center"><i>Uvicorn is <a href="https://github.com/encode/uvicorn/blob/master/LICENSE.md">BSD licensed</a> code.<br/>Designed & built in Brighton, England.</i><br/>— 🦄 —</p>
[uvloop]: https://github.com/MagicStack/uvloop
[httptools]: https://github.com/MagicStack/httptools
[asgi]: https://github.com/django/asgiref/blob/master/specs/asgi.rst
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
uvicorn-0.2.0.tar.gz
(10.3 kB
view details)
File details
Details for the file uvicorn-0.2.0.tar.gz
.
File metadata
- Download URL: uvicorn-0.2.0.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 21375ade27403e465f8a52d538bb2017a4158c2af1a654de44511bfdf112a015 |
|
MD5 | d8d35bdc4b59fb1df8df95f6eb915aba |
|
BLAKE2b-256 | c7a792333ff7e11f703af974485247ae1231bed96d3e9b8e5a48f4009d985761 |