The Client Exchange Layer (CEL) is a hypermedia-driven terminal program framework. It runs applications defined in XML, with styling, behaviour and layout all closely co-located. Client-side scripting is done via a flat-scoped Lua sandbox.

CEL programs can run locally, using the built-in HTTP server binary, or any HTTP 1.1 capable web-server host. Most applications can run in all 3 modes without changes.

Example application