Skip to main content

Tornado-sent events

An implementation of the publish/subscribe pattern for the Tornado web server.

Installation

Tornadose is on PyPI:

$ pip install tornadose

This will grab the latest official release. Alternatively, or for development, you can clone the repository and install it manually:

$ git clone https://github.com/mivade/tornadose.git
$ cd tornadose
$ pip install -e .

Usage

A simple example of using server-sent events (a.k.a. EventSource):

import random
from tornado.ioloop import IOLoop, PeriodicCallback
from tornado.web import Application
from tornadose.handlers import EventSource
from tornadose.stores import DataStore

store = DataStore()

app = Application(
    [(r'/', EventSource, {'store': store})],
    debug=True)
app.listen(9000)

loop = IOLoop.instance()
PeriodicCallback(lambda: store.submit(random.random()), 1000).start()
loop.start()

To monitor the stream with curl:

$ curl http://localhost:9000

or with HTTPie:

$ http -S get localhost:9000

Additional demos can be found in the demos directory.

Contributing

Contributions, complaints, criticisms, and whatever else are welcome. The source code and issue tracker can be found on GitHub.

See also

Some other implementations of server-sent events with Tornado include:

License

Tornadose is freely available under the terms of the MIT license. See LICENSE for details.

Metadata

Release files for tornadose 0.4.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for tornadose 0.4.1
File Size Uploaded Provenance Actions
tornadose-0.4.1.tar.gz 5.5 kB Without provenance Details for tornadose-0.4.1.tar.gz

Built distribution (wheel)

Table of built distributions (wheels) for tornadose 0.4.1
File Interpreter ABI Platform Actions
tornadose-0.4.1-py2.py3-none-any.whl Python 3, Python 2 none any Details for tornadose-0.4.1-py2.py3-none-any.whl

Total release size: 13.5 kB

Release files / tornadose-0.4.1.tar.gz

Download URL tornadose-0.4.1.tar.gz
Size 5.5 kB
Tags Source
SHA-256 checksum
How to use checksums
8547a76fe6cb0ce5cb4a1ae26d60f199c23d952ef57fa84e3450ac2e328c2cff
BLAKE2b-256 checksum
How to use checksums
d98f645cd444b98f8cc248a6a7ac4d2b07b1b7e6be21decf82d390848dff2182
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / tornadose-0.4.1-py2.py3-none-any.whl

Download URL tornadose-0.4.1-py2.py3-none-any.whl
Size 8.0 kB
Tags Python 2 Python 3
SHA-256 checksum
How to use checksums
17bde7b944d27e6fbd5c5cc1356597579988f836bd78bda96240caa44fcdbde4
BLAKE2b-256 checksum
How to use checksums
875bb19b813522d27303f192994a9ac9adb44d718c0e76abe1c6b6e4c928829e
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for tornadose 0.4.1

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page