30 open-source projects similar to riverwm/river, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best River alternative.
Noctalia Shell is a modular Wayland desktop shell that provides a user interface consisting of status bars, launchers, and notifications for Wayland compositors. It is built as a plugin-based desktop environment that utilizes declarative configuration for managing system defaults, wallpapers, and plugin installations. The project features a dynamic desktop theming engine that extracts color palettes from wallpapers to theme the shell and external applications. This is supported by an inter-process communication bridge that exposes endpoints, allowing external scripts and keybindings to trigge
Wayfire is a modular Wayland compositor for Linux that functions as a graphical session controller and window manager. It provides the core infrastructure for a desktop environment by managing window placement, input device handling, and display output configurations. The compositor utilizes hardware-accelerated rendering to manage the desktop state and coordinate the interaction between client applications and the display server. The project is distinguished by its plugin-based architecture, which allows for the dynamic extension of core functionality through modular components. It offers ex
Arch-Hyprland is an automated installation framework and desktop configurator for Arch Linux. It provides a collection of scripts and configuration files to deploy the Hyprland Wayland window compositor and establish a complete visual workspace. The project includes a GPU driver automator that identifies and installs the correct graphics drivers and kernel modules to ensure hardware compatibility. It further automates the deployment of themes, icons, and display managers to create a cohesive desktop environment. The system handles package deployment through shell scripts and template-based c
This project serves as a comprehensive educational framework and reference library for mastering high-performance graphics programming and parallel compute resource management. It provides a collection of practical implementations designed to demonstrate the explicit control required by the Vulkan API, covering the fundamental mechanics of modern graphics pipelines and cross-platform hardware interaction. The repository distinguishes itself by focusing on the low-level architectural requirements of modern GPU development, including manual memory allocation, multi-threaded command recording, a
bgfx is a cross-platform, graphics rendering abstraction layer designed for high-performance applications. It provides a unified interface that maps high-level rendering commands to native graphics APIs, allowing developers to maintain a single codebase that executes consistently across diverse operating systems and hardware architectures. The library distinguishes itself through a multi-threaded command submission model that decouples rendering logic from the main application thread, effectively minimizing CPU bottlenecks. It utilizes a backend-agnostic command buffer and a deferred resource
This project is a cross-platform graphics and compute framework that provides a unified, hardware-agnostic abstraction layer for rendering and parallel processing. It enables developers to build high-performance applications that execute consistently across diverse operating systems and hardware backends, including Vulkan, Metal, and DirectX. By mapping high-level graphics commands to native APIs, it serves as a portable foundation for both real-time 3D rendering and general-purpose GPU computing. The framework distinguishes itself through a robust architecture that supports both native deskt
Leif is an OpenGL-backed immediate mode graphical user interface library and graphics rendering framework. It provides a lightweight control flow where layouts and components are rebuilt every frame without retaining an internal scene graph, backed by hardware-accelerated graphics. The framework utilizes GPU-accelerated batch rendering to draw high volumes of primitives efficiently by grouping geometry into single vertex buffers. Developers can bypass standard rendering wrappers to access the underlying renderer directly, drawing raw graphics and custom geometry alongside standard interface c
This project is a Java GUI framework used to build cross-platform desktop, mobile, and embedded applications. It centers on a hardware accelerated graphics engine that provides 2D and 3D visualizations and visual effects, complemented by a reactive UI binding system for synchronizing data and interface updates. The framework distinguishes itself through the FXML markup language, which separates the visual structure of an interface from its procedural logic. It also includes a dedicated CSS styling engine that allows for the customization of component appearances using external stylesheets and
WickedEngine is a C++ 3D game engine and framework designed for building high-fidelity three-dimensional applications and graphics projects. It features a modern graphics renderer that implements current standards to produce complex geometry and lighting across different hardware. The engine includes a standalone visual scene editor for designing environments and configuring properties without writing code. It also provides an integrated Lua scripting environment to manage runtime logic and automate engine tasks. The framework covers 3D graphics rendering and application development, includi
This project is a collection of reference implementations and benchmarks demonstrating the use of the Vulkan graphics and compute API. It provides a set of cross-platform examples and GPU programming patterns designed for high-performance rendering and hardware-accelerated tasks. The repository includes a suite of performance benchmarks used to measure API behavior across different hardware environments. It features a modular architecture that organizes rendering examples into isolated units, along with command-line utilities for the batch execution of sample sequences. The project covers se
Silk.NET is a low-level API binding library for the .NET ecosystem that provides high-performance interfaces for graphics, audio, and input APIs. It consists of a C header binding generator that converts headers into type-safe language bindings, a graphics API interface for GPU compute and rendering, and a cross-platform windowing wrapper. The project utilizes a customizable pipeline to automate the generation of language bindings from C headers by mapping metadata to syntax trees. Its windowing and input abstraction provides a unified interface to manage application windows across different
Vesktop is an Electron-based desktop client for Discord that runs natively on Linux, offering improved performance and deeper system integration compared to the official web app. It wraps Discord in an Electron shell to provide a lightweight, native desktop experience while adding a privacy protection layer that blocks Discord's access to system-level information such as running processes and hardware details. The client distinguishes itself through comprehensive Linux desktop support, including full Wayland display protocol integration for better performance on modern Linux desktops, screen
term.everything is a terminal-based graphical compositor and renderer that converts framebuffers into ANSI escape sequences to display GUI applications within a terminal emulator. It functions as a remote GUI streamer and framebuffer-to-ANSI converter, allowing for the visualization of headless systems and the execution of graphical software over SSH connections. The project includes a specialized mouse input handler that utilizes SGR 1006 reporting to capture movements and clicks, enabling user interaction with rendered graphical interfaces. It emulates a compositor to coordinate window beha
This repository is a comprehensive collection of reference implementations and sample libraries for the Universal Windows Platform. It provides practical examples of how to use Windows Runtime APIs to build cross-device applications, including detailed guidance on XAML-based declarative user interfaces and DirectX-integrated rendering. The project distinguishes itself by providing a wide array of hardware integration suites, covering low-level communication with USB, Serial, I2C, SPI, and GPIO peripherals. It includes specialized implementations for mixed reality holographic rendering, advanc
SFML is a cross-platform C++ multimedia library designed for building 2D games and interactive applications. It provides a unified interface for hardware-accelerated graphics, audio playback, and window management, allowing developers to create visual software that functions consistently across different operating systems. The library abstracts native windowing and graphics APIs, enabling the use of object-oriented primitives to render shapes, sprites, and text. It includes a dedicated audio engine that supports sound effects and music with controls for volume, pitch, and spatial positioning,
Voidrice is a collection of Linux and Unix dotfiles and a shell-scripted provisioning suite designed to establish a standardized, minimalist desktop environment. It provides a set of configuration files for shells, text editors, and system utilities to ensure a consistent workspace across different machines. The project employs a symlink-based configuration manager to map system files to a central repository for easier versioning. It also includes a text-based directory bookmark system that uses flat text files to index and jump to favorite system paths. The suite covers broad capability are
The Android NDK samples provide a comprehensive collection of code examples demonstrating how to integrate C and C++ native code into Android applications. This repository serves as a practical guide for developers utilizing the Android Native Development Kit to implement performance-critical application components that require direct hardware access and low-level system interaction. The project highlights the use of the Java Native Interface to bridge managed code with native modules, enabling cross-language function calls and efficient data exchange. It demonstrates how to manage native act
LibGDX is a Java-based framework designed for cross-platform game development, enabling the creation and deployment of 2D and 3D games across desktop, mobile, and web environments from a single codebase. It functions as a comprehensive library that abstracts hardware-accelerated graphics, audio, input, and file system access, providing a unified interface for developers to manage game logic and application lifecycles. The framework distinguishes itself through a high-performance architecture that prioritizes efficiency and native interoperability. It utilizes a batch-oriented graphics pipelin
This project is a cross-platform library designed for desktop application development, providing a unified interface for window management, input handling, and hardware-accelerated graphics. It serves as a foundational framework that abstracts platform-specific windowing protocols and graphics APIs, enabling developers to create interactive software that functions consistently across Windows, macOS, and Linux. The library distinguishes itself by providing deep integration with low-level graphics APIs, specifically OpenGL and Vulkan. It manages the complexities of graphics context initializati
This project is a comprehensive educational resource for building a high-performance game engine from the ground up using C++. It serves as a technical guide for developers seeking to understand the low-level architecture of engine systems, providing a structured approach to implementing core components like rendering pipelines, entity-component-system patterns, and multi-threaded task scheduling. The resource distinguishes itself by focusing on the practical implementation of complex engine subsystems, including graphics API abstraction layers for cross-platform compatibility and data-driven
Echo is a cross-platform game engine designed for the development of two-dimensional and three-dimensional interactive projects. It provides a unified environment that integrates scene management, visual scripting, and graphics rendering into a single workflow, allowing developers to build and deploy applications across desktop, mobile, and web platforms. The engine distinguishes itself through a node-based architecture that governs both scene organization and game logic. By utilizing a visual scripting tool and a data-flow shader graph, users can define complex behaviors and custom materials
Hyprdots is a collection of configuration files and installation scripts designed to set up and customize a Hyprland tiling window manager environment on Linux. It provides an automated system for deploying a personalized desktop interface, including pre-configured themes, styles, and keyboard shortcuts. The project utilizes a modular dotfiles management workflow to organize system settings into discrete files for visual styles and keybindings. It employs shell-scripted installation to automate dependency deployment and uses symbolic links to map a centralized configuration directory to syste
This project is a dynamic tiling window manager configuration and automated desktop installer for Linux. It provides a system for organizing application windows to maximize screen real estate and productivity, specifically centered around a Hyprland desktop configuration. The environment features an adaptive visual theme that extracts dominant hues from wallpapers to automatically update the global user interface colors. It also includes specialized optimizations for virtual machine environments to ensure system stability and performance. The project covers automated desktop deployment throu
Celluloid is a graphical frontend for the media engine that provides a native interface for playing local and network media files. Built using the toolkit for desktop environments, it functions as a controller that delegates audio and video decoding, rendering, and playback management to an underlying media process. The application is designed for native execution on modern display servers, ensuring high-performance output without reliance on legacy compatibility layers. It maintains a clean interface while offering deep integration with the system shell, allowing for the broadcasting of play
This project is a QML desktop shell designed for desktop environment orchestration and interface customization. It functions as a system status dashboard and a declarative user interface for managing system hardware, window metadata, and user sessions. The shell features a dynamic theme generator that extracts dominant colors from wallpapers to automatically synchronize the global visual color palette. It utilizes an inter-process communication system to orchestrate shell functions and a hierarchical JSON configuration framework to manage global and per-monitor interface layouts. The system
Gamescope is a Wayland micro-compositor that manages frame rates, resolution upscaling, shader application, and virtual displays. It functions as a system to isolate applications within a sandboxed session and control their display output. The project provides a virtual display manager that spoofs resolution and refresh rates to create a consistent screen environment independent of physical hardware. It includes a GPU post-processing wrapper to apply visual shaders and filters to an application stream and a game resolution upscaler to improve visual clarity on larger displays. The system man
This project is a collection of Unix dotfiles and a custom desktop environment configuration for Linux. It provides a standardized set of configuration files to ensure consistent shell and application behavior, centering on a tiling window manager setup and a personalized user interface. The environment features a desktop dashboard with modular widgets and sidebars that display system performance, weather, and media controls. It includes a comprehensive keyboard shortcut map using global and mode-specific keybindings to launch applications and control system actions. The configuration covers
This project is a declarative UI pattern library and reference implementation for structuring layouts, navigation flows, and data collections across Apple platforms. It provides a collection of practical implementation patterns and component examples for building user interfaces using the SwiftUI framework. The library serves as a cross-platform reference for rendering visual content on iOS and macOS. It includes a view implementation guide that covers managing navigation, handling user inputs, and embedding web content. The codebase covers broad capability areas including layout management
Slint is a declarative user interface framework designed for building native graphical applications across desktop, mobile, and embedded platforms. It utilizes a specialized markup language to define reactive interface components, which are then compiled into optimized machine code to ensure high performance and minimal resource consumption. By separating visual structure from application logic, the framework enables developers to create consistent interfaces that run efficiently on hardware ranging from resource-constrained microcontrollers to high-end desktop systems. The framework distingu
Firejail is a Linux application sandbox and kernel security wrapper that isolates untrusted applications from the host system. It uses kernel namespaces and seccomp filters to restrict filesystem access, drop kernel capabilities, and limit the system attack surface. The project is distinguished by its use of predefined security profiles to automatically apply filesystem restrictions and syscall limits based on the executable being launched. It provides specialized isolation for portable packages such as AppImages and implements X11 display isolation via proxy servers to prevent keyboard loggi