25 مستودعات
Interfaces for supplying custom geometry or entity data to the rendering pipeline.
Distinct from Custom Shape Rendering: Distinct from Custom Shape Rendering: focuses on the interface for supplying arbitrary renderable data rather than just drawing shapes.
Explore 25 awesome GitHub repositories matching graphics & multimedia · Custom Renderable Interfaces. Refine with filters or upvote what's useful.
TrafficMonitor is a system performance monitor that provides a floating desktop window and taskbar overlay to track real-time CPU, memory, and network speed metrics. It functions as a customizable system overlay and hardware resource tracker, displaying live statistics and user-defined data through transparent desktop widgets. The project uses a plugin-based system and dynamic-link libraries to extend data sources and add new hardware tracking capabilities. It includes a theme engine that reads external configuration files to apply custom skins, fonts, and background colors to the interface.
Draws custom graphics and text in the display area using device contexts with dark-mode awareness.
Floating UI is a JavaScript positioning library and layout engine designed to calculate the exact coordinates for floating interface elements such as tooltips, popovers, and dropdowns. It functions as a floating element orchestrator that ensures these components remain visible and aligned relative to a reference element. The library features a platform-abstraction layer that decouples positioning logic from the document object model. This allows the engine to support both standard web environments and non-DOM targets, including canvas or graphics buffers, through custom coordinate and measure
Allows the definition of custom coordinate and measurement logic for rendering in canvas or graphics buffers.
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
Executes a sequential frame-based loop to coordinate physics updates and rendering calls.
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 an interface for supplying custom geometry or entity data to the rendering pipeline.
DearPyGui is a GPU-accelerated, immediate-mode graphical user interface framework for Python. It provides a high-performance toolkit for building interactive desktop applications by leveraging native hardware-accelerated rendering backends across multiple operating systems. By utilizing an immediate-mode execution model, the library offers direct control over the rendering loop and element state, enabling the creation of responsive, dynamic interfaces. The framework distinguishes itself through its ability to handle complex, high-frequency visual updates, making it suitable for real-time data
Allows running user-defined code during every frame to maintain manual control over the update cycle.
wavesurfer.js is a WebAudio playback library and interactive waveform visualizer that renders audio data onto an HTML5 canvas. It enables users to see and navigate sound files through a visual representation of audio peaks, allowing for direct seeking and playback control within a web browser. The project is distinguished by its flexible rendering model, which can use precomputed peak data to display waveforms without downloading or decoding the full audio file. It utilizes a plugin-based extension model to integrate advanced tools such as spectrograms, interactive audio timelines, and real-t
Allows developers to override default drawing logic using raw peak data and a canvas context.
tsparticles is a JavaScript particle animation library and configuration-driven visual effects engine used to create customizable effects, confetti, and interactive backgrounds using HTML5 Canvas. It functions as a plugin-based graphics engine and a web component animation engine, allowing for the generation of complex behaviors and themes through structured JSON configuration objects. The project provides a cross-framework animation wrapper with dedicated compatible components for integrating effects into React, Vue, Angular, and Svelte. Its modular architecture allows users to extend the en
Uses a high-performance requestAnimationFrame render loop to synchronize physics and redraw the HTML5 canvas.
F2 is a cross-platform charting engine and grammar-based visualization tool designed to render interactive data visualizations. It functions as a declarative system that allows users to build complex charts by defining the relationships between data dimensions and visual encoding channels. The framework is specifically optimized for mobile data visualization, providing a toolkit for creating touch-optimized charts. It supports custom data visualization styling, enabling the use of personalized shapes and animations to define a unique visual identity. The engine provides a platform-agnostic r
Provides low-level pixel-space drawing routines to implement bespoke series and custom visualizations.
fl_chart is a data visualization library and UI component framework for Flutter. It provides a system of reusable graphical widgets for creating interactive, customizable quantitative data visualizations. The framework supports a variety of chart types, including line, bar, pie, donut, scatter, radar, and candlestick views. It allows for the creation of complex visualizations such as layered data segments and financial charts. The library includes capabilities for interactivity and visual refinement, such as touch event handling, data tooltips, and state animations. It also provides tools fo
Uses low-level canvas drawing routines to render chart series and data points with high precision.
Hotwire Turbo is a server-driven navigation and HTML streaming framework that intercepts link clicks and form submissions to fetch pages in the background and replace content without full browser reloads. It provides a Turbo Frame component that scopes page regions into independent contexts, enabling partial page updates where only a specific area of the page navigates or loads content. The framework includes a page cache and morph system that stores recently visited pages for instant restoration and applies minimal DOM changes on refresh, preserving scroll position and element state. The fra
Intercepts frame rendering to delay and perform animations or tasks before resuming.
melonJS is a lightweight HTML5 game engine for building 2D games in the browser using JavaScript. It provides a complete framework for sprite animation, tilemap loading, physics simulation, input handling, and audio playback, with a unified rendering system that automatically switches between WebGL and Canvas2D backends without code changes. The engine distinguishes itself through several integrated capabilities. It features a per-sprite shader pipeline for custom fragment shader effects, a SAT-based collision engine with swappable physics adapters (including built-in SAT, Matter.js, and Plan
Allows overriding the draw method of renderable objects to execute arbitrary 2D drawing commands.
Vuido is a framework for building native desktop applications for Windows, macOS, and Linux using Vue.js components, without requiring Electron or Chromium. It maps Vue components directly to native widgets from the libui library, creating lightweight applications that run on a single-threaded event loop and compile templates at build time for optimized runtime performance. The framework provides a complete Vue.js component-to-native bridge, enabling two-way data binding via v-model, component-based window composition, and platform-specific package generation for distributing executables. It
Provides a blank canvas widget for custom 2D graphics drawing and mouse event handling.
Compressorjs is a client-side image compression library that reduces file sizes in the browser before upload, using the HTML Canvas API to re-encode images into smaller File or Blob objects. It supports JPEG, PNG, and WebP formats, with configurable quality and dimension controls to balance file size and visual fidelity. The library distinguishes itself through several integrated capabilities. It reads Exif orientation metadata from JPEG images and automatically rotates or flips the canvas to ensure correct display after compression. An AbortController integration allows cancellation of an in
Provides beforeDraw and afterDraw callbacks for injecting custom canvas operations like watermarks.
WebGLStudio.js هي بيئة تطوير متكاملة (IDE) ومحرر رسومات قائم على المتصفح لإنشاء مشاهد ثلاثية الأبعاد، وقوام، ورسوم متحركة باستخدام WebGL. تعمل كبيئة تصميم مكانية حيث يمكن للمستخدمين ترتيب النماذج ثلاثية الأبعاد والأصول مباشرة داخل المتصفح لبناء تجارب مرئية تفاعلية. يتميز المشروع بمحرر رسوم بيانية للتظليل (shader graph) يتيح تطوير تأثيرات عرض مخصصة وتظليلات ما بعد المعالجة من خلال واجهة قائمة على العقد. كما يتضمن نظام ملفات افتراضياً لتنظيم النماذج ثلاثية الأبعاد، والصوت، والقوام، ويستخدم تسلسل حالة URL لمشاركة تكوينات المشروع بالكامل عبر رابط واحد. يدعم المحرر سلوكيات الكائنات المخصصة من خلال نظام كيانات قائم على المكونات، ويوفر واجهة برمجة نصية متكاملة لتعديل خط أنابيب العرض وتنفيذ التعليمات البرمجية داخل المتصفح. يمكن للمستخدمين إدارة أصول المشروع، وتأليف تظليلات مخصصة، وتصدير المشاهد لتضمينها في مواقع الويب أو التوزيع المحلي.
Provides the ability to modify the underlying rendering process by rewriting pipeline logic via scripting.
Panda3D هو محرك ألعاب عبر الأنظمة الأساسية ونظام عرض رسومات ثلاثي الأبعاد تم تطويره لـ Python و C++. يعمل كإطار عمل شامل لبناء تطبيقات ثلاثية الأبعاد تفاعلية، ويوفر محاكياً فيزيائياً في الوقت الفعلي وأداة خط أنابيب أصول ثلاثية الأبعاد متخصصة. يتميز المحرك بدمج نواة C++ عالية الأداء مع روابط لغة Python القابلة للتشغيل البيني. يستخدم بنية رسم بياني للمشهد لتنظيم الكائنات ثلاثية الأبعاد ويوفر نظام تحويل أصول قائم على خط الأنابيب لتحسين النماذج والقوام للتحميل في وقت التشغيل. تتضمن إمكانياته بدائيات رسومات منخفضة المستوى لتنفيذ تظليل GPU مخصص، وعرض صوت ثلاثي الأبعاد، وتكامل الواقع الافتراضي لاتصال الأجهزة الطرفية والمتتبعين. يتميز إطار العمل أيضاً بأدوات لتغليف الملفات الثنائية للتطبيقات متعددة المنصات وتوصيف أداء الإطارات القائم على الشبكة. يوفر المشروع طبقة تجريد أجهزة موحدة لضمان سلوك متسق عبر أنظمة التشغيل وبيئات الأجهزة المختلفة.
Exposes low-level graphics primitives and custom rendering logic for creating specialized visual effects.
Reagent هو إطار عمل لبناء واجهات مستخدم الويب باستخدام ClojureScript و React.js. يتيح نهج البرمجة الوظيفية لتصميم واجهة المستخدم التصريحية، حيث يتم تعريف هياكل HTML وتسلسلات هرمية للمكونات باستخدام بناء جملة Hiccup القائم على المتجهات بدلاً من JSX. يتميز المشروع من خلال نظام إدارة حالة تفاعلي يعتمد على الذرات (atoms). يتتبع المكونات التي تقوم بإلغاء مرجعية ذرات حالة معينة لتشغيل إعادة العرض التلقائي ويوفر مؤشرات حالة لعزل التحديثات إلى مسارات معينة لذرة حالة أكبر. كما يتضمن أدوات لتغليف مكونات JavaScript الأصلية ومكتبات الطرف الثالث لضمان بقائها متوافقة مع دورة العرض الوظيفية. يغطي إطار العمل مجموعة واسعة من القدرات، بما في ذلك التوفيق بين DOM الافتراضي، وإدارة دورة الحياة للآثار الجانبية والتنظيف، وتحسين أداء العرض من خلال تجميع التحديثات وتخزين الحسابات مؤقتاً (memoization). كما يوفر أدوات لعرض جانب الخادم لسلاسل HTML الثابتة، ومشاركة الحالة العالمية عبر السياق، وأساسيات الأمان لتعقيم محتوى HTML.
Converts data forms into elements compatible with non-DOM targets like mobile apps.
picom is a lightweight X11 compositor that adds visual enhancements to the X Window System desktop, including configurable drop shadows behind windows, per-window transparency, and composite effects such as blur and fading. It manages window opacity so that content behind windows can become partially visible, and it renders shadows to improve the sense of depth and separation between overlapping windows. Under the hood, picom uses a damage-event-driven render loop that redraws only the regions of the screen that have changed, minimising unnecessary full-frame renders. A double-buffered compos
Triggers partial screen redraws only for regions that reported damage, minimising unnecessary full-frame renders.
Plotters is a data visualization library for the Rust programming language used to create 2D and 3D charts, plots, and mathematical visualizations. It functions as a multi-backend rendering engine and coordinate mapping framework that translates raw data values into pixel coordinates through customizable chart contexts. The library distinguishes itself through its ability to export graphics to multiple formats, including SVG, BitMap, and HTML5 canvas. It provides specific capabilities for 3D graphics plotting, featuring adjustable camera viewpoints and projection matrices to manage spatial da
Allows construction of new visual elements by combining basic lines, text, and circles into logical groups.
SmoothProgressBar هي مكتبة شريط تقدم مخصصة لنظام Android مصممة لعرض مؤشرات تحميل غير محددة دائرية وأفقية قابلة للتخصيص. تعمل كمكون واجهة مستخدم قابل لإعادة الاستخدام وامتداد للعرض يستخدم لعرض حالة العمليات الخلفية داخل تطبيقات Android. توفر المكتبة رسوماً متحركة سلسة وأنماطاً مخصصة لإنشاء حالات تحميل انسيابية. تدعم التنسيقات الخطية والدائرية، مما يسمح بتحديد ألوان وأنماط معينة لتتناسب مع نظام تصميم تطبيق الهاتف المحمول.
Utilizes custom drawing routines and a manual draw loop for high-performance rendering of custom progress shapes.
verlet-js is a JavaScript 2D physics engine and Verlet integration library used to simulate point masses and geometric constraints. It functions as a computational tool for calculating particle movement and structural interactions to create stable physics animations in browser environments. The project acts as a geometric constraint solver that enforces fixed distances and angles between interconnected nodes. This allows for the modeling of complex physical shapes and structures, such as cloth or rigid bodies, by iteratively adjusting particle positions. The engine includes a canvas animatio
Implements sequential update cycles that synchronize physics logic and screen redrawing within the browser.