Skip to main content

Jigna

Travis-CI build status Appveyor build status Codecov status Documentation Status

Jigna is a bridge between Traits and the HTML world to provide a UI toolkit for traits models based on the powerful technologies of HTML, CSS and Javascript.

It provides two-way data bindings between the traits model and the HTML interface i.e. traits notifications automatically update the HTML UI and user inputs on the UI seamlessly change model attributes in Python. Jigna uses AngularJS (or Vue.js) for data bindings and one could think of it as an equivalent of AngularJS where the model lives in Python instead of Javascript. This gives us the power of Python and Traits for easily writing the application logic and the flexibility and expressibility of HTML for the user interface.

The HTML UI can be displayed both in the same Python process as well as remotely, allowing us to view and manipulate a Traits-based-object from the web.

Jigna can be used to create user interfaces in Qt using Qt’s webkit support or on a browser. One needs to have Qt (PySide or PyQt) installed if one wants a Qt based UI and requires tornado for a web-based UI.

With a web-based UI, the jigna dependencies are rather light requiring only traits, tornado, and a recent web browser.

Please note that Jigna currently is only tested with Qt4 and Qt5 support will be added later.

Installation

Jigna can be installed with pip:

$ pip install jigna

This will not pull in any Qt requirements but will require tornado as it is easy to install. The test requirements can be installed via:

$ pip install jigna[test]

This will install, PySide, nose, mock, coverage, and selenium if you do not already have them.

To install Jigna from the sources you may do the following:

git clone git@github.com:enthought/jigna.git
cd jigna
pip install -r requirements.txt
python setup.py install # or python setup.py develop

This does not include pyside or pyqt so you will have to install that as well.

Testing

To run the tests, you can simply do the following from the project’s root directory:

nosetests

You must make sure you have the required packages installed, and can install these via:

pip install -r requirements.txt

This does not install pyside since that is a heavy dependency. You may install it using your package manager or via pip.

Examples

There are several examples to play with in the examples directory. Each example demonstrates one particular feature of jigna. Start with the simplest one by running:

python ex1_simple_view.py

This requires Qt so if you are only interested in Web UI examples, you may run the following examples:

  • ex3_simple_view_web.py

  • ex7_model_updates_web.py

  • ex20_mayavi_webgl_demo.py – this requires Mayavi to be installed.

Release files for jigna 0.10.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 jigna 0.10.1
File Size Uploaded
jigna-0.10.1.tar.gz 2.2 MB Details

Built distribution (wheel)

Table of built distributions (wheels) for jigna 0.10.1
File Interpreter ABI Platform
jigna-0.10.1-py2-none-any.whl Python 2 none any Details

Total release size: 3.5 MB

Release files / jigna-0.10.1.tar.gz

Download URL jigna-0.10.1.tar.gz
Size 2.2 MB
Tags Source
SHA-256 checksum
How to use checksums
d07784b8c20c20599bd2af2c05a69b6a4e064ed2c68f075031393c49d007d4b8
BLAKE2b-256 checksum
How to use checksums
971e59d23f88d694a16ebbaeb3de9d704bb00bed73811825ade7c20aae6a3e84
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / jigna-0.10.1-py2-none-any.whl

Download URL jigna-0.10.1-py2-none-any.whl
Size 1.4 MB
Tags Python 2
SHA-256 checksum
How to use checksums
4808887aaf5d7da01bc0c580a18a90f53d70bf3791ab976f4889bf5dc9c492eb
BLAKE2b-256 checksum
How to use checksums
d108e85e5623163b0b37330e1d96ff84593a822182d5ff38f6d91c36c4497889
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.10.1 This release

2 release files

0.10.0

2 release files

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