Python driver for H2O Q / Telesync Realtime Apps
Project description
Telesync is a lightweight library for programming interactive web applications entirely in Python (no HTML/Javascript/CSS) required.
It is designed to make it fast, fun and easy to build low-latency, realtime, collaborative, web-based applications. It ships batteries-included with a suite of form and data visualization components for rapidly prototyping analytical and decision-support applications.
Telesync’s components work in conjunction with the Telesync relay server that facilitates realtime state synchronization between Python and web browsers.
The Telesync relay server is built into H2O.ai Q for enterprise-grade hosting.
Installing
Install and update using pip:
pip install -U telesync
Hello world
hello.py:
from telesync import site, ui
# Access the web page at http://localhost:55555/demo
page = site['/demo']
# Add some content.
page['example'] = ui.markdown_card(
box='1 1 2 2',
title='Hello World!',
content='And now for something completely different.',
)
# Save the page
page.save()
Run hello.py:
$ python hello.py
Links
Website: https://www.h2o.ai/h2o-q/
Releases: https://pypi.org/project/telesync/
Issue tracker: https://github.com/h2oai/telesync/issues
Change Log
- v0.0.7
- Added
Download API: q.download().
Vega-lite support: ui.vega_card().
Context menu support to all cards.
refresh attribute on meta_card allows static pages to stop receiving live updates.
Passing -debug when starting server displays site stats at /_d/site.
Drag and drop support for file upload component.
Template expression support for markdown cards.
All APIs and examples documented.
All 110 examples now ship with the Sphinx documentation.
Documentation now ships with release download.
- Changed
API consistency: ui.vis() renamed to ui.plot().
All stats cards now have descriptive names.
API consistency: ui.mark.mark renamed to ui.mark.type.
API consistency: page.sync() and page.push() renamed to page.save().
- Removed
ui.dashboard_card() and ui.notebook_card().
- v0.0.6
- Added
Log network traffic when logging is set to debug mode.
Capture and display unhandled exceptions on the UI.
Routing using location hash.
Toolbar component.
Tabs component.
Nav component.
Upload API: q.upload().
- Changed
q.session renamed to q.user
- v0.0.5
- Added
Add configure() API to configure environment before launching.
- v0.0.4
- Added
Multi-user and multi-client support: launch apps in multicast or unicast modes in addition to broadcast mode.
Client-specific data can now be stored and accessed via q.client, similar to q.session and q.app.
Simpler page referencing: import site can be used instead of site = Site().
- Changed
Apps now lauch in unicast mode by default instead of broadcast mode.
- v0.0.3
- Added
Make Expando data structure available for apps.
- v0.0.2
Initial version
- v0.0.1
Package stub
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
File details
Details for the file telesync-0.0.7-py3-none-any.whl
.
File metadata
- Download URL: telesync-0.0.7-py3-none-any.whl
- Upload date:
- Size: 45.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.23.0 setuptools/46.4.0 requests-toolbelt/0.9.1 tqdm/4.46.0 CPython/3.8.2
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 480363776d1b93ac0091d180d830d3f74f7688f95e7d1c8468cf59ffccc24624 |
|
MD5 | b46f97d87efbae6b85799dee9016cce0 |
|
BLAKE2b-256 | 76ca4cded99002b5c2252aa982a09242e3d40bf745721f179b04288a37097a75 |