-
Notifications
You must be signed in to change notification settings - Fork 131
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge pull request #471 from ubports/app_dev
App dev
- Loading branch information
Showing
17 changed files
with
157 additions
and
111 deletions.
There are no files selected for viewing
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,21 +1,23 @@ | ||
Code Editor Integrations | ||
Code editor integrations | ||
======================== | ||
- Atom | ||
|
||
You can use clickable with the `Atom Editor <https://atom.io>`__ by installing the `atom-clickable-plugin <https://atom.io/packages/atom-clickable-plugin>`__. This provides some common clickable tools needed to build and run click packages for Ubuntu Touch from within Atom editor. | ||
* Atom | ||
|
||
- QtCreator | ||
You can use clickable with the `Atom Editor <https://atom.io>`__ by installing the `atom-clickable-plugin <https://atom.io/packages/atom-clickable-plugin>`__. | ||
Or you can simply run ``clickable ide atom`` in your project directory to launch an Atom editor instance on top of your docker image. | ||
This way you will have all Atom features - including the clickable plugin - available for you project. | ||
|
||
Available on top of clickable docker image, ``clickable ide qtcreator`` command within your project directory will launch a QtCreator instance and auto setup the project for you, you will have code completion and navigation for Ubuntu Touch components as well as run/debug facilities. | ||
* QtCreator | ||
|
||
Available on top of clickable docker image, ``clickable ide qtcreator`` command within your project directory will launch a QtCreator instance and auto setup the project for you, you will have code completion and navigation for Ubuntu Touch components as well as run/debug facilities. | ||
|
||
- Ubuntu SDK ( Unmaintained ) | ||
* Ubuntu SDK ( Unmaintained ) | ||
|
||
Alternatively there is the old `Ubuntu SDK IDE <https://docs.ubuntu.com/phone/en/platform/sdk>`__. Be aware that it is no longer supported by Canonical, and UBports has chosen to not support it either due to lack of manpower. | ||
Alternatively there is the old `Ubuntu SDK IDE <https://docs.ubuntu.com/phone/en/platform/sdk>`__. 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:: | ||
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 | ||
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 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,12 +1,22 @@ | ||
Documentation | ||
============= | ||
API docs | ||
======== | ||
|
||
In this section you find the various APIs you can use to develop Ubuntu Touch apps. | ||
|
||
Firstly there are the QML and HTML APIs that you can use for the front end: | ||
|
||
* `QML API <https://api-docs.ubports.com/sdk/apps/qml/index.html>`__ | ||
* `All 5.12 QML types <https://doc.qt.io/qt-5.12/qmltypes.html>`__ | ||
* `Cordova HTML5 API <https://api-docs.ubports.com/sdk/apps/html5/index.html>`__ | ||
* `Clickable <http://clickable.bhdouglass.com/en/latest/>`__ | ||
* `Suru Icons <http://docs.ubports.com/projects/icons/en/latest/>`__ | ||
|
||
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: | ||
Secondly, the platform documentation describes how to integrate your app into the system: | ||
|
||
.. toctree:: | ||
:maxdepth: 1 | ||
|
||
platform/index | ||
|
||
Thirdly, 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 a requirement for your app, you can refer to these APIs instead: | ||
|
||
* `Kirigami API <https://api.kde.org/frameworks/kirigami/html/>`__ | ||
* `Qt Quick Controls 2 API <https://doc.qt.io/qt-5/qtquickcontrols-index.html>`__ |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,19 +1,68 @@ | ||
App development | ||
=============== | ||
|
||
Great!, you'd like to develop an app for Ubuntu Touch. Here are some resources that we hope help you get started. | ||
You'd like to develop an app for Ubuntu Touch? Great! | ||
|
||
.. figure:: /_static/images/appdev/applist.jpg | ||
|
||
Quick start | ||
----------- | ||
|
||
Building your first app should be as simple as: | ||
|
||
* `Install clickable <https://clickable-ut.dev/en/latest/install.html>`_ | ||
* Plug in your Ubuntu Touch device | ||
* Enable developer mode in System Settings | ||
* Run ``clickable create`` | ||
* Choose "QML Only" from the list of app templates | ||
* Fill in the requested information for this new app | ||
* When the app has been generated, enter the newly created directory | ||
* Run ``clickable`` | ||
|
||
Voilà you have your first app running on Ubuntu Touch! | ||
|
||
Overview | ||
-------- | ||
|
||
Ubuntu Touch supports two kinds of apps: Firstly, *native apps* have their user interface written in QML or HTML and their business logic in JavaScript, C++, Python, Rust, or Go. Secondly, *web apps* are special containers to run websites in. | ||
|
||
.. toctree:: | ||
:maxdepth: 1 | ||
:name: toc-app-types | ||
|
||
nativeapp/index | ||
webapp/index | ||
|
||
The following sections provide guides and API documentation. | ||
|
||
`Clickable <https://clickable-ut.dev>`_ is the main tool to build apps on Ubuntu Touch. It is an easy to use command line tool with a lot of great features. Clickable allows you to compile, build, test, and publish your app. It also provides various templates to get you started with app development. | ||
|
||
You can use any code editor or IDE to work on the code. Then you build your app from the command line with Clickable. | ||
|
||
.. figure:: /_static/images/appdev/appdev_desktop.png | ||
|
||
Applications are shipped as a :ref:`click <click>` package and can be published on the official app store `OpenStore <https://open-store.io>`__. Note also that most apps in the OpenStore are open source and can serve as references and inspiration. | ||
|
||
References and guides | ||
--------------------- | ||
|
||
.. toctree:: | ||
:maxdepth: 1 | ||
:name: toc-app-dev | ||
|
||
getting-started | ||
code-editor | ||
guides/index | ||
publishing/index | ||
external-docs | ||
platform/index | ||
samples/index | ||
/contribute/preinstalled-apps | ||
|
||
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 <https://t.me/UbuntuAppDevEN>`_ or chat with us on the `UBports app dev forum <https://forums.ubports.com/category/35/app-development>`_. | ||
This is a helpful and welcoming community and everything works better in teamwork! | ||
Looking for other developers that might want to collaborate with you on your app? | ||
Have questions that aren’t answered in the docs or want to chat with other Ubuntu Touch developers? | ||
Join our `UBports UT App Dev Telegram group <https://t.me/UbuntuAppDevEN>`_ or chat with us on the `UBports App Development forum <https://forums.ubports.com/category/35/app-development>`_! | ||
You can also check out our list of :ref:`preinstalled apps <preinstalledapps>`. Contributions to those are greatly appreciated and directly reach a larger audience. | ||
|
||
Maintainers wanted | ||
------------------ | ||
|
||
All apps love contributions. But some core apps are lacking maintainers. Please check the `list of core apps <https://github.com/ubports/ubuntu-touch/blob/master/CORE_APPS.md>`_ and see if you want to step up as new maintainer for one of our core apps. The maintainer reviews MR's, triages and investigates issue reports and helps to develop the app. | ||
|
||
The best way to start is by making some contributions and let the reviewers know that you are interested. Or join our matrix group at `#ubcd:matrix.org <https://matrix.to/#/#ubcd:matrix.org>`_ and introduce yourself. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,14 +1,15 @@ | ||
.. _nativeapp: | ||
|
||
Native applications | ||
=================== | ||
Native apps | ||
=========== | ||
|
||
The recommended way to build a native application on Ubuntu Touch is to use the `Qt <https://doc.qt.io/>`__ framework ( current version since OTA-16 is Qt 5.12.9 ). | ||
The recommended way to build a native application on Ubuntu Touch is to use the `Qt <https://doc.qt.io/>`__ framework | ||
(current version since OTA-16 is Qt 5.12.9). | ||
You do not have to stick with the traditional C++<->QML Qt model, you can use also Python, Go, Rust or even Javascript for your backend. | ||
|
||
Ubuntu Touch provides a subset of Qt QML components to ease the development of your app : `QML API <https://api-docs.ubports.com/sdk/apps/qml/index.html>`__ | ||
Ubuntu Touch provides a subset of Qt QML components to ease the development of your app : `QML API <https://api-docs.ubports.com/sdk/apps/qml/index.html>`__ | ||
and Icons: `Suru Icons <http://docs.ubports.com/projects/icons/en/latest/>`__, but you can also ship your cross platform app using standard Qt QML QtQuick2 components. | ||
|
||
You can use `Clickable <http://clickable.bhdouglass.com/en/latest/>`_ to facilitate Packaging, deploying, publishing and tests . | ||
|
||
Check out informations about the platform and confinement model in :ref:`Platform <platform>` section | ||
Check out informations about the platform and confinement model in :ref:`Platform <platform>` section |
This file was deleted.
Oops, something went wrong.
This file was deleted.
Oops, something went wrong.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
Guide | ||
===== | ||
Webapp guide | ||
============ | ||
|
||
How the webapp fits into the shell | ||
---------------------------------- | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.