[IPython-User] ANN: Exhibitionist - integrating HTML/JS UIs into interactive python work

yoval p. y-p@gmx....
Wed Mar 6 06:22:10 CST 2013


Hi Everyone,


I'm pleased to announce my new project, now available on Github,
called Exhibitionist, a library geared towards integrating HTML/JS
UIs into interactive python work.

There's a lot of experimentation going on in this space, This is my offering.
The proposed solutions I've seen so far all seem to stray in one way or another
from the beaten web-development track. Exhibitionist tries to do things
as closely as possible to the way they generally work in web development.

A short summary of the main points:

- data is exchanged using AJAX, your python objects become API
endpoints on an in-process web server.
- you can exchange messages between python and javascript, in either
direction, using websockets and a built-in PubSub implementation.
- no quoted code.
 that means, no "console.log('def myfunc():\nprint \"it\"'),
 nor 's += "console.log(\"you are quoting again...\")"'

 javascript lives in js files, python in .py, and HTML can be generated
 with your favorite template engine.
- Views are vanilla web application viewable in any browser, no IPython
 dependency for use or development.
- OTOH why wouldn't you want to use IPython-notebook's awesome inline HTML display?,
 works just like you'd expect.
- Repo contains serveral examples, including a heavily documented skeleton project
- Supported Python 2.6,2.7,3.1,3.2
- Tests, Coverage, tox, travis, yep.
- BSD licensed
- Currently Tested on linux only, you can help there.

The primary example included is a javascript grid UI for pandas Dataframes
that loads data on-demand via AJAX. a screenshot is available from the Github
project page.

Exhibitionist is built as a standalone library on top of Tornado (also
used by IPython), and it allows you to craft views either for 3rd party
library objects, but I also Imagine it as a primary dependency of libraries
in the pydata arena, that integrate HTML views as core functionality of
the library, allowing all it's users to work with rich views either
in a modern browser, or in IPython-notebook for the best UX.

Repo lives at: https://github.com/Exhibitionist/Exhibitionist

Please try it out, report any issues you find and provide feedback.
I hope you find it useful.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://mail.scipy.org/pipermail/ipython-user/attachments/20130306/90d06ef3/attachment.html 


More information about the IPython-User mailing list