mirror of
https://github.com/kevinveenbirkenbach/computer-playbook.git
synced 2026-11-06 10:59:59 +00:00
Two of them lived inside docs/ next to the pages they render, which is why both had grown a __file__ upward walk to find the repository root, a sys.path insert to import from utils, and a nocheck for each. A generator parked among documents reads as documentation and drops out of the checks that apply to code. Moving them surfaced six real violations that the old location had hidden: yaml.safe_load instead of the shared cache, two uncached read_text calls, five hard-coded role paths instead of ROLE_FILE_META_SERVICES and ROLE_FILE_META_MCP, two make targets without an alias, and a requirement reference in code. All six are fixed at the root, none with a suppression, and both generators lose their project-root exemptions because a package supplies PROJECT_ROOT. cli/build/readme joins them so the three generators that write into docs/ sit together. A new lint keeps docs/ to .md, .html, .rst and .nocheck; it enumerates through git ls-files so untracked __pycache__ is not its business. Checked against HEAD, it names exactly the three .py files that moved. 026-unified-addon-syntax stated that the matrix generator stays under docs/requirements/. The lint makes that impossible, so the requirement now records where the generator actually lives. Verified: every one of the twelve modules under the new tree imports, no old module path survives anywhere in the repository, 482 lint tests and 1246 cli unit tests pass, and both generators run without drift. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
126 lines
95 KiB
Markdown
126 lines
95 KiB
Markdown
# 027 - Integration Matrix
|
|
|
|
> Generated by `make integration-matrix`. Do not edit by hand, edit the generator's `EDGES` map and re-run.
|
|
|
|
Companion artifact for [026-unified-addon-syntax.md](026-unified-addon-syntax.md).
|
|
Axes are the **entity names** of every `web-app-*` and `web-svc-*` role.
|
|
A cell marks whether the **row** role ships an addon/plugin that wires in the **column** role.
|
|
|
|
## Legend
|
|
|
|
| Symbol | Meaning |
|
|
|---|---|
|
|
| ☑️ | Already wired via an infinito-native service flag in the row role's `meta/services.yml` (group-gated). Links to that declaration. |
|
|
| ✅ | A verified upstream app↔app plugin exists but is not yet declared as an addon. Links to the plugin page. This is the backlog. |
|
|
| 🪙 | Integration exists but is gated behind a commercial / paid tier. |
|
|
| ❌ | No known integration to wire these two. |
|
|
| — | Same role (diagonal). |
|
|
|
|
Notes:
|
|
|
|
- The matrix is **directional**: the row hosts the plugin/flag. Bidirectional pairs (e.g. `nextcloud`↔`openproject`) carry a symbol in both cells, each linking to that side.
|
|
- ☑️ edges are derived automatically by scanning every role's `meta/services.yml` for integration service keys (`sso`→keycloak, `matomo`→matomo, `prometheus`→prometheus, `email`→mailu, `dashboard`, `css`, `logout`, `cdn`, `coturn`, `collabora`, `onlyoffice`, `libretranslate`, `litellm`). `ldap`/`redis`/`mariadb` map to `svc-db-*` roles that are off these axes and are not shown. The `litellm` column is the AI gateway surface of [036](036-native-ai-gateway-integration.md): the service key resolves to `svc-ai-litellm`, which is off-axis, so the edge is drawn to the `litellm` entity that fronts it.
|
|
- `→ keycloak` ☑️ cells are the central `sso` service; a ✅/🪙 on `→ keycloak` instead means a role-local OIDC/SAML addon path beyond the central service.
|
|
- Native ActivityPub federation between fediverse roles (`mastodon`, `peertube`, `pixelfed`, `funkwhale`, `mobilizon`, `bookwyrm`, `socialhome`) needs **no plugin** and is therefore not a ✅ edge unless an installable connector exists.
|
|
|
|
## Matrix
|
|
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
|
|
| **akaunting** | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-akaunting/meta/services.yml) | ❌ | **akaunting** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **akaunting** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-akaunting/meta/services.yml) | ❌ | ❌ | ❌ | **akaunting** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-akaunting/meta/services.yml) | ❌ | [☑️](../../roles/web-app-akaunting/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **akaunting** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **akaunting** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-akaunting/meta/services.yml) | **akaunting** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **akaunting** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-akaunting/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **akaunting** | [☑️](../../roles/web-app-akaunting/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **baserow** | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-baserow/meta/services.yml) | ❌ | **baserow** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **baserow** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [🪙](https://baserow.io/user-docs/configure-openid-connect-for-oauth-2-sso) | ❌ | ❌ | ❌ | **baserow** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-baserow/meta/services.yml) | ❌ | [☑️](../../roles/web-app-baserow/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **baserow** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **baserow** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-baserow/meta/services.yml) | **baserow** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **baserow** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-baserow/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **baserow** | [☑️](../../roles/web-app-baserow/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **bigbluebutton** | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | ❌ | **bigbluebutton** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bigbluebutton** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://docs.bigbluebutton.org/greenlight/v3/external-authentication/) | ❌ | ❌ | ❌ | **bigbluebutton** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | ❌ | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bigbluebutton** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bigbluebutton** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | **bigbluebutton** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bigbluebutton** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bigbluebutton** | [☑️](../../roles/web-app-bigbluebutton/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **bluesky** | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bluesky/meta/services.yml) | ❌ | **bluesky** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bluesky** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bluesky/meta/services.yml) | ❌ | ❌ | ❌ | **bluesky** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bluesky/meta/services.yml) | ❌ | [☑️](../../roles/web-app-bluesky/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bluesky** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bluesky** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bluesky/meta/services.yml) | **bluesky** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bluesky** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bluesky/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bluesky** | [☑️](../../roles/web-app-bluesky/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **bookwyrm** | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bookwyrm/meta/services.yml) | ❌ | **bookwyrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bookwyrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bookwyrm/meta/services.yml) | ❌ | ❌ | ❌ | **bookwyrm** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bookwyrm/meta/services.yml) | ❌ | [☑️](../../roles/web-app-bookwyrm/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bookwyrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bookwyrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bookwyrm/meta/services.yml) | **bookwyrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bookwyrm** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bookwyrm/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bookwyrm** | [☑️](../../roles/web-app-bookwyrm/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **bridgy-fed** | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | [☑️](../../roles/web-app-bridgy-fed/meta/services.yml) | ❌ | **bridgy-fed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bridgy-fed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bridgy-fed/meta/services.yml) | ❌ | ❌ | ❌ | **bridgy-fed** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bridgy-fed/meta/services.yml) | ❌ | [☑️](../../roles/web-app-bridgy-fed/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bridgy-fed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bridgy-fed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bridgy-fed/meta/services.yml) | **bridgy-fed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **bridgy-fed** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-bridgy-fed/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **bridgy-fed** | [☑️](../../roles/web-app-bridgy-fed/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | [☑️](../../roles/web-app-chess/meta/services.yml) | ❌ | **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-chess/meta/services.yml) | ❌ | ❌ | ❌ | **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-chess/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-chess/meta/services.yml) | **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **chess** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-chess/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **chess** | [☑️](../../roles/web-app-chess/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **confluence** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | [☑️](../../roles/web-app-confluence/meta/services.yml) | ❌ | **confluence** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **confluence** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-confluence/meta/services.yml) | ❌ | ❌ | ❌ | **confluence** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-confluence/meta/services.yml) | ❌ | [☑️](../../roles/web-app-confluence/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **confluence** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **confluence** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-confluence/meta/services.yml) | **confluence** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **confluence** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-confluence/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **confluence** | [☑️](../../roles/web-app-confluence/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **dashboard** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | **dashboard** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **dashboard** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-dashboard/meta/services.yml) | ❌ | ❌ | ❌ | **dashboard** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-dashboard/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **dashboard** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **dashboard** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-dashboard/meta/services.yml) | **dashboard** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **dashboard** | ❌ | ❌ | [☑️](../../roles/web-app-dashboard/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-dashboard/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **dashboard** | [☑️](../../roles/web-app-dashboard/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **decidim** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-decidim/meta/services.yml) | — | **decidim** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **decidim** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-decidim/meta/services.yml) | ❌ | ❌ | ❌ | **decidim** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-decidim/meta/services.yml) | ❌ | [☑️](../../roles/web-app-decidim/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **decidim** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **decidim** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-decidim/meta/services.yml) | **decidim** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **decidim** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-decidim/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **decidim** | [☑️](../../roles/web-app-decidim/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **discourse** | ❌ | ❌ | [✅](https://github.com/discourse/discourse-bbb) | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-discourse/meta/services.yml) | ❌ | **discourse** | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **discourse** | ❌ | ❌ | ❌ | ❌ | [✅](https://github.com/discourse/discourse-jitsi) | ❌ | [✅](https://github.com/discourse/discourse-openid-connect) | ❌ | ❌ | ❌ | **discourse** | [☑️](../../roles/web-app-discourse/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-discourse/meta/services.yml) | [✅](https://github.com/discourse/discourse-activity-pub) | [✅](https://github.com/discourse/discourse-matomo-analytics) | [✅](https://github.com/discourse/discourse-chat-integration) | [✅](https://github.com/discourse/discourse-chat-integration) | ❌ | ❌ | **discourse** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **discourse** | ❌ | [✅](https://github.com/discourse/discourse-ai) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://github.com/discourse/discourse-prometheus) | **discourse** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **discourse** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-discourse/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **discourse** | [☑️](../../roles/web-app-discourse/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **erpnext** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-erpnext/meta/services.yml) | ❌ | **erpnext** | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **erpnext** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://docs.frappe.io/framework/user/en/guides/integration/openid_connect_and_frappe_social_login) | ❌ | ❌ | ❌ | **erpnext** | ❌ | ❌ | ❌ | [✅](https://docs.frappe.io/erpnext/user/manual/en/setting-up-email-account) | ❌ | [☑️](../../roles/web-app-erpnext/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **erpnext** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **erpnext** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-erpnext/meta/services.yml) | **erpnext** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **erpnext** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-erpnext/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **erpnext** | [☑️](../../roles/web-app-erpnext/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **espocrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-espocrm/meta/services.yml) | ❌ | **espocrm** | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **espocrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://docs.espocrm.com/administration/oidc/) | ❌ | ❌ | ❌ | **espocrm** | ❌ | ❌ | ❌ | [✅](https://docs.espocrm.com/user-guide/imap-smtp-configuration/) | ❌ | [☑️](../../roles/web-app-espocrm/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **espocrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **espocrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-espocrm/meta/services.yml) | **espocrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **espocrm** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-espocrm/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **espocrm** | [☑️](../../roles/web-app-espocrm/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **fediwall** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fediwall/meta/services.yml) | ❌ | **fediwall** | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **fediwall** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fediwall/meta/services.yml) | ❌ | ❌ | ❌ | **fediwall** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fediwall/meta/services.yml) | ❌ | [☑️](../../roles/web-app-fediwall/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **fediwall** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **fediwall** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fediwall/meta/services.yml) | **fediwall** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **fediwall** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fediwall/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **fediwall** | [☑️](../../roles/web-app-fediwall/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **fider** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fider/meta/services.yml) | ❌ | **fider** | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | **fider** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fider/meta/services.yml) | ❌ | ❌ | ❌ | **fider** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fider/meta/services.yml) | ❌ | [☑️](../../roles/web-app-fider/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **fider** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **fider** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fider/meta/services.yml) | **fider** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **fider** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fider/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **fider** | [☑️](../../roles/web-app-fider/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **flowise** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-flowise/meta/services.yml) | ❌ | **flowise** | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | **flowise** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-flowise/meta/services.yml) | ❌ | ❌ | ❌ | **flowise** | [☑️](../../roles/web-app-flowise/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-flowise/meta/services.yml) | ❌ | [☑️](../../roles/web-app-flowise/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **flowise** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **flowise** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-flowise/meta/services.yml) | **flowise** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **flowise** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-flowise/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **flowise** | [☑️](../../roles/web-app-flowise/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **friendica** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-friendica/meta/services.yml) | ❌ | **friendica** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | **friendica** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-friendica/meta/services.yml) | ❌ | ❌ | ❌ | **friendica** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-friendica/meta/services.yml) | ❌ | [✅](https://github.com/friendica/friendica-addons) | ❌ | ❌ | ❌ | ❌ | **friendica** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **friendica** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-friendica/meta/services.yml) | **friendica** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **friendica** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-friendica/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **friendica** | [☑️](../../roles/web-app-friendica/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **funkwhale** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-funkwhale/meta/services.yml) | ❌ | **funkwhale** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | **funkwhale** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-funkwhale/meta/services.yml) | ❌ | ❌ | ❌ | **funkwhale** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-funkwhale/meta/services.yml) | ❌ | [☑️](../../roles/web-app-funkwhale/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **funkwhale** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **funkwhale** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-funkwhale/meta/services.yml) | **funkwhale** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **funkwhale** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-funkwhale/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **funkwhale** | [☑️](../../roles/web-app-funkwhale/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **fusiondirectory** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fusiondirectory/meta/services.yml) | ❌ | **fusiondirectory** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | **fusiondirectory** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fusiondirectory/meta/services.yml) | ❌ | ❌ | ❌ | **fusiondirectory** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fusiondirectory/meta/services.yml) | ❌ | [☑️](../../roles/web-app-fusiondirectory/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **fusiondirectory** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **fusiondirectory** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fusiondirectory/meta/services.yml) | **fusiondirectory** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **fusiondirectory** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-fusiondirectory/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **fusiondirectory** | [☑️](../../roles/web-app-fusiondirectory/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **gitea** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitea/meta/services.yml) | ❌ | **gitea** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | **gitea** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitea/meta/services.yml) | ❌ | ❌ | ❌ | **gitea** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitea/meta/services.yml) | ❌ | [☑️](../../roles/web-app-gitea/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **gitea** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **gitea** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitea/meta/services.yml) | **gitea** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **gitea** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitea/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **gitea** | [☑️](../../roles/web-app-gitea/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **gitlab** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://docs.gitlab.com/user/project/integrations/confluence/) | [☑️](../../roles/web-app-gitlab/meta/services.yml) | ❌ | **gitlab** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **gitlab** | — | ❌ | [✅](https://docs.gitlab.com/integration/jenkins/) | [✅](https://docs.gitlab.com/integration/jira/) | ❌ | ❌ | [✅](https://docs.gitlab.com/integration/saml/) | ❌ | ❌ | ❌ | **gitlab** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitlab/meta/services.yml) | ❌ | [☑️](../../roles/web-app-gitlab/meta/services.yml) | [✅](https://docs.gitlab.com/user/project/integrations/matrix/) | [✅](https://docs.gitlab.com/user/project/integrations/mattermost_notifications/) | ❌ | ❌ | **gitlab** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **gitlab** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitlab/meta/services.yml) | **gitlab** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **gitlab** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-gitlab/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **gitlab** | [☑️](../../roles/web-app-gitlab/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **hugo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-hugo/meta/services.yml) | ❌ | **hugo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **hugo** | ❌ | — | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-hugo/meta/services.yml) | ❌ | ❌ | ❌ | **hugo** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-hugo/meta/services.yml) | ❌ | [☑️](../../roles/web-app-hugo/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **hugo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **hugo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-hugo/meta/services.yml) | **hugo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **hugo** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-hugo/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **hugo** | [☑️](../../roles/web-app-hugo/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **jenkins** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jenkins/meta/services.yml) | ❌ | **jenkins** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://plugins.jenkins.io/gitea/) | **jenkins** | [✅](https://plugins.jenkins.io/gitlab-plugin) | ❌ | — | ❌ | ❌ | ❌ | [✅](https://plugins.jenkins.io/oic-auth/) | ❌ | ❌ | ❌ | **jenkins** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jenkins/meta/services.yml) | ❌ | [✅](https://plugins.jenkins.io/mattermost/) | ❌ | ❌ | **jenkins** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jenkins** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://plugins.jenkins.io/prometheus) | **jenkins** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jenkins** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jenkins/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **jenkins** | [☑️](../../roles/web-app-jenkins/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **jira** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jira/meta/services.yml) | ❌ | **jira** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jira** | ❌ | ❌ | ❌ | — | ❌ | ❌ | [☑️](../../roles/web-app-jira/meta/services.yml) | ❌ | ❌ | ❌ | **jira** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jira/meta/services.yml) | ❌ | [☑️](../../roles/web-app-jira/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **jira** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jira** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jira/meta/services.yml) | **jira** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jira** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jira/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **jira** | [☑️](../../roles/web-app-jira/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **jitsi** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jitsi/meta/services.yml) | ❌ | **jitsi** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jitsi** | ❌ | ❌ | ❌ | ❌ | — | ❌ | [☑️](../../roles/web-app-jitsi/meta/services.yml) | ❌ | ❌ | ❌ | **jitsi** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jitsi/meta/services.yml) | ❌ | [☑️](../../roles/web-app-jitsi/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **jitsi** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jitsi** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jitsi/meta/services.yml) | **jitsi** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **jitsi** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-jitsi/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **jitsi** | [☑️](../../roles/web-app-jitsi/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **joomla** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-joomla/meta/services.yml) | ❌ | **joomla** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **joomla** | ❌ | ❌ | ❌ | ❌ | ❌ | — | [✅](../../roles/web-app-joomla/files/joomla-oidc-plugin/) | ❌ | ❌ | ❌ | **joomla** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-joomla/meta/services.yml) | ❌ | [✅](https://extensions.joomla.org/extension/itcs-matomo/) | ❌ | ❌ | ❌ | ❌ | **joomla** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **joomla** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-joomla/meta/services.yml) | **joomla** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **joomla** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-joomla/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **joomla** | [☑️](../../roles/web-app-joomla/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **keycloak** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-keycloak/meta/services.yml) | ❌ | **keycloak** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **keycloak** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | **keycloak** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-keycloak/meta/services.yml) | ❌ | [☑️](../../roles/web-app-keycloak/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **keycloak** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **keycloak** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-keycloak/meta/services.yml) | **keycloak** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **keycloak** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-keycloak/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **keycloak** | [☑️](../../roles/web-app-keycloak/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **kix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-kix/meta/services.yml) | ❌ | **kix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **kix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-kix/meta/services.yml) | — | ❌ | ❌ | **kix** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-kix/meta/services.yml) | ❌ | [☑️](../../roles/web-app-kix/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **kix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **kix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-kix/meta/services.yml) | **kix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **kix** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-kix/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **kix** | [☑️](../../roles/web-app-kix/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-lam/meta/services.yml) | ❌ | **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-lam/meta/services.yml) | ❌ | — | ❌ | **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-lam/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-lam/meta/services.yml) | **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **lam** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-lam/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **lam** | [☑️](../../roles/web-app-lam/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **listmonk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-listmonk/meta/services.yml) | ❌ | **listmonk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **listmonk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-listmonk/meta/services.yml) | ❌ | ❌ | — | **listmonk** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-listmonk/meta/services.yml) | ❌ | [☑️](../../roles/web-app-listmonk/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **listmonk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **listmonk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-listmonk/meta/services.yml) | **listmonk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **listmonk** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-listmonk/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **listmonk** | [☑️](../../roles/web-app-listmonk/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **litellm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-litellm/meta/services.yml) | ❌ | **litellm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **litellm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-litellm/meta/services.yml) | ❌ | ❌ | ❌ | **litellm** | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **litellm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **litellm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-litellm/meta/services.yml) | **litellm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **litellm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **litellm** | [☑️](../../roles/web-app-litellm/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **littlejs** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-littlejs/meta/services.yml) | ❌ | **littlejs** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **littlejs** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-littlejs/meta/services.yml) | ❌ | ❌ | ❌ | **littlejs** | ❌ | — | ❌ | [☑️](../../roles/web-app-littlejs/meta/services.yml) | ❌ | [☑️](../../roles/web-app-littlejs/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **littlejs** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **littlejs** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-littlejs/meta/services.yml) | **littlejs** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **littlejs** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-littlejs/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **littlejs** | [☑️](../../roles/web-app-littlejs/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **magento** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-magento/meta/services.yml) | ❌ | **magento** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **magento** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-magento/meta/services.yml) | ❌ | ❌ | ❌ | **magento** | ❌ | ❌ | — | [☑️](../../roles/web-app-magento/meta/services.yml) | ❌ | [☑️](../../roles/web-app-magento/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **magento** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **magento** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-magento/meta/services.yml) | **magento** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **magento** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-magento/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **magento** | [☑️](../../roles/web-app-magento/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **mailu** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mailu/meta/services.yml) | ❌ | **mailu** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mailu** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mailu/meta/services.yml) | ❌ | ❌ | ❌ | **mailu** | ❌ | ❌ | ❌ | — | ❌ | [☑️](../../roles/web-app-mailu/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mailu** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mailu** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mailu/meta/services.yml) | **mailu** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mailu** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mailu/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mailu** | [☑️](../../roles/web-app-mailu/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **mastodon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mastodon/meta/services.yml) | ❌ | **mastodon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mastodon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mastodon/meta/services.yml) | ❌ | ❌ | ❌ | **mastodon** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mastodon/meta/services.yml) | — | [☑️](../../roles/web-app-mastodon/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mastodon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mastodon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mastodon/meta/services.yml) | **mastodon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mastodon** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mastodon/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mastodon** | [☑️](../../roles/web-app-mastodon/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-matomo/meta/services.yml) | ❌ | **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-matomo/meta/services.yml) | ❌ | ❌ | ❌ | **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-matomo/meta/services.yml) | **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **matomo** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-matomo/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **matomo** | [☑️](../../roles/web-app-matomo/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **matrix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-matrix/meta/services.yml) | ❌ | **matrix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **matrix** | [✅](https://github.com/matrix-org/matrix-hookshot) | ❌ | ❌ | [✅](https://github.com/matrix-org/matrix-hookshot) | [✅](https://github.com/element-hq/element-web/blob/develop/docs/jitsi.md) | ❌ | [✅](https://matrix-org.github.io/synapse/latest/openid.html) | ❌ | ❌ | ❌ | **matrix** | [☑️](../../roles/web-app-matrix/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-matrix/meta/services.yml) | ❌ | [☑️](../../roles/web-app-matrix/meta/services.yml) | — | ❌ | ❌ | ❌ | **matrix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **matrix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://matrix-org.github.io/synapse/latest/metrics-howto.html) | **matrix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **matrix** | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-matrix/meta/services.yml) | [☑️](../../roles/web-app-matrix/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **matrix** | [☑️](../../roles/web-app-matrix/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **mattermost** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mattermost/meta/services.yml) | ❌ | **mattermost** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mattermost** | [✅](https://github.com/mattermost/mattermost-plugin-gitlab) | ❌ | [✅](https://github.com/mattermost/mattermost-plugin-jenkins) | [✅](https://github.com/mattermost/mattermost-plugin-jira) | [✅](https://github.com/mattermost-community/mattermost-plugin-jitsi) | ❌ | [🪙](https://docs.mattermost.com/administration-guide/onboard/sso-saml.html) | ❌ | ❌ | ❌ | **mattermost** | [☑️](../../roles/web-app-mattermost/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-mattermost/meta/services.yml) | ❌ | [☑️](../../roles/web-app-mattermost/meta/services.yml) | ❌ | — | ❌ | ❌ | **mattermost** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mattermost** | ❌ | [✅](https://github.com/mattermost/mattermost-plugin-agents) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://github.com/cpanato/mattermost-plugin-alertmanager) | **mattermost** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mattermost** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mattermost/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mattermost** | [☑️](../../roles/web-app-mattermost/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **mediawiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mediawiki/meta/services.yml) | ❌ | **mediawiki** | [✅](https://www.mediawiki.org/wiki/Extension:DiscourseSsoConsumer) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mediawiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://www.mediawiki.org/wiki/Extension:OpenID_Connect) | ❌ | ❌ | ❌ | **mediawiki** | [☑️](../../roles/web-app-mediawiki/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-mediawiki/meta/services.yml) | ❌ | [✅](https://www.mediawiki.org/wiki/Extension:Matomo) | ❌ | ❌ | — | ❌ | **mediawiki** | [✅](https://www.mediawiki.org/wiki/Extension:AWS) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mediawiki** | ❌ | [✅](https://www.mediawiki.org/wiki/Extension:AIEditingAssistant) | [✅](https://www.mediawiki.org/wiki/Extension:PeerTubeEmbed) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mediawiki/meta/services.yml) | **mediawiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mediawiki** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mediawiki/meta/services.yml) | ❌ | ❌ | ❌ | [✅](https://www.mediawiki.org/wiki/Extension:MachineTranslation) | **mediawiki** | [☑️](../../roles/web-app-mediawiki/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mig/meta/services.yml) | ❌ | **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mig/meta/services.yml) | ❌ | ❌ | ❌ | **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mig/meta/services.yml) | ❌ | ❌ | ❌ | — | **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mig/meta/services.yml) | **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mig** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mig/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mig** | [☑️](../../roles/web-app-mig/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **minio** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-minio/meta/services.yml) | ❌ | **minio** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **minio** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-minio/meta/services.yml) | ❌ | ❌ | ❌ | **minio** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-minio/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **minio** | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **minio** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-minio/meta/services.yml) | **minio** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **minio** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-minio/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **minio** | [☑️](../../roles/web-app-minio/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **mini-qr** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mini-qr/meta/services.yml) | ❌ | **mini-qr** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mini-qr** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mini-qr/meta/services.yml) | ❌ | ❌ | ❌ | **mini-qr** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mini-qr/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mini-qr** | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mini-qr** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mini-qr/meta/services.yml) | **mini-qr** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mini-qr** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mini-qr/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mini-qr** | [☑️](../../roles/web-app-mini-qr/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **mobilizon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mobilizon/meta/services.yml) | ❌ | **mobilizon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mobilizon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mobilizon/meta/services.yml) | ❌ | ❌ | ❌ | **mobilizon** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mobilizon/meta/services.yml) | ❌ | [☑️](../../roles/web-app-mobilizon/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mobilizon** | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mobilizon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mobilizon/meta/services.yml) | **mobilizon** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **mobilizon** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-mobilizon/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **mobilizon** | [☑️](../../roles/web-app-mobilizon/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **moodle** | ❌ | ❌ | [✅](https://moodle.org/plugins/mod_bigbluebuttonbn) | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-moodle/meta/services.yml) | ❌ | **moodle** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **moodle** | ❌ | ❌ | ❌ | ❌ | [✅](https://moodle.org/plugins/mod_jitsi) | ❌ | [✅](https://moodle.org/plugins/auth_oidc) | ❌ | ❌ | ❌ | **moodle** | [☑️](../../roles/web-app-moodle/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-moodle/meta/services.yml) | ❌ | [✅](https://moodle.org/plugins/tool_webanalytics) | [✅](https://docs.moodle.org/en/Matrix) | ❌ | ❌ | ❌ | **moodle** | ❌ | ❌ | ❌ | — | ❌ | ❌ | [✅](https://moodle.org/plugins/repository_owncloud) | ❌ | ❌ | ❌ | **moodle** | ❌ | [✅](https://moodle.org/plugins/aiprovider_openwebui) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-moodle/meta/services.yml) | **moodle** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **moodle** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-moodle/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **moodle** | [☑️](../../roles/web-app-moodle/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **n8n** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-n8n/meta/services.yml) | ❌ | **n8n** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **n8n** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-n8n/meta/services.yml) | ❌ | ❌ | ❌ | **n8n** | [☑️](../../roles/web-app-n8n/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-n8n/meta/services.yml) | ❌ | [☑️](../../roles/web-app-n8n/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **n8n** | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | **n8n** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-n8n/meta/services.yml) | **n8n** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **n8n** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-n8n/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **n8n** | [☑️](../../roles/web-app-n8n/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-navigator/meta/services.yml) | ❌ | **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-navigator/meta/services.yml) | ❌ | ❌ | ❌ | **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-navigator/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-navigator/meta/services.yml) | **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **navigator** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-navigator/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **navigator** | [☑️](../../roles/web-app-navigator/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **nextcloud** | ❌ | ❌ | [✅](https://apps.nextcloud.com/apps/bbb) | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-nextcloud/meta/services.yml) | ❌ | **nextcloud** | [✅](https://github.com/nextcloud/integration_discourse) | ❌ | ❌ | ❌ | ❌ | [✅](https://github.com/nextcloud/integration_openai) | ❌ | ❌ | ❌ | ❌ | **nextcloud** | [✅](https://github.com/nextcloud/integration_gitlab) | ❌ | ❌ | [✅](https://github.com/nextcloud/integration_jira) | ❌ | ❌ | [✅](https://github.com/nextcloud/user_oidc) | ❌ | ❌ | ❌ | **nextcloud** | [☑️](../../roles/web-app-nextcloud/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-nextcloud/meta/services.yml) | [✅](https://github.com/nextcloud/integration_mastodon) | [✅](https://apps.nextcloud.com/apps/matomo) | [✅](https://github.com/nextcloud/integration_matrix) | [✅](https://github.com/nextcloud/integration_mattermost) | ❌ | ❌ | **nextcloud** | ❌ | ❌ | ❌ | [✅](https://github.com/nextcloud/integration_moodle) | ❌ | ❌ | — | ❌ | ❌ | [✅](https://github.com/nextcloud/integration_openproject) | **nextcloud** | ❌ | [✅](https://github.com/nextcloud/integration_openai) | [✅](https://github.com/nextcloud/integration_peertube) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-nextcloud/meta/services.yml) | **nextcloud** | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://github.com/eneiluj/integration_suitecrm) | ❌ | ❌ | [✅](https://apps.nextcloud.com/apps/xwiki) | ❌ | **nextcloud** | [✅](https://github.com/nextcloud/integration_zammad) | ❌ | ❌ | [✅](https://github.com/nextcloud/richdocuments) | [☑️](../../roles/web-app-nextcloud/meta/services.yml) | [☑️](../../roles/web-app-nextcloud/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **nextcloud** | [☑️](../../roles/web-app-nextcloud/meta/services.yml) | [✅](https://github.com/ONLYOFFICE/onlyoffice-nextcloud) | ❌ | ❌ |
|
|
| **odoo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-odoo/meta/services.yml) | ❌ | **odoo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **odoo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://github.com/OCA/server-auth/tree/16.0/auth_oidc) | ❌ | ❌ | ❌ | **odoo** | ❌ | ❌ | ❌ | [✅](https://www.odoo.com/documentation/latest/applications/general/email_communication.html) | ❌ | [☑️](../../roles/web-app-odoo/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **odoo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [🪙](https://apps.odoo.com/apps/modules/19.0/nextcloud_odoo_integration) | — | ❌ | ❌ | **odoo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-odoo/meta/services.yml) | **odoo** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **odoo** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-odoo/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **odoo** | [☑️](../../roles/web-app-odoo/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **opencloud** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opencloud/meta/services.yml) | ❌ | **opencloud** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **opencloud** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opencloud/meta/services.yml) | ❌ | ❌ | ❌ | **opencloud** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opencloud/meta/services.yml) | ❌ | [☑️](../../roles/web-app-opencloud/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **opencloud** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | **opencloud** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opencloud/meta/services.yml) | **opencloud** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **opencloud** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opencloud/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **opencloud** | [☑️](../../roles/web-app-opencloud/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **openproject** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openproject/meta/services.yml) | ❌ | **openproject** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **openproject** | [✅](https://www.openproject.org/docs/system-admin-guide/integrations/gitlab-integration/) | ❌ | ❌ | ❌ | ❌ | ❌ | [🪙](https://www.openproject.org/docs/system-admin-guide/authentication/openid-providers/) | ❌ | ❌ | ❌ | **openproject** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openproject/meta/services.yml) | ❌ | [☑️](../../roles/web-app-openproject/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **openproject** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://www.openproject.org/docs/system-admin-guide/integrations/nextcloud/) | ❌ | ❌ | — | **openproject** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openproject/meta/services.yml) | **openproject** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **openproject** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openproject/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **openproject** | [☑️](../../roles/web-app-openproject/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **opentalk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opentalk/meta/services.yml) | ❌ | **opentalk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **opentalk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opentalk/meta/services.yml) | ❌ | ❌ | ❌ | **opentalk** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opentalk/meta/services.yml) | ❌ | [☑️](../../roles/web-app-opentalk/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **opentalk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **opentalk** | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opentalk/meta/services.yml) | **opentalk** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **opentalk** | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-opentalk/meta/services.yml) | [☑️](../../roles/web-app-opentalk/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **opentalk** | [☑️](../../roles/web-app-opentalk/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **openwebui** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openwebui/meta/services.yml) | ❌ | **openwebui** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **openwebui** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openwebui/meta/services.yml) | ❌ | ❌ | ❌ | **openwebui** | [☑️](../../roles/web-app-openwebui/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-openwebui/meta/services.yml) | ❌ | [☑️](../../roles/web-app-openwebui/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **openwebui** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **openwebui** | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openwebui/meta/services.yml) | **openwebui** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **openwebui** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-openwebui/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **openwebui** | [☑️](../../roles/web-app-openwebui/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **peertube** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-peertube/meta/services.yml) | ❌ | **peertube** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **peertube** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://www.npmjs.com/package/peertube-plugin-auth-openid-connect) | ❌ | ❌ | ❌ | **peertube** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-peertube/meta/services.yml) | ❌ | [☑️](../../roles/web-app-peertube/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **peertube** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **peertube** | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-peertube/meta/services.yml) | **peertube** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **peertube** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-peertube/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **peertube** | [☑️](../../roles/web-app-peertube/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **pgadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pgadmin/meta/services.yml) | ❌ | **pgadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pgadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pgadmin/meta/services.yml) | ❌ | ❌ | ❌ | **pgadmin** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pgadmin/meta/services.yml) | ❌ | [☑️](../../roles/web-app-pgadmin/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **pgadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pgadmin** | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pgadmin/meta/services.yml) | **pgadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pgadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pgadmin/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **pgadmin** | [☑️](../../roles/web-app-pgadmin/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpldapadmin/meta/services.yml) | ❌ | **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpldapadmin/meta/services.yml) | ❌ | ❌ | ❌ | **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpldapadmin/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpldapadmin/meta/services.yml) | **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **phpldapadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpldapadmin/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **phpldapadmin** | [☑️](../../roles/web-app-phpldapadmin/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **phpmyadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpmyadmin/meta/services.yml) | ❌ | **phpmyadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **phpmyadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpmyadmin/meta/services.yml) | ❌ | ❌ | ❌ | **phpmyadmin** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpmyadmin/meta/services.yml) | ❌ | [☑️](../../roles/web-app-phpmyadmin/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **phpmyadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **phpmyadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpmyadmin/meta/services.yml) | **phpmyadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **phpmyadmin** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-phpmyadmin/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **phpmyadmin** | [☑️](../../roles/web-app-phpmyadmin/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **pixelfed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pixelfed/meta/services.yml) | ❌ | **pixelfed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pixelfed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pixelfed/meta/services.yml) | ❌ | ❌ | ❌ | **pixelfed** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pixelfed/meta/services.yml) | ❌ | [☑️](../../roles/web-app-pixelfed/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **pixelfed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pixelfed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | [☑️](../../roles/web-app-pixelfed/meta/services.yml) | **pixelfed** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pixelfed** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pixelfed/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **pixelfed** | [☑️](../../roles/web-app-pixelfed/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **postmarks** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-postmarks/meta/services.yml) | ❌ | **postmarks** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **postmarks** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-postmarks/meta/services.yml) | ❌ | ❌ | ❌ | **postmarks** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-postmarks/meta/services.yml) | ❌ | [☑️](../../roles/web-app-postmarks/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **postmarks** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **postmarks** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | [☑️](../../roles/web-app-postmarks/meta/services.yml) | **postmarks** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **postmarks** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-postmarks/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **postmarks** | [☑️](../../roles/web-app-postmarks/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **pretix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pretix/meta/services.yml) | ❌ | **pretix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pretix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://docs.pretix.eu/en/latest/admin/installation/index.html) | ❌ | ❌ | ❌ | **pretix** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pretix/meta/services.yml) | ❌ | [☑️](../../roles/web-app-pretix/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **pretix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pretix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | [☑️](../../roles/web-app-pretix/meta/services.yml) | **pretix** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **pretix** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-pretix/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **pretix** | [☑️](../../roles/web-app-pretix/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **prometheus** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-prometheus/meta/services.yml) | ❌ | **prometheus** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **prometheus** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-prometheus/meta/services.yml) | ❌ | ❌ | ❌ | **prometheus** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-prometheus/meta/services.yml) | ❌ | [☑️](../../roles/web-app-prometheus/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **prometheus** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **prometheus** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | **prometheus** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **prometheus** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-prometheus/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **prometheus** | [☑️](../../roles/web-app-prometheus/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **roulette-wheel** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-roulette-wheel/meta/services.yml) | ❌ | **roulette-wheel** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **roulette-wheel** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-roulette-wheel/meta/services.yml) | ❌ | ❌ | ❌ | **roulette-wheel** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-roulette-wheel/meta/services.yml) | ❌ | [☑️](../../roles/web-app-roulette-wheel/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **roulette-wheel** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **roulette-wheel** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-roulette-wheel/meta/services.yml) | **roulette-wheel** | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **roulette-wheel** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-roulette-wheel/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **roulette-wheel** | [☑️](../../roles/web-app-roulette-wheel/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **shopware** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-shopware/meta/services.yml) | ❌ | **shopware** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **shopware** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-shopware/meta/services.yml) | ❌ | ❌ | ❌ | **shopware** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-shopware/meta/services.yml) | ❌ | [☑️](../../roles/web-app-shopware/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **shopware** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **shopware** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-shopware/meta/services.yml) | **shopware** | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **shopware** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-shopware/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **shopware** | [☑️](../../roles/web-app-shopware/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **snipe-it** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-snipe-it/meta/services.yml) | ❌ | **snipe-it** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **snipe-it** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-snipe-it/meta/services.yml) | ❌ | ❌ | ❌ | **snipe-it** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-snipe-it/meta/services.yml) | ❌ | [☑️](../../roles/web-app-snipe-it/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **snipe-it** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **snipe-it** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-snipe-it/meta/services.yml) | **snipe-it** | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **snipe-it** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-snipe-it/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **snipe-it** | [☑️](../../roles/web-app-snipe-it/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **socialhome** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-socialhome/meta/services.yml) | ❌ | **socialhome** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **socialhome** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-socialhome/meta/services.yml) | ❌ | ❌ | ❌ | **socialhome** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **socialhome** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **socialhome** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-socialhome/meta/services.yml) | **socialhome** | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **socialhome** | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-socialhome/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | ❌ | **socialhome** | [☑️](../../roles/web-app-socialhome/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **sphinx** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-sphinx/meta/services.yml) | ❌ | **sphinx** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **sphinx** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-sphinx/meta/services.yml) | ❌ | ❌ | ❌ | **sphinx** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-sphinx/meta/services.yml) | ❌ | [☑️](../../roles/web-app-sphinx/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **sphinx** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **sphinx** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-sphinx/meta/services.yml) | **sphinx** | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | **sphinx** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-sphinx/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **sphinx** | [☑️](../../roles/web-app-sphinx/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **suitecrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-suitecrm/meta/services.yml) | ❌ | **suitecrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **suitecrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://docs.suitecrm.com/8.x/admin/configuration/saml/8.7.0-saml-configuration/) | ❌ | ❌ | ❌ | **suitecrm** | ❌ | ❌ | ❌ | [✅](https://github.com/SuiteCRM/SuiteCRM) | ❌ | [☑️](../../roles/web-app-suitecrm/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **suitecrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **suitecrm** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-suitecrm/meta/services.yml) | **suitecrm** | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | **suitecrm** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-suitecrm/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **suitecrm** | [☑️](../../roles/web-app-suitecrm/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **taiga** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-taiga/meta/services.yml) | ❌ | **taiga** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **taiga** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://github.com/taigaio/taiga-contrib-oidc-auth) | ❌ | ❌ | ❌ | **taiga** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-taiga/meta/services.yml) | ❌ | [☑️](../../roles/web-app-taiga/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **taiga** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **taiga** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-taiga/meta/services.yml) | **taiga** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | **taiga** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-taiga/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **taiga** | [☑️](../../roles/web-app-taiga/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **wordpress** | ❌ | ❌ | [✅](https://wordpress.org/plugins/video-conferencing-with-bbb/) | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-wordpress/meta/services.yml) | ❌ | **wordpress** | [✅](https://wordpress.org/plugins/wp-discourse/) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **wordpress** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://wordpress.org/plugins/daggerhart-openid-connect-generic/) | ❌ | ❌ | [✅](https://wordpress.org/plugins/integration-for-listmonk-mailing-list-and-newsletter-manager/) | **wordpress** | [☑️](../../roles/web-app-wordpress/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-wordpress/meta/services.yml) | [✅](https://wordpress.org/plugins/activitypub/) | [✅](https://wordpress.org/plugins/matomo/) | ❌ | ❌ | ❌ | ❌ | **wordpress** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **wordpress** | ❌ | ❌ | [✅](https://wordpress.org/plugins/video-manager-for-peertube/) | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-wordpress/meta/services.yml) | **wordpress** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | **wordpress** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-wordpress/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **wordpress** | [☑️](../../roles/web-app-wordpress/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **xwiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-xwiki/meta/services.yml) | ❌ | **xwiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xwiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://extensions.xwiki.org/xwiki/bin/view/Extension/OpenID%20Connect/) | ❌ | ❌ | ❌ | **xwiki** | [☑️](../../roles/web-app-xwiki/meta/services.yml) | ❌ | ❌ | [☑️](../../roles/web-app-xwiki/meta/services.yml) | ❌ | [✅](https://extensions.xwiki.org/xwiki/bin/view/Extension/Piwiki%20Integration) | ❌ | ❌ | ❌ | ❌ | **xwiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xwiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-xwiki/meta/services.yml) | **xwiki** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | **xwiki** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-xwiki/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **xwiki** | [☑️](../../roles/web-app-xwiki/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **yourls** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-yourls/meta/services.yml) | ❌ | **yourls** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **yourls** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-yourls/meta/services.yml) | ❌ | ❌ | ❌ | **yourls** | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-yourls/meta/services.yml) | ❌ | [☑️](../../roles/web-app-yourls/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **yourls** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **yourls** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-yourls/meta/services.yml) | **yourls** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | **yourls** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-yourls/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **yourls** | [☑️](../../roles/web-app-yourls/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **zammad** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-zammad/meta/services.yml) | ❌ | **zammad** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **zammad** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [✅](https://admin-docs.zammad.org/en/latest/settings/security/third-party/saml.html) | ❌ | ❌ | ❌ | **zammad** | [☑️](../../roles/web-app-zammad/meta/services.yml) | ❌ | ❌ | [✅](https://admin-docs.zammad.org/en/latest/channels/email/index.html) | ❌ | [☑️](../../roles/web-app-zammad/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **zammad** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **zammad** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-zammad/meta/services.yml) | **zammad** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **zammad** | — | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-app-zammad/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **zammad** | [☑️](../../roles/web-app-zammad/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| **asset** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **asset** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **asset** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **asset** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-asset/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **asset** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **asset** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-asset/meta/services.yml) | **asset** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **asset** | ❌ | — | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-asset/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **asset** | ❌ | ❌ | ❌ | ❌ |
|
|
| **cdn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-cdn/meta/services.yml) | ❌ | **cdn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **cdn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **cdn** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-cdn/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **cdn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **cdn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-cdn/meta/services.yml) | **cdn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **cdn** | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **cdn** | ❌ | ❌ | ❌ | ❌ |
|
|
| **collabora** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **collabora** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **collabora** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **collabora** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-collabora/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **collabora** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **collabora** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-collabora/meta/services.yml) | **collabora** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **collabora** | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **collabora** | ❌ | ❌ | ❌ | ❌ |
|
|
| **coturn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **coturn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **coturn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **coturn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **coturn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **coturn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-coturn/meta/services.yml) | **coturn** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **coturn** | ❌ | ❌ | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | ❌ | **coturn** | ❌ | ❌ | ❌ | ❌ |
|
|
| **css** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **css** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **css** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **css** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-css/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **css** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **css** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-css/meta/services.yml) | **css** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **css** | ❌ | ❌ | [☑️](../../roles/web-svc-css/meta/services.yml) | ❌ | ❌ | — | ❌ | ❌ | ❌ | ❌ | **css** | ❌ | ❌ | ❌ | ❌ |
|
|
| **file** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **file** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **file** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **file** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-file/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **file** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **file** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-file/meta/services.yml) | **file** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **file** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-file/meta/services.yml) | — | ❌ | ❌ | ❌ | **file** | ❌ | ❌ | ❌ | ❌ |
|
|
| **html** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **html** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **html** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **html** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-html/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **html** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **html** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-html/meta/services.yml) | **html** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **html** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-html/meta/services.yml) | ❌ | — | ❌ | ❌ | **html** | ❌ | ❌ | ❌ | ❌ |
|
|
| **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-legal/meta/services.yml) | **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **legal** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | — | ❌ | **legal** | ❌ | ❌ | ❌ | ❌ |
|
|
| **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-libretranslate/meta/services.yml) | ❌ | ❌ | ❌ | **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-libretranslate/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-libretranslate/meta/services.yml) | **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **libretranslate** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-libretranslate/meta/services.yml) | ❌ | ❌ | ❌ | — | **libretranslate** | [☑️](../../roles/web-svc-libretranslate/meta/services.yml) | ❌ | ❌ | ❌ |
|
|
| ↓ row wires → col | akaunting | baserow | bigbluebutton | bluesky | bookwyrm | bridgy-fed | chess | confluence | dashboard | decidim | ↓ row wires → col | discourse | erpnext | espocrm | fediwall | fider | flowise | friendica | funkwhale | fusiondirectory | gitea | ↓ row wires → col | gitlab | hugo | jenkins | jira | jitsi | joomla | keycloak | kix | lam | listmonk | ↓ row wires → col | litellm | littlejs | magento | mailu | mastodon | matomo | matrix | mattermost | mediawiki | mig | ↓ row wires → col | minio | mini-qr | mobilizon | moodle | n8n | navigator | nextcloud | odoo | opencloud | openproject | ↓ row wires → col | opentalk | openwebui | peertube | pgadmin | phpldapadmin | phpmyadmin | pixelfed | postmarks | pretix | prometheus | ↓ row wires → col | roulette-wheel | shopware | snipe-it | socialhome | sphinx | suitecrm | taiga | wordpress | xwiki | yourls | ↓ row wires → col | zammad | asset | cdn | collabora | coturn | css | file | html | legal | libretranslate | ↓ row wires → col | logout | onlyoffice | simpleicons | xmpp |
|
|
| **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-logout/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-logout/meta/services.yml) | **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **logout** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-logout/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **logout** | — | ❌ | ❌ | ❌ |
|
|
| **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-onlyoffice/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-onlyoffice/meta/services.yml) | **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **onlyoffice** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-onlyoffice/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **onlyoffice** | ❌ | — | ❌ | ❌ |
|
|
| **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-simpleicons/meta/services.yml) | ❌ | **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-simpleicons/meta/services.yml) | ❌ | ❌ | ❌ | **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-simpleicons/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-simpleicons/meta/services.yml) | **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **simpleicons** | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-simpleicons/meta/services.yml) | ❌ | ❌ | ❌ | ❌ | **simpleicons** | ❌ | ❌ | — | ❌ |
|
|
| **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-xmpp/meta/services.yml) | ❌ | ❌ | ❌ | **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | [☑️](../../roles/web-svc-xmpp/meta/services.yml) | **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xmpp** | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | ❌ | **xmpp** | [☑️](../../roles/web-svc-xmpp/meta/services.yml) | ❌ | ❌ | — |
|
|
|
|
## Maintenance
|
|
|
|
- [ ] Regenerate this matrix after adding or removing any integration edge.
|