A Complete Solution
GNOME’s technologies have been used to build a range of highly successful consumer products. They can be adopted as a fully-featured software stack, or on a pick and choose basis. Whichever option is taken, their continuous development as a part of GNOME 40 means that they are actively maintained, continuously tested, and are always evolving in response to real-world user-driven demands.
If you are interested in adopting any of these technologies, or would like to support their ongoing development, the GNOME Foundation can assist you.
The majority of GNOME’s technologies originated in and are actively developed by GNOME. Others are hosted elsewhere, with GNOME community members being active contributors. This willingness to work beyond community borders and actively shape an entire stack is one of the hallmarks of the GNOME project.
GNOME technologies are highly compatible with the Linux kernel. GNOME project members are active kernel contributors, and we are helping to shape the future of this important project.
GNOME has a close relationship with systemd. A number of systemd features originated in the GNOME project, and ongoing collaborations ensure effective integration with this core technology.
Core object system used in GNOME, which provides a large set of utility functions.
The message bus system: a simple way for applications to talk to one another. D-Bus also helps coordinate process lifecycle.
Continuous operating system integration and testing, and next-generation operating system installation, distribution and update framework.
Next-generation application distribution and installation technology. Allows the creation of sandboxed, cross-platform applications.
GNOME has been a prominent user and contributor to the primary Linux display servers, and we are at the forefront of Wayland adoption.
Core accessibility framework, which provides interfaces for assistive technologies.
GNOME’s graphical user interface toolkit, which allows the creation of modern, dynamic interfaces. Features include CSS styling, live introspection, OpenGL, multitouch, and accessibility support.
System user interface for launching and switching applications, viewing notifications and system status. Closely integrated with Mutter, GNOME’s window manager.
Storage, Data, and File Access
Settings storage framework, optimized for fast read speeds.
System-wide search engine, search tool and metadata storage system.
Virtual file system (VFS), with APIs for accessing and manipulating files. Allows access through Samba (Windows), AppleTalk (MacOS X), and a
number of mobile devices (MTP for Android, iOS).
Sound system with advanced capabilities such as transferring audio between machines, changing the sample format or channel count and mixing several sounds into one. Also supports Bluetooth headsets and speakers.
Multimedia framework for audio and video playback, recording, streaming and editing. GStreamer is capable of hardware-accelerated video decoding.
Plugin-based media discovery framework, with support for YouTube, Jamendo, Flickr, Vimeo, Apple trailers, Podcasts, UPnP/DLNA and Last.FM album art.
Networking, Web, and Connectivity
Core networking technology, with support for Wi-Fi, wired, 3G and Bluetooth, as well as bonds and bridges. Mobile broadband support is provided by ModemManager.
HTTP client/server library, with asynchronous and synchronous APIs and SSL support.
A full-featured port of the WebKit rendering engine, suitable for projects requiring any kind of web integration, from hybrid HTML/CSS applications to full-fledged web browsers.
GNOME’s Universal Plug and Play (UPnP) solution allows audio, video and pictures to be shared with other devices. Can also be used as a media renderer that may be controlled remotely by a UPnP or DLNA Controller.
mDNS/DNS-SD protocol suite that allows service discovery on a local network. Supports chat, printer discovery, printing and file sharing, and is compatible with technology found in Apple’s OS X.
The official Linux Bluetooth stack.
Contacts, Calendaring, and Communication
Flexible and modular real-time communications framework.
System address book and calendar system.
Contact aggregation service, which combines contacts from multiple sources.
Location services for applications, based on Wi-Fi access points, GPS, 3G modems and GeoIP.
Vala is a programming language with a syntax that is similar to C#. It allows access to existing C libraries, particularly those from the GNOME stack.
GNOME’s display manager: manages graphical display servers and user login.