Developer Information

Please note: This is an early draft, and the authoring person is not a developer, so take the following with a grain of salt. Feedback and MRs are most welcome.

Tutorials

Plasma Mobile ecosystem

Phosh/GNOME on Mobile ecosystem

Generic Linux app development resources

Templates (as a starting point for app development)

GTK3/GTK4 apps

Hardware specs to consider

In order to reach a good rating it‘s important to consider the screen size and resolution when designing the app UI:

PhonePixelsPoints1
PinePhone (Pro)720 × 1440360 × 720
Librem 5720 × 1440360 × 720
Moto G4 Play720 × 1280360 × 640
OnePlus 61080 × 2280360 × 760
Xiaomi Poco F11080 × 2246360 × 752
Shift 6mq1080 × 2160360 × 720
Fairphone 51224 × 2700408 × 900 2

When landscape use and the mobile shell's own UI are also considered, this leads to a recommended dimension of 360×294px in GNOME's HIG for a fully mobile compliant app.3

By using nested Phosh for app development, you can check how your app fits a mobile screen without owning or having to use a mobile device.

Finding a project

If you have time on your hands, but don't have an idea (and looking through the app list has not helped you with coming up with what is not there nor inspired you to help out a listed project), you could do the following:

  • Pick up an existing project that's

    and go ahead and revive it!

  • Make adjustments to an app that mostly works, but does not really fit the screen and thus has a mobile compatibility rating of

If you rather want to start your own project, maybe the Wishlist on the Mobian Wiki can be a source of inspiration. If that's not it, maybe go through related subreddits, or the PINE64 or Purism forums to find out what people are longing for.

When it you have something that works and want others to use or try it

Don't forget to add appstream metadata! The Appstream MetaInfo Creator makes this easy! For extra credit, check the Appstream docs.

Tag a release! Otherwise, your app is unlikely to land in distributions (beyond, maybe, the AUR or NixOS).

Make it easy to try - by publishing it, e.g., on flathub.org, or, if you don't feel ready for that, by fulfilling parts of the requirements by putting a working flatpak manifest in your repository.

Mobile App Testing

If you don't have a device, get in touch by opening an issue or sending an email to our discuss list: https://lists.sr.ht/~linuxphoneapps/linuxphoneapps.org-discuss

1

Points at default scaling of 2x on low-end devices, and 3x on Snapdragon 845 devices. Fortunately, all phones with good mobile Linux support default to a width of 360 points.i

2

Assuming 300% scaling, the Fairphone 5 unfortunately does not fit the 'standard' 360 point/pixels schema. At 340% scaling, it would come in at 360 × 794 points - at the price of the issues fractional scaling brings.

3

That said, few of our 5/5 rated apps actually fulfill the landscape criterion.

Edit this page on Framagit