81 dépôts
Technologies enabling virtual environments, spatial computing, and user-driven interactive visual experiences.
Explore 81 awesome GitHub repositories matching graphics & multimedia · Immersive and Interactive Systems. Refine with filters or upvote what's useful.
This project is a high-level 3D graphics engine designed to render complex, hardware-accelerated environments within web browsers. It provides a comprehensive abstraction layer that manages scene graphs, cameras, and lighting, mapping high-level scene definitions onto low-level graphics APIs. By decoupling these definitions from specific hardware targets, the engine ensures consistent performance across diverse browsers and devices. The framework distinguishes itself through a robust architecture that includes a unified math library for high-frequency spatial calculations and a physically bas
Integrates spatial tracking and controller input to power immersive virtual and augmented reality experiences directly in the browser.
Ce projet est une bibliothèque d'interface utilisateur graphique en mode immédiat conçue pour le développement rapide d'outils et d'interfaces de débogage. En générant la géométrie de l'interface utilisateur à chaque image via du code procédural, elle élimine le besoin de synchronisation d'état persistante entre les données de l'application et l'interface. Elle est principalement destinée à être intégrée dans des pipelines de rendu existants, où elle produit des tampons de sommets bruts et des commandes de dessin agnostiques vis-à-vis de l'API graphique sous-jacente. La bibliothèque se distingue par une architecture hautement découplée qui prend en charge des mises en page complexes, ancrables et multi-fenêtres. Elle gère les positions des fenêtres, le glisser-déposer des onglets et le fractionnement des nœuds, permettant aux développeurs de détacher les éléments d'interface dans des fenêtres de système d'exploitation indépendantes. Pour assurer une interaction cohérente dans divers environnements, elle mappe les événements d'entrée natifs dans un format unifié et fournit une portée robuste basée sur des identifiants pour suivre les états des éléments à travers les images. Le framework offre une large surface de capacités pour construire des outils de moteur sophistiqués et des utilitaires de diagnostic. Il inclut la prise en charge de composants visuels avancés tels que des éditeurs de nœuds, des traceurs 2D et 3D, et des inspecteurs spécialisés, ainsi qu'une infrastructure pour la mise à l'échelle DPI et le rendu de formes personnalisées. Le système est conçu pour une haute portabilité, avec des options de configuration à la compilation qui permettent aux développeurs d'adapter les structures de données de base et les types mathématiques aux exigences spécifiques du moteur. Le dépôt fournit des exemples étendus pour connecter la bibliothèque aux principaux backends et frameworks graphiques, ainsi que des outils pour générer des liaisons spécifiques aux langages.
Projection techniques enable the placement and interaction of interface panels within three-dimensional virtual environments.
This project is a web-native presentation framework that renders slide decks from standard HTML or Markdown. It functions as a declarative slide engine, managing navigation, state persistence, and lifecycle events through a configuration-driven interface. By leveraging standard web technologies, it enables the creation of responsive, browser-based presentations that support complex layouts, nested transitions, and interactive content. The framework distinguishes itself through a modular, plugin-based architecture that allows developers to extend core functionality using custom hooks and event
Triggers full-screen visual overlays for images by applying specific data attributes to standard HTML elements.
Remotion is a programmatic video framework that enables the creation of video content using component-based logic and standard web technologies. By leveraging a declarative animation engine, it allows developers to structure visual content as a hierarchy of reusable components, ensuring that animations and state updates remain consistent through deterministic frame execution. The framework distinguishes itself by utilizing a headless browser renderer that captures visual output frame-by-frame to generate high-quality video files. This architecture supports a cloud-native media pipeline, allow
Renders interactive vector animations within video compositions.
Pixi.js is a high-performance 2D graphics engine used to render interactive animations, sprites, and visual effects in web browsers. It functions as a WebGL 2D rendering engine and HTML5 graphics library designed to produce high-performance two-dimensional visuals. The project operates as a 2D sprite framework and a web-based visual effects engine, providing tools to apply filters, blend modes, and masks to real-time graphics. It also serves as an interactive web canvas API for handling multi-touch and mouse input to build responsive graphical user interfaces. The framework covers a broad se
Processes mouse and multi-touch input events to create interactive and responsive graphical user interfaces.
react-use is a collection of reusable state and effect hooks for managing common logic in React applications. It serves as a comprehensive library for implementing state management patterns and wrapping various browser APIs into consistent hook interfaces. The project provides a specialized toolkit for DOM interaction and browser API integration, allowing components to track element dimensions, manage cookies, and monitor hardware sensors. It includes a suite of animation and timing utilities for physics-based numeric interpolation and frame-synced state updates. Beyond basic state managemen
Implements utilities to monitor keyboard inputs, mouse movements, and touch gestures for responsive interfaces.
This repository serves as a comprehensive research platform and toolkit for advancing machine learning, quantum computing, and large-scale scientific data analysis. It provides foundational frameworks for developing complex algorithmic systems, offering the necessary infrastructure for distributed training, computational graph execution, and high-performance model development. The project distinguishes itself by integrating specialized research domains with robust, privacy-preserving methodologies. It supports diverse scientific discovery through tools for quantum simulation, physics-informed
Constructs immersive user interfaces with dynamic simulations and interactive media to enhance engagement.
Servo is a high-performance, memory-safe web rendering engine designed for cross-platform embedding. It provides a modular framework that allows developers to integrate web content rendering into native applications across desktop, mobile, and embedded systems. By enforcing strict process isolation and memory safety, the engine creates a secure execution environment for processing web content. The engine distinguishes itself through a task-based, parallelized architecture that decouples layout, style, and rendering processes to maximize responsiveness. It utilizes a hardware-abstracted graphi
Initializes a rendering context using hardware-accelerated graphics abstractions.
This project is a cross-platform messaging client that implements a secure, real-time communication protocol. It provides a comprehensive development toolkit, including a database library and messaging SDK, which allows for the creation of custom messaging applications that maintain synchronized state across multiple devices. The core architecture relies on an asynchronous event-driven model to ensure responsive performance while managing persistent local database synchronization with server-side state. The client distinguishes itself through a robust end-to-end encryption layer that supports
Triggers animated dice emojis that generate random results.
This project is an educational platform and research toolkit designed to teach deep learning through a combination of mathematical theory, visual diagrams, and executable code. It provides a comprehensive environment for building, training, and evaluating neural networks, grounding complex concepts in interactive computational notebooks that allow for hands-on experimentation. The framework distinguishes itself by interleaving theoretical foundations—including linear algebra, calculus, and probability—with practical implementations across multiple industry-standard libraries. It supports flex
Estimates the numerical score a user would assign to a specific item based on historical patterns.
Babylon.js is a JavaScript game engine and real-time graphics renderer designed for creating interactive three-dimensional visuals and applications. It functions as a web-based 3D framework and WebGL engine that enables the deployment of high-performance 3D content across various web platforms and devices. The project provides tools for web-based 3D game development, real-time graphics rendering, and the creation of browser-based interactive visualizations. It also supports the development of WebXR virtual and augmented reality experiences using standard web technologies. The framework cover
Supports the development of immersive WebXR virtual and augmented reality experiences.
PhotoSwipe is a JavaScript image gallery library used to create responsive, touch-enabled lightboxes for mobile and desktop web browsers. It functions as a framework-agnostic UI component, allowing for the integration of image viewers across different web environments without requiring specific JavaScript libraries. The library is designed as a mobile-first gallery viewer, providing a full-screen image overlay that supports native-feeling touch gestures. This includes specific optimizations for mobile devices such as swipe navigation and pinch-to-zoom interactions. The project enables full-s
Ships a responsive full-screen gallery overlay for viewing images across different devices.
Howler.js is a JavaScript library that provides a unified interface for managing audio playback across web browsers. It functions as a cross-browser audio engine, abstracting complex browser audio APIs into a consistent developer experience while ensuring reliable performance through automatic fallback mechanisms. The library distinguishes itself by offering specialized tools for spatial audio and efficient asset management. It includes a spatial audio framework that maps three-dimensional vectors to audio nodes for immersive sound positioning, alongside an audio sprite manager that allows de
Supports precise control over audio playback and synchronization for interactive user-triggered events.
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
Provides rendering pipelines and hooks to display content in virtual reality headsets.
Tasmota is a universal firmware platform for ESP8266 and ESP32 microcontrollers, designed to provide local control and management of smart home hardware. It functions as an event-driven automation controller that replaces proprietary factory firmware, allowing users to manage relays, sensors, and lighting systems without relying on external cloud services. The system is built on a modular driver architecture that enables dynamic hardware configuration and peripheral support through a web-based management interface. The platform distinguishes itself through a template-driven hardware mapping s
Captures touch events from interface elements to trigger automated responses or system actions.
ReactiveCocoa is a functional reactive programming framework and Cocoa UI binding layer. It provides a library for composing asynchronous data streams and managing application state through signals and functional operators. The framework functions as an Objective-C data binding library that links object properties and method calls to reactive streams using runtime dynamism and swizzling. It includes a utility to convert traditional key-value observation notifications into composable streams for synchronized state tracking. The project covers reactive UI programming by connecting interface el
Captures and processes user input events and control changes as reactive data streams.
Browsh is a text-based web browser and headless browser frontend that renders modern websites and web applications within a terminal emulator. It functions as a TTY web browser, allowing users to view and interact with complex web content directly from a command line interface. The project enables web navigation in environments where a graphical user interface is unavailable, such as when accessing a remote server via SSH or operating in low-bandwidth conditions. It translates browser pixels and colors into ANSI escape codes to simulate a graphical interface using text characters. The system
Provides a way to interact with web pages and forms directly through terminal input and output patterns.
Ruffle is an Adobe Flash Player emulator built to execute legacy animation and interactive content within modern web browsers and desktop environments. By utilizing a high-performance WebAssembly engine, it interprets legacy bytecode and scripting languages to render content without requiring original plugins or outdated software. The project functions as a cross-platform media player that preserves access to archived digital assets by simulating the original runtime environment. The emulator distinguishes itself through its ability to automatically detect and replace obsolete media objects o
Ruffle translates keyboard and mouse interactions into system events to maintain interactivity and pointer state within emulated environments for a seamless user experience.
A-Frame is a declarative 3D scene engine and WebXR framework used to build virtual and augmented reality experiences directly in the web browser. It utilizes an entity component system where generic objects are assigned behaviors through attachable components and lifecycle hooks. The framework allows the assembly of immersive environments using HTML-like markup to define geometries, lighting, and materials. It implements WebXR standards to ensure consistent playback across different hardware and browsers, including support for VR headsets, desktops, and mobile devices. The system covers a br
Implements WebXR standards to provide cross-platform support for VR and AR headsets in the browser.
Click is a Python framework for building command-line interfaces. It provides a declarative approach to defining command structures, allowing developers to map functions to command-line arguments, options, and nested groups using decorators. The framework handles the complexities of parameter parsing, type validation, and help documentation generation automatically. The project distinguishes itself through its hierarchical context system, which propagates configuration and state across nested commands, and its environment-aware parameter resolution that prioritizes command-line inputs, enviro
Creating interactive command-line applications that prompt for sensitive input, display progress bars, and handle real-time user keystrokes.