An important advantage that developers have when choosing the elementary platform is the ability to seamlessly integrate their application with the default desktop. Outlined below are the several ways in which you can make your application feel beyond native in elementary. This section will cover things like:
Creating an App Launcher. The primary method of discovering and using your app will be through an app launcher found in Slingshot or in the dock. This section details how to create these launchers. MIME handling. If your application can open and save files, place entries for those file types in the application database and the document type (MIME) database. This allows the file manager and other applications to automatically launch your application when they encounter files your application can handle.
Contractor. elementary provides an easy new way for applications to share files with each other. This will make your application more useful and extend its functionality without adding hundreds of lines of code.
Using System Indicators. elementary uses indicator applets in the panel that allow your application to provide persistent notifications. This section discusses not only how to use that area, but when it is or isn't appropriate to use it.
Integrating with the Dock. elementary ships with a great dock that supports the Unity Launcher API. This allows your application to provide notification badges, progress indicators, and more.