Enaml: Pythonic, toolkit independent, declarative UIs
by Puneeth Chaganti (speaking)
Objective
The talk aims at introducing the audience to Enaml and help them get started with using Enaml and Traits for building GUI applications.
Description
Enaml is a DSL for writing platform independent, declarative UIs. In a model-view-controller world, Enaml makes it very easy to develop the view and controller. Typically, the model is built with Traits, but it's model is framework agnostic and provides hooks for using custom model frameworks.
The DSL is a strict superset of Python and provides a simple Pythonic syntax for declaring a UI that binds and reacts to changes in the models. Enaml is dynamically executed and it lets you bind to arbitrary Python expressions. It uses a constraint based layout system which makes it possible to have layouts that are not typically possible with traditional UI toolkits. Enaml also supports asynchronous UIs which allow one to have multiple UIs connecting to the same model running in the same process or out of process. This, in theory, opens up the possibility for a web-based UI to be used to control a model.
Speaker bio
Puneeth Chaganti is currently employed at Enthought and writes Python code for his bread and butter. He's not the author of Enaml, but has worked with it on a few small projects and is excited by and loves it's simplicity for developing GUIs.
1
▼
Hi, why not change this into a tutorial?
1
▼
Any URLs to know more about Enaml and Traits?
1
▼
This is a 20 minute demo of Enaml by the main author -- https://www.youtube.com/watch?v=ycFEwz_hAxk
1
▼
Enaml: www.github.com/enthought/enaml
Traits: http://code.enthought.com/projects/traits/
1
▼
Hi, since you are taking two dependent libraries and doing a demo, this looks more suitable for a tutorial.
1
▼
I don't intend to talk about Traits in any length. The whole talk is intended to be an overview of the possibilities of Enaml and getting people to try it. Also, we have already proposed a tutorial on traits.