1
<link href="../css/markdown.css" rel="stylesheet"></link>
4
Nux is a UI toolkit. Since its inception, it has been using OpenGL as it only rendering API. The reason for OpenGL is that it would allow developers and designers to use the computing power and the programmable ability of GPU to create great user experiences.
6
# What can I do with it?
7
You can use Nux to create entire user interface experiences. For instance, Nux is used as the rendering API for Ubuntu Unity. It renders all the visual and uses advanced shader effects to bring beauty to the Ubuntu desktop.
9
![Unity](../images/unity.png)
11
For Unity, Nux had to be modified in order to be intergrated inside a Compiz plugin. In that use case, Nux does not cretae the rendering context. Instead it uses the rendering context created by Compiz. The integration of Nux inside a Compiz plugin made it possible to do fullscreen desktop effects.
13
Nux can also be uses as a standalone UI toolkit. Here is a screenshot of a custom UI element built with Nux.
14
![Unity](../images/color-controler.png)
17
# For UI development, what do I get out of the box?
19
Nux offers the usual widgets such as button, checkbox, ... It also offers a set of custom widgets meant for specific purpose.
20
With Nux you can create any widgets you like and they may look as unique as you want them to be. The regular widgets are fine for most tasks, but if you want to create a new type of interactive widget, you have the ability to do so and your are not limited by the the toolkit for the visual since you have access to the wealth of rendering capabilities of the GPU.
22
With access to the GPU, you can do any type of color blendings operaion and use programmable shaders for any type of visual effects. You can create unique UI visuals beyond the default set that is available in Nux.
25
![Unity](../images/frosted-glass.png "An effect development tool build entirely with Nux.")
27
# How does it compare to Qt or Gtk
29
It doesn't. Nux focus is on creating and rendering complex user interface with OpenGL while Qt and Gtk provided a complete development platform for applications. Nux however uses the Gnome tools and libraries internally for this such as:
31
* Loading of images from disk (gdk)
32
* Rendering images with cairo
33
* Text rendering (pango/cairo)
35
* Video playback (gstreamer)
37
# What are some of key technical details?
39
* Nux is written in C++ and uses Autotools
40
* Nux requires support for openGL 1.4 (preferably OpenGL 2.0)
41
* It is ready for OpenGL ES
42
* It uses Gnome libraries internaly (text rendering, cairo...)
43
* It is made of 3 libraries (as of Nux 3.0):
48
# Where is the repository?
49
You can find nux on launchpad at **[lp:nux](https://launchpad.net/nux)**. Nux is also shipped by default with Ubuntu.
51
# Are there any examples or demo to try?
52
You can finde a set of sample programs on launchpad at **[lp:nuxplayground](https://launchpad.net/nuxplayground)**
1
<link href="../css/markdown.css" rel="stylesheet"></link>
4
Nux is a UI toolkit. Since its inception, it has been using OpenGL as it only rendering API. The reason for OpenGL is that it would allow developers and designers to use the computing power and the programmable ability of GPU to create great user experiences.
6
# What can I do with it?
7
You can use Nux to create entire user interface experiences. For instance, Nux is used as the rendering API for Ubuntu Unity. It renders all the visual and uses advanced shader effects to bring beauty to the Ubuntu desktop.
9
![Unity](../images/unity.png)
11
For Unity, Nux had to be modified in order to be intergrated inside a Compiz plugin. In that use case, Nux does not cretae the rendering context. Instead it uses the rendering context created by Compiz. The integration of Nux inside a Compiz plugin made it possible to do fullscreen desktop effects.
13
Nux can also be uses as a standalone UI toolkit. Here is a screenshot of a custom UI element built with Nux.
14
![Unity](../images/color-controler.png)
17
# For UI development, what do I get out of the box?
19
Nux offers the usual widgets such as button, checkbox, ... It also offers a set of custom widgets meant for specific purpose.
20
With Nux you can create any widgets you like and they may look as unique as you want them to be. The regular widgets are fine for most tasks, but if you want to create a new type of interactive widget, you have the ability to do so and your are not limited by the the toolkit for the visual since you have access to the wealth of rendering capabilities of the GPU.
22
With access to the GPU, you can do any type of color blendings operaion and use programmable shaders for any type of visual effects. You can create unique UI visuals beyond the default set that is available in Nux.
25
![Unity](../images/frosted-glass.png "An effect development tool build entirely with Nux.")
27
# How does it compare to Qt or Gtk
29
It doesn't. Nux focus is on creating and rendering complex user interface with OpenGL while Qt and Gtk provided a complete development platform for applications. Nux however uses the Gnome tools and libraries internally for this such as:
31
* Loading of images from disk (gdk)
32
* Rendering images with cairo
33
* Text rendering (pango/cairo)
35
* Video playback (gstreamer)
37
# What are some of key technical details?
39
* Nux is written in C++ and uses Autotools
40
* Nux requires support for openGL 1.4 (preferably OpenGL 2.0)
41
* It is ready for OpenGL ES
42
* It uses Gnome libraries internaly (text rendering, cairo...)
43
* It is made of 3 libraries (as of Nux 3.0):
48
# Where is the repository?
49
You can find nux on launchpad at **[lp:nux](https://launchpad.net/nux)**. Nux is also shipped by default with Ubuntu.
51
# Are there any examples or demo to try?
52
You can finde a set of sample programs on launchpad at **[lp:nuxplayground](https://launchpad.net/nuxplayground)**