Skip to content
A placeholder to tackle the FLOSS catalog standardization.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


A placeholder to tackle the FLOSS catalog standardization.

In the rest of the document, application will refer to Free and Libre Web Application. But you can also use it for the broad sense of software, and you can use the same solutions for the same problems.

Problem space

Application problem:

As a an application maintainer, I want to list service providers.

Hoster problem:

As a hoster, I want to list applications I host.

Current Solution space

Application solutions:

These are examples of catalog of service providers:

These are 5 examples among many on how to solve the problem. As you can see these solutions are customs, and not reusable by say, matrix which has to yet solve the problem one more time.

Hoster solutions

There is a really nice attempt to solve that with

A catalog of application, can also be called store.

Again, all these solutions are custom, and not really usable.

Proposed Solution

As you grasp the scale of the problem, now, let's dig deeper. What if WordPress wants to change the logo? Yes, it would mean that each store where there is a WordPress logo around the world has to be updated. As a hoster, I have the same issue, if I want to update my tagline, I have to go everywhere I am listed, and update it.

Let's use json-ld with Linked Data, on the official website of those objects, and get the metadata when needed.

Application Solution:

Let's take the example of mastodon. Indie.Host has an instance of mastodon. Yet, I have to go to to update the metadata of my instance.

We could imagine a mastodon admin interface to either:

  • fill metadata
  • link to my website where there would be the necessary json-ld.

Hoster Solution:

Let's PR main applications to add a json-ld with metadata used by yunohost (maybe the most advanced store so far.)

You can’t perform that action at this time.