init
Some checks failed
Docker. / Ubuntu (push) Has been cancelled
User-agent updater. / User-agent (push) Failing after 15s
Lock Threads / lock (push) Failing after 10s
Waiting for answer. / waiting-for-answer (push) Failing after 22s
Needs user action. / needs-user-action (push) Failing after 8s
Can't reproduce. / cant-reproduce (push) Failing after 8s
Close stale issues and PRs / stale (push) Has been cancelled

This commit is contained in:
allhaileris
2026-02-16 15:50:16 +03:00
commit afb81b8278
13816 changed files with 3689732 additions and 0 deletions

View File

@@ -0,0 +1,19 @@
Convenience Libraries
=====================
Using the XDG Portals D-Bus APIs directly is often difficult and error-prone.
Fortunately, there are convenience libraries available that significantly ease
the development of apps:
* `ASHPD <https://bilelmoussaoui.github.io/ashpd/ashpd/>`_: a **Rust** crate that
provides the APIs to interact with portals in idiomatic Rust. It has support for
GTK4, direct X11 windows, and direct Wayland surfaces.
* `libportal <https://github.com/flatpak/libportal/>`_: small **C** library that
provides a GObject API to interact with portals. It provides language bindings
to a variety of other languages, such as **Python**, **JavaScript**, **Vala**,
and more. It has support for GTK3, GTK4, Qt 5, and Qt 6.
* `portal <https://github.com/rymdport/portal>`_: a **Go** module that provides
native APIs for interacting with portals from idiomatic Go code.
It aims to be both toolkit agnostic and easy to use.
* `xdg_desktop_portal <https://pub.dev/packages/xdg_desktop_portal>`_: a native
**Dart** package to interact with portals in **Dart** and **Flutter**.