22 个仓库
The process of defining custom layout, event, and rendering logic for specialized UI components.
Distinct from Custom Widget Frameworks: Focuses on the implementation of the widget itself rather than the framework for managing a collection of dashboard widgets
Explore 22 awesome GitHub repositories matching user interface & experience · Custom Widget Implementation. Refine with filters or upvote what's useful.
Grist is a relational spreadsheet platform that combines the flexibility of a spreadsheet with the power of a relational database. At its core, it manages structured data across multiple linked tables, using a relational database engine to organize information while providing a familiar grid interface. The platform supports Python-based formulas for complex calculations and data transformations, with automatic recalculation when referenced cells change. The system is designed for self-hosted deployment, storing data in either portable SQLite files or enterprise-grade PostgreSQL databases. It
Packages visual plugins to serve directly from the application without requiring external dependencies.
EmDash is an open-source content management system built on Astro that combines a visual admin panel with a plugin-driven architecture and server-side rendering. It provides a complete content management system with structured content modeling, a rich text editor using Portable Text format, and a TypeScript API for type-safe content queries. The system supports authentication through passkeys, OAuth 2.1, and external providers, with role-based access control and fine-grained permission scopes. What distinguishes EmDash is its plugin development framework, which supports both native plugins ru
Inserts pre-built content blocks into documents via a slash command for reusable patterns.
Druid is a native user interface toolkit and 2D graphics engine for the Rust programming language. It functions as a retained-mode, data-driven framework for building graphical user interfaces that run across Linux, macOS, and web browsers via WebAssembly. The toolkit distinguishes itself through a data-first approach to UI design, utilizing lenses to isolate subsets of global application state and synchronize them with specific widgets. This allows the visual layout to update automatically when the underlying data model changes. Its capability surface includes a constraint-based box layout
Allows for the design of specialized interface components by implementing custom logic for layout, events, and rendering.
CalendarView is a high-performance Android UI component designed for displaying dates and navigating chronological views. It functions as a canvas-based widget that utilizes direct drawing instead of standard list views to minimize memory usage and ensure fast rendering of complex date interfaces. The component provides a programmable interface for switching between month, week, year, and lunar views. It differentiates itself through a pluggable customization system that allows developers to override the drawing logic for dates, text, event markers, and selection layouts. The library support
Implements a canvas-based drawing system to ensure fast rendering and low memory overhead for complex date grids.
AndroidNote is a technical knowledge base and reference resource for Android development. It provides comprehensive guidance on application architecture, custom view development, and advanced graphics programming. The project is distinguished by its depth in visual implementation, covering pseudo-3D perspective projections via virtual cameras and complex 2D rendering using Bézier curves and PorterDuff color blending. It also provides detailed methodologies for app modularization and the management of internal libraries through private Maven repositories and JitPack. The reference surface ext
Implements specialized reusable widgets such as curved seek bars and rounded layouts.
litegraph.js is a JavaScript dataflow framework and visual node graph engine used to define programmable logic and data flow. It provides a node-based visual programming tool for designing complex logic through connected functional blocks. The library allows for the creation of hierarchical logic by nesting multiple nodes into recursive subgraphs. It also supports the development of custom node types with unique inputs and outputs, as well as custom widgets and live views that can hide the underlying graph structure to present a visual interface. The engine enables the execution of logic gra
Provides custom UI controls inside nodes for real-time parameter manipulation during graph execution.
PyQt-Fluent-Widgets is a Python GUI component library and framework extension that provides a set of pre-styled UI components following modern Fluent design standards. It replaces standard PyQt controls with a specialized widget set designed for building contemporary desktop applications. The library distinguishes itself by offering advanced layout patterns, such as waterfall grids, loading skeleton screens, and split-view application shells. It provides a comprehensive collection of high-level interface elements, including navigation menu systems, configuration setting cards, and complex vie
Offers a specialized set of interface elements that replace standard PyQt controls with modern styles.
Riverpod is a reactive state management framework for Dart that manages application state through providers which automatically track dependencies and rebuild dependents when values change. It functions as an asynchronous data caching library, caching results of async operations and exposing loading, error, and data states to widgets without manual future handling. The framework includes a provider composition system that combines multiple providers into derived values that recompute automatically when any dependency changes, along with code generation for state providers that reduces boilerpl
Extracts widget logic into reusable functions that can be shared across different widgets without code duplication.
Android-Bootstrap is a framework for Android application design that implements the Bootstrap design language and layout principles. It consists of a UI component library, a brand theme engine, and an icon integration toolkit to build mobile interfaces with a consistent visual theme. The framework utilizes a customizable interface to define global visual styles, colors, and typography across all application components. It includes a specialized system for mapping typeface files and unicode characters to scalable graphics within the interface. The project provides a collection of styled widge
Provides styled container widgets and selectable dropdown menus to wrap content consistently.
PyQt is a cross-platform GUI toolkit and desktop UI framework that provides Python bindings for the Qt framework. It serves as a widget library for creating graphical user interfaces that maintain consistent behavior and appearance across Windows, macOS, and Linux. The framework enables the development of desktop applications through a collection of pre-built interface components and layout managers. It supports the creation of specialized interface elements with custom styling, window animations, and the integration of web browser components to load and execute scripts alongside native eleme
Allows developers to define custom layout, event, and rendering logic for specialized UI components.
SQLiteStudio is an open-source graphical tool for browsing, editing, and managing SQLite database files. It combines a full-featured SQL editor with syntax highlighting, a visual database schema designer for creating entity-relationship diagrams, and a plugin-based extensibility platform that allows adding custom functionality through C/C++, JavaScript, Tcl, or Python. The application distinguishes itself through its multi-language scripting engine, which embeds JavaScript, Tcl, and Python interpreters to enable user-defined functions and scripts within SQL queries. It supports encrypted data
Ships a mechanism to register custom editors for specialized data types in the table grid.
Mixxx is a free, open-source DJ application that runs on Windows, macOS, and Linux, providing a complete platform for mixing audio tracks with beat detection, key analysis, and real-time effects during live performances. It functions as a digital mixer that supports MIDI controller mapping, timecode vinyl control, and custom skin layouts, while also serving as a live performance recording tool that can capture mixes to audio files and broadcast them to internet radio servers in real time. The application distinguishes itself through a comprehensive architecture that coordinates automated play
Instantiates complex widgets like the library only once and reparents them wherever they appear in the skin.
CKEditor 4 is a browser-based WYSIWYG rich text editor that enables users to create and format HTML content directly in the browser. It operates on a plugin-based architecture with a configurable toolbar system, DOM-based content editing, and an event-driven lifecycle, all delivered through a CDN-based distribution model. The editor supports skin-based theming and includes a legacy plugin compatibility layer for backward compatibility. The editor distinguishes itself as a cross-platform framework that integrates natively with Angular, React, Vue, Electron, Android, and iOS environments. It of
Provides a framework for creating reusable, self-contained content blocks within the editor.
SwitchButton 是一个可自定义的切换开关小部件,用于创建具有可配置标签和颜色的动画开/关开关。它作为交互式表单输入,允许用户使用状态驱动的组件在两个对立选项之间切换。 该小部件设计为手势感知,捕获水平滑动动作以触发状态更改,同时允许垂直滚动事件传递到父容器。 该组件支持为切换滑块和背景轨道定义自定义颜色、尺寸和圆角半径。它包括管理切换状态、配置标签文本和调整动画速度的功能。
Implements custom layout and rendering logic for a specialized animated toggle switch.
FUXA is a web-based SCADA system and industrial HMI software designed for monitoring and controlling industrial hardware. It functions as an industrial protocol gateway and data historian, enabling the ingestion of telemetry from programmable logic controllers and sensors through standard industrial communication protocols. The project features a flow-based automation engine that allows for the construction of complex operational logic using a visual node-and-edge environment. It utilizes SVG-based rendering for its graphical interfaces, allowing users to develop custom HMI widgets and dashbo
Provides a system for implementing custom interactive HMI widgets with specific rendering and event logic using SVG and JavaScript.
本项目是一个实现模式和源代码示例的集合,用于使用各种 Python 界面库构建桌面应用。它为多个框架提供了参考实现和架构模式,包括 PyQt、PySide、Tkinter、Kivy 和 Streamlit。 该仓库的特色在于为不同的界面类型提供专业示例,范围从专业桌面软件和原生窗口到响应式 Web 数据仪表板和数据科学工具。它包括针对跨平台 UI 模式(如 MV 布局和异步后台任务执行)的特定参考资料。 该项目涵盖了广泛的功能,包括布局管理、带动画的自定义组件开发,以及用于实时可视化的 GPU 加速渲染。它还演示了诸如基于代理的过滤和表格数据样式等数据管理技术,以及将源代码打包为带有嵌入资产的可分发可执行文件的部署工作流。 这些示例进一步解决了功能性 UI 组件(如输入验证、导航菜单和系统托盘集成),以及用于用户身份验证和基于角色的访问控制的安全实现。
Demonstrates how to integrate custom-defined widgets into visual layout tools via widget promotion.
Apostrophe is an open-source Node.js headless content management system that delivers structured content through REST APIs while providing a visual in-context page editor for live editing. It is built on a module-based plugin architecture that extends CMS functionality through reusable modules, each encapsulating logic, configuration, and templates. The system uses schema-driven content modeling to define data structures and validation rules through configurable schemas and custom field types, with all content stored as flexible JSON-like documents in MongoDB. The platform distinguishes itsel
Builds reusable content blocks with custom schemas, templates, and player logic for page areas.
YASB is a customizable status bar framework and desktop shell component for Windows. It provides a toolkit for building personalized information bars using a modular class-based widget architecture and CSS-based styling. The framework distinguishes itself through deep integration with Windows tiling window managers, allowing users to display active workspaces, tiling layouts, and window focus states. It also features automated visual consistency by generating system color schemes based on the current desktop wallpaper. The project covers a wide range of capabilities, including real-time syst
Provides a class-based architecture for implementing personalized status bar elements with custom layout and rendering logic.
该项目为 C++ 开发提供教学和参考资料,重点关注 Qt 框架。它作为网络编程、跨平台构建、多线程执行和 GUI 自定义的指南和示例库。 该集合具有用于构建用户界面和通过自定义绘制和样式自定义小部件的专门模式。它还为实现客户端-服务器通信和使用同步原语管理并发任务提供了参考。 该项目涵盖了广泛的功能,包括跨平台应用程序部署、静态和动态归档的库管理,以及用于进程生命周期控制和进程间通信的系统编程。它还包括用于高 DPI 显示管理和硬件驱动程序版本检索的实用程序。
Provides specialized patterns for custom painting to create effects like acrylic blur and themed scrollbars.
该项目是一个函数式代码示例和可运行演示的参考库。它提供了使用浏览器 API、CSS 特性、DOM 操作和 Web 组件的实现指南及实用代码片段。 该集合展示了现代样式能力的实时演示,包括高级布局模式和绘图 API。它还包含使用 Shadow DOM 结构构建可重用自定义元素的参考示例,用于模块化用户界面开发。 该库涵盖了广泛的浏览器功能,包括具有实时视频帧修改功能的媒体流处理、窗口与 iframe 之间的上下文间通信模式,以及程序化 DOM 元素操作。它还提供了设备硬件集成的示例,例如折叠屏的姿态检测,以及用于联系人选择等任务的原生系统接口桥接。 该仓库包含旨在在实时浏览器环境中执行的 JavaScript 示例。
Shows how to create visual highlights and decorative elements using specialized CSS painting attributes.