22 repository-uri
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 este un widget de tip toggle switch personalizabil pentru crearea de comutatoare on/off animate, cu etichete și culori configurabile. Servește ca un input de formular interactiv care permite utilizatorilor să comute între două opțiuni opuse folosind o componentă bazată pe stare. Widget-ul este conceput să fie conștient de gesturi, capturând mișcările orizontale de swipe pentru a declanșa schimbări de stare, permițând în același timp evenimentelor de scroll vertical să treacă către containerul părinte. Componenta suportă definirea de culori, dimensiuni și raze de colț personalizate atât pentru butonul de toggle, cât și pentru track-ul de fundal. Include capabilități pentru gestionarea stărilor de toggle, configurarea textului etichetei și ajustarea vitezelor de animație.
Implements custom layout and rendering logic for a specialized animated toggle switch.
FUXA este un sistem SCADA bazat pe web și software HMI industrial conceput pentru monitorizarea și controlul hardware-ului industrial. Funcționează ca un gateway pentru protocoale industriale și un istoric de date, permițând ingestia de telemetrie de la controllere logice programabile (PLC) și senzori prin protocoale standard de comunicație industrială. Proiectul dispune de un motor de automatizare bazat pe fluxuri, care permite construirea unei logici operaționale complexe folosind un mediu vizual de tip nod-și-muchie. Utilizează randarea bazată pe SVG pentru interfețele grafice, permițând utilizatorilor să dezvolte widget-uri HMI personalizate și dashboard-uri care se sincronizează cu telemetria dispozitivelor în timp real. Sistemul acoperă o gamă largă de capabilități operaționale, inclusiv gestionarea alarmelor cu alerte bazate pe praguri, arhivarea datelor de tip time-series în baze de date relaționale sau specializate și execuția de logică personalizată printr-un motor JavaScript integrat. Oferă, de asemenea, instrumente pentru configurarea achiziției de date, exportul și importul stării proiectului și controlul accesului bazat pe token-uri pentru securitatea administrativă. FUXA poate fi implementat ca o aplicație full-stack pe diverse sisteme de operare sau ca un binar headless pe dispozitive embedded.
Provides a system for implementing custom interactive HMI widgets with specific rendering and event logic using SVG and JavaScript.
Acest proiect este o colecție de modele de implementare și exemple de cod sursă pentru construirea de aplicații desktop folosind diverse biblioteci de interfață Python. Oferă implementări de referință și modele arhitecturale pentru mai multe framework-uri, inclusiv PyQt, PySide, Tkinter, Kivy și Streamlit. Repository-ul se distinge prin oferirea de exemple specializate pentru diverse tipuri de interfețe, variind de la software desktop profesional și ferestre native până la dashboard-uri de date web reactive și instrumente de data science. Include material de referință specific pentru modele UI cross-platform, cum ar fi layout-urile model-view și execuția asincronă a sarcinilor în fundal. Proiectul acoperă o gamă largă de capabilități, inclusiv gestionarea layout-ului, dezvoltarea de widget-uri personalizate cu animații și randarea accelerată GPU pentru vizualizări în timp real. De asemenea, demonstrează tehnici de gestionare a datelor, cum ar fi filtrarea bazată pe proxy și stilizarea datelor tabelare, precum și fluxuri de lucru de deployment pentru împachetarea codului sursă în executabile distribuibile cu active încorporate. Exemplele abordează în continuare componente UI funcționale, cum ar fi validarea input-ului, meniurile de navigare și integrarea în system tray, alături de implementări de securitate pentru autentificarea utilizatorilor și controlul accesului bazat pe roluri.
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.
Acest proiect oferă materiale didactice și de referință pentru dezvoltarea în C++, concentrându-se pe framework-ul Qt. Acesta servește drept ghid și bibliotecă de exemple pentru programarea în rețea, build-uri cross-platform, execuție multithreaded și personalizarea GUI. Colecția prezintă tipare specializate pentru construirea de interfețe utilizator și personalizarea widget-urilor prin desenare și stilizare personalizată. De asemenea, oferă o referință pentru implementarea comunicării client-server și gestionarea sarcinilor concurente folosind primitive de sincronizare. Proiectul acoperă o gamă largă de capabilități, inclusiv implementarea aplicațiilor cross-platform, gestionarea bibliotecilor pentru arhive statice și dinamice și programarea de sistem pentru controlul ciclului de viață al proceselor și comunicarea între procese. Include, de asemenea, utilitare pentru gestionarea afișajelor high-DPI și preluarea versiunilor driverelor hardware.
Provides specialized patterns for custom painting to create effects like acrylic blur and themed scrollbars.
This project is a reference library of functional code samples and runnable demonstrations. It provides implementation guides and practical snippets for using browser APIs, CSS features, DOM manipulations, and web components. The collection features live demonstrations of modern styling capabilities, including advanced layout patterns and painting APIs. It also includes reference samples for building reusable custom elements using shadow DOM structures for modular user interface development. The library covers a wide range of browser capabilities, including media stream processing with real-
Shows how to create visual highlights and decorative elements using specialized CSS painting attributes.