elementary is a software platform; a unified computer operating system. We have a commitment to a particular toolkit (GTK+) and support a preferred programming language (Vala). We decide how our apps will behave. Sometimes we take control and shape the out-of-the-box experience as much as we possibly can by creating our own apps. We've created an application development framework (Granite) and other developer tools that are designed to help developers build apps specifically for our platform.
For More details,