An open API service indexing awesome lists of open source software.

https://github.com/janvhs/awesome-libadwaita

Resources, language bindings and frameworks around GNOME's Libadwaita
https://github.com/janvhs/awesome-libadwaita

List: awesome-libadwaita

Last synced: 3 months ago
JSON representation

Resources, language bindings and frameworks around GNOME's Libadwaita

Awesome Lists containing this project

README

        

# Awesome Libadwaita

A list of lesser known resources, language bindings and frameworks around [GNOME's](https://www.gnome.org/) [libadwaita](https://gitlab.gnome.org/GNOME/libadwaita) and [GTK](https://www.gtk.org).

## Motivation

While I was looking around for language bindings for the
[Swift programming language](https://www.swift.org/), I discovered, that there
are a lot of niche libraries, and resources around GNOME development.

I hope to provide a collection of links, so others do not have to search as much.

## Table Of Contents

- [Awesome Libadwaita](#awesome-libadwaita)
- [Motivation](#motivation)
- [Table Of Contents](#table-of-contents)
- [Libraries And Frameworks](#libraries-and-frameworks)
- [C](#c)
- [Crystal](#crystal)
- [C#](#c-1)
- [Go](#go)
- [Haskel](#haskel)
- [Julia](#julia)
- [Kotlin](#kotlin)
- [Nim](#nim)
- [OCaml and ReasonML](#ocaml-and-reasonml)
- [Rust](#rust)
- [Swift](#swift)
- [Blogs](#blogs)
- [Tutorials](#tutorials)

## Libraries And Frameworks

> [!NOTE]
> Don't hesitate to add your favourites

Official, GNOME World and GNOME Circle libraries are marked with an 👣 emoji

### C

- [Libadwaita 👣](https://gitlab.gnome.org/GNOME/libadwaita) - official library
- [GTK4 👣](https://gitlab.gnome.org/GNOME/gtk) - official library for GTK3 and GTK4

### Crystal

- [libadwaita.cr](https://github.com/GeopJr/libadwaita.cr) - Libadwaita bindings

### C#

- [gir.core](https://github.com/gircore/gir.core) - Bindings for GTK4, Libadwaita and more GObject libraries

### Go

- [gotk4](https://github.com/diamondburned/gotk4) - GTK4 bindings
- [gotk4-adwaita](https://github.com/diamondburned/gotk4-adwaita) - Libadwaita bindings

### Haskel

- [haskell-gi](https://github.com/haskell-gi/haskell-gi) - Bindings for GTK4, Libadwaita and more GObject libraries

### Julia

- [GtkObservables.jl](https://github.com/JuliaGizmos/GtkObservables.jl) - Imperative, reactive GTK4 development
- [Gtk4.jl](https://github.com/JuliaGtk/Gtk4.jl) - GTK4 bindings
- [Gtk3.jl](https://github.com/JuliaGraphics/Gtk.jl) - GTK3 bindings

### Kotlin

- [gtk-kn](https://gitlab.com/gtk-kn/gtk-kn) - Bindings for GTK4, Libadwaita and more GObject libraries

### Nim

- [owlkettle](https://github.com/can-lehmann/owlkettle) - A declarative UI framework for GTK4 and Libadwaita

### OCaml and ReasonML

- [LablGTK](https://github.com/garrigue/lablgtk) - GTK2 and GTK3 bindings used by CoqIDE
- [lwt_glib](https://github.com/ocsigen/lwt_glib) - GLib event loop integration for Lwt
- [gobject-introspection](https://github.com/cedlemo/OCaml-GObject-Introspection) - Bindings to GObject introspection

### Rust

- [gtk-rs-core 👣](https://gtk-rs.org/gtk-rs-core) - Bindings to cairo, gio and more
- [gtk3-rs 👣](https://gtk-rs.org/gtk3-rs) - GTK3 bindings
- [gtk4-rs 👣](https://gtk-rs.org/gtk4-rs) - GTK4 bindings
- [libadwaita-rs 👣](https://gitlab.gnome.org/World/Rust/libadwaita-rs) - Libadwaita bindings
- [zbus 👣](https://dbus.pages.freedesktop.org/zbus) - Bindings to DBus
- [ASHPD 👣](https://github.com/bilelmoussaoui/ashpd) - Wrapper for XDG portals DBus
- [libmanette 👣](https://gnome.pages.gitlab.gnome.org/libmanette/) - GObject game controller library
- [RetroGTK 👣](https://gnome.pages.gitlab.gnome.org/retro-gtk/) - GTK Libretro frontend framework
- [Relm4](https://github.com/Relm4/Relm4) - GUI library inspired by Elm with GTK4 and libadwaita
- [vgtk](https://github.com/bodil/vgtk) - Yew, React like declarative UI framework for GTK4
- [gflux](https://github.com/bvinc/gflux) - tiny and experimental reactive component system library for GTK

### Swift

- [SwiftGtk](https://github.com/rhx/SwiftGtk) - GTK3 and GTK4 bindings
- [Libadwaita](https://github.com/AparokshaUI/Libadwaita) - Swift abstraction for Libadwaita

## Blogs

> [!NOTE]
> Don't hesitate to add your favourites

- [**All GNOME blogs**](https://blogs.gnome.org/) - Blogs by "Gnomies" about development, design and community
- [Space and Meaning](https://blogs.gnome.org/tbernard/) - Tobias Bernard's GNOME Blog about Local-First development, GNOME Berlin, general GNOME development
- [Form and Function](https://blogs.gnome.org/aday/) - Allan Day's GNOME Blog about UI and UX design and community

## Tutorials

> [!NOTE]
> Nothing here, yet, but don't hesitate to add your favourites