App development

Great!, you’d like to develop an app for Ubuntu Touch. Here are some resources that we hope help you get started.

If you have questions that aren’t answered in the docs or want to chat with other Ubuntu Touch developers? Join our app dev Telegram group or chat with us on the UBports app dev forum.

Get started

Ubuntu Touch supports two kind of apps. Native apps are apps with interfaces made using QML or HTML with their behavior defined in JavaScript, C++, Python, Rust or Go. Web apps are special containers to run websites in.

Applications are shipped as a Click package and can be publicly shared on the official app store OpenStore

Tools

Clickable is a meta-build system for Ubuntu Touch applications that allows you to compile, build, test and publish click packages and provides various templates to get you started with app development. It is currently the easiest and most convenient way of building click packages for Ubuntu Touch. You can use any code editor or IDE that you choose and build your apps from the commandline with Clickable.

Alternatively there is the old Ubuntu SDK IDE. Be aware that it is no longer supported by Canonical, and UBports has chosen to not support it either due to lack of manpower.

You can still install the SDK IDE in Ubuntu 16.04, but it is not guaranteed to work correctly. You can use the following commands to install:

sudo add-apt-repository ppa:ubuntu-sdk-team/ppa
sudo apt update && sudo apt dist-upgrade
sudo apt install ubuntu-sdk
sudo reboot # or logout/login

Publishing

After you are done building your app, distribute it on the OpenStore with our Publishing guides.

Documentation

It is possible to develop cross-platform apps that don’t depend on Ubuntu specific APIs, although this is not the official way of developing apps for Ubuntu Touch. If running on other operating systems is an requirement for your app, you can refer to this APIs instead:

Sample apps

Learn more about app development by digging into our Sample apps.

Preinstalled apps

The Preinstalled apps page has information on developing the apps which are included with Ubuntu Touch.