Window Manager

Enlightenment started out way back in 1996 as a project to build a Window Manager for X11. It has grown much more since then. Enlightenment still produces this Window Manager, but it has evolved to also cover Mobile, Wearable and TV UI requirements for projects such as Tizen as well as the traditional “desktop” UI. We still push out releases. See our download page for more details on this. Visit our contribute page for our latest source code repositories. The project is currently transitioning from X11 to Wayland. We are fully committed to moving to Wayland eventually, as its the future of graphical display layers on Linux. We still primarily support Linux for Enlightenment, but there is some effort (based on help and support from users and some developers) to support BSD too.

Libraries

While developing the Window Manager, a set of libraries was also developed. These libraries are known collectively as EFL. They cover a range of functionality from main-loop, to graphics, scene graphs, networking, widgets, data storage, IPC and much more. We now are starting to pull in bindings support directly into EFL. We are working on auto-generated bindings for C++, Lua and Javascript (v8/node.js). We hope eventually to pull in our Python bindings too, so we can support as many languages as possible and keep them up to date. Our primary development environment is Linux, but we make an effort to support BSD as much as possible, as well as macOS and Windows.

Applications

We use our libraries not only to make Enlightenment but other applications for day to day use. We make these applications available for free. We have included common features such as a terminal emulator, video player, an image viewer, and even the makings of an IDE. Native Tizen applications are developed using EFL. This is because we've focused on remaining lean, yet feature-rich. Unlike many traditional toolkits, EFL is based around a scene graph from the ground up. This allows us to seamlessly switch from software rendering to OpenGL or any other mechanism that can be put in a render engine for Evas the canvas scene graph engine. This also permits layer widgets and objects with alpha channels from the ground up without any special coding tricks. This is by no means a complete list of applications and more are on the way. We may not have started the traditional way, but are building our library over time. Tizen also has a library of its own.

Thanks to