Flathub Designs

Allan Day edited this page Dec 14, 2016 · 2 revisions

All the designs on this page are tentative and are expected to evolve during development and testing.

There are a number additional features that are desirable but which have been omitted from the initial designs.

High-level notes

The designs are for two different front-end websites:

  • Flathub
    • A public build service - allows building and testing
    • Primary audience is developers, testers and enthusiasts
  • Flatpak Store
    • The public face of a centralized repository of apps; for users it provides details on how to get the store
    • Provides a management UI for developers who are distributing their apps in the store

The two sites are integrated, in that it is possible to publish a build to the store directly from the Flathub website. However, the management of builds that have been distributed, as well as analytics, is all done through the store.

Basic website stuff


Summary and application pages

The summary page provides an overview of a developer's applications and build configurations.


Build configurations, build pages, build tags

A build configuration is:

  • A specified set of Flatpak configuration files, including a manifest. These are required to be stored in a Git repository.
  • A series of builds that have been generated from those configuration files.
  • A repository containing the builds, which can be installed.

Build configurations belong to applications, and each application can have several of them.


User account settings


Flatpak Store

The mockups for the Flatpak Store are extremely minimal, and omit desirable features such as:

  • Ability to browse which apps are in the store
  • Developer console for uploading apps, viewing information about apps that have been published, etc