https://github.com/elementary/granite
Library that extends GTK with common widgets and utilities
https://github.com/elementary/granite
gtk gtk3 gtk4 hacktoberfest meson vala vala-documentation
Last synced: about 1 month ago
JSON representation
Library that extends GTK with common widgets and utilities
- Host: GitHub
- URL: https://github.com/elementary/granite
- Owner: elementary
- License: lgpl-3.0
- Created: 2017-04-21T16:45:37.000Z (about 8 years ago)
- Default Branch: main
- Last Pushed: 2025-03-31T21:52:21.000Z (about 1 month ago)
- Last Synced: 2025-03-31T22:17:48.513Z (about 1 month ago)
- Topics: gtk, gtk3, gtk4, hacktoberfest, meson, vala, vala-documentation
- Language: Vala
- Homepage: https://elementary.io
- Size: 14.2 MB
- Stars: 294
- Watchers: 38
- Forks: 62
- Open Issues: 74
-
Metadata Files:
- Readme: README.md
- License: COPYING
Awesome Lists containing this project
README
# Granite
Granite is a companion library for GTK and GLib. Among other things, it
provides complex widgets and convenience functions designed for use in apps
built for elementary OS.[](https://repology.org/metapackage/granite)
[](https://l10n.elementary.io/engage/desktop/?utm_source=widget)## Building, Testing, and Installation
You'll need the following dependencies:
* meson >= 0.57.0
* gobject-introspection
* gettext
* libgee-0.8-dev
* libgirepository1.0-dev
* libgtk-4-dev >= 4.12.0
* sassc
* valacTo build the Demo you'll additionally need:
* libshumate-devRun `meson build` to configure the build environment:
meson build --prefix=/usr
This command creates a `build` directory. For all following commands, change to
the build directory before running them.To build granite, use `ninja`:
ninja
To install, use `ninja install`
ninja install
To see a demo app of Granite's widgets, run `granite-7-demo` after installing it:
granite-7-demo
## Documentation
Documentation for all of the classes and functions in Granite is available
[on Valadoc](https://valadoc.org/granite-7/Granite.html)The additional requirements for building the documentation are:
* valadoc
* gtk-docTo generate gtk-doc and valadoc documentation for this project, pass the
additional `-Ddocumentation=true` flag to meson, and run `ninja` as before.