An Enaml application consists of regular Python code, and .enaml files.
A .enaml file describes a GUI as a tree of elements. Each element has associated attributes and an optional identifier. Attributes customize the layout and behaviour of an application, and identifiers allow Python code to access widgets by name.
Enaml parses a hierarchical file (.enaml), then renders it with an available GUI toolkit. Enaml abstracts away toolkit-specific details.
The goals of the Enaml project are to:
Enaml is developed using Python 2.7 and requires recent (2012-current) versions of the following libraries:
Required:
Optional:
To install the package please check out the source from github
Then install with:
python setup.py install
Alternatively you can work in developing mode:
python setup.py develop
Enaml ships with optional high performance C++ extensions. To build them, an enviroment variable must be set before running setup.py
On Windows:
set BUILD_ENAML_EXTENSIONS=1
On OSX or Linux:
export BUILD_ENAML_EXTENSIONS=1