8 dépôts
Layout systems that position child views with fixed, sticky, or staggered behaviors during scrolling in a RecyclerView.
Distinct from View Layouts: Distinct from View Layouts: focuses on scroll-aware positioning behaviors like sticky headers and staggered grids, not general view arrangement.
Explore 8 awesome GitHub repositories matching user interface & experience · Scrollable View Layout Systems. Refine with filters or upvote what's useful.
vlayout is an Android RecyclerView extension framework that uses pluggable layout helpers to mix grid, list, sticky, staggered, and fixed layouts within a single scrollable view. It provides a modular layout delegation system where each section of the RecyclerView is assigned a dedicated layout helper that manages its own measurement, placement, and decoration, enabling complex heterogeneous content displays. The framework extends RecyclerView's LayoutManager to delegate layout logic to these modular helper components, supporting features like sticky headers that remain visible at the top dur
Provides a modular layout delegation system for mixing grid, list, sticky, staggered, and fixed layouts within a single RecyclerView.
Flutter Deer is a Flutter practice project that demonstrates realistic application patterns across Android and iOS. It showcases how to structure a Flutter app with modular routing, reactive state management using Provider, and a centralized network layer built with Dio for structured API calls and error handling. The project also includes integration and accessibility testing that simulates real user interactions to verify UI behavior and screen-reader compatibility. The project differentiates itself by providing a comprehensive showcase of custom UI components and interactions, including ca
Combines Sliver widgets to create headers, lists, and grids that scroll together with synchronized effects.
charts.css is a CSS-driven framework designed to transform semantic HTML into accessible data visualizations without relying on JavaScript. It functions as a charting library that uses standard HTML structures, such as tables and lists, to render graphs while maintaining full compatibility with screen readers. The project distinguishes itself by using CSS variables to map numeric data to visual dimensions and utility classes to control chart types and layouts. It supports a wide range of visual styles, including 3D effects, reflection effects, and customized color palettes integrated via a br
Provides scrollable view systems to navigate large datasets within a restricted visible chart area.
Flukit est une suite de toolkits fonctionnels pour Flutter, fournissant des wrappers d'animation, des outils de débogage de mise en page, des kits d'interaction de défilement et une bibliothèque de composants UI réutilisables et d'utilitaires visuels. Le projet se distingue par un outil de débogage de mise en page dédié pour inspecter les contraintes parentes et capturer les logs système directement dans l'interface. Il fournit également des wrappers d'animation spécialisés pour faire pivoter, mettre à l'échelle et faire glisser des composants enfants, ainsi qu'un kit d'interaction de défilement incluant des mécanismes de pull-to-refresh, des carrousels et des en-têtes sliver flexibles. La bibliothèque couvre un large éventail de capacités, incluant des effets visuels comme le filigrane de contenu et les dégradés, ainsi que des fonctionnalités interactives comme les vues zoomables et l'interception d'événements tactiles. Elle inclut un système pour mettre en cache les composants enfants dans les zones défilables et une file d'attente de notifications synchronisée pour gérer les mises à jour d'état pendant les phases de mise en page.
Implements flexible sliver headers that expand or contract in response to user pull gestures.
BoomMenu est une bibliothèque de menu radial Android et un framework d'animation d'interface utilisateur conçu pour créer des boutons d'action flottants extensibles. Il fournit un ensemble de composants de vue personnalisés programmables qui révèlent des éléments de sous-menu selon des motifs radiaux, horizontaux ou verticaux en utilisant des transformations 3D. La bibliothèque se distingue par un moteur d'animation à transformation 3D qui utilise l'assouplissement non linéaire, la mise à l'échelle et la rotation pour créer de la profondeur lors de l'expansion du menu. Elle inclut des modèles de mise en page spécialisés pour les menus de type partage et un système de mappage basé sur les coordonnées pour un déplacement précis des éléments. Le framework couvre un large éventail de fonctionnalités d'interface utilisateur, y compris la construction de menus flexibles avec des boutons étiquetés, des mises à jour de contenu dynamiques et l'assombrissement de l'arrière-plan pour la mise au point visuelle. Il prend en charge l'intégration à travers divers composants Android tels que les barres d'action, les fragments et les vues défilantes, tout en fournissant des outils pour le positionnement par glisser-déposer et le contrôle d'état programmatique. Pour maintenir les performances, le projet implémente un cache de ressources de recyclage de vue pour réutiliser les instances de boutons et réduire la création d'objets pendant les cycles d'expansion.
Manages background transparency and item resetting when the radial menu is used within scrollable views.
ScrollableGraphView est une bibliothèque de visualisation de données Swift et un framework de traçage iOS utilisé pour rendre des jeux de données numériques discrets sous forme de graphiques interactifs. Il fournit un composant d'interface utilisateur défilant qui visualise les points de données en utilisant un système de coordonnées avec des mises en page et des styles configurables. Le framework se caractérise par son adaptation d'échelle de graphique, qui ajuste automatiquement l'axe vertical pour s'adapter aux points de données visibles au fur et à mesure que l'utilisateur fait défiler. Il prend en charge le rendu de données en temps réel, permettant aux vues graphiques de se mettre à jour instantanément à mesure que les jeux de données sous-jacents changent via des transitions animées. La bibliothèque couvre une variété de types de tracés, incluant les tracés linéaires, en barres et en points, et prend en charge le traçage multi-séries pour afficher plusieurs séries de données sur un seul graphique. Des capacités supplémentaires incluent l'étiquetage des points de données sur l'axe X, le style de graphique personnalisé et l'utilisation de marqueurs de ligne de référence pour mettre en évidence des seuils ou des valeurs de base spécifiques.
Provides a scrollable UI component that automatically adjusts the vertical axis to fit visible data points as the user scrolls.
Cursive est une boîte à outils d'interface utilisateur de terminal multiplateforme et un framework pour construire des applications interactives en Rust. Il fournit un système modulaire pour créer des interfaces graphiques basées sur du texte, utilisant un moteur dédié pour gérer la boucle d'affichage principale et les hiérarchies de vues. La boîte à outils dispose d'une couche d'abstraction agnostique du backend pour garantir un rendu et une gestion des entrées cohérents sur différents systèmes d'exploitation. Elle se distingue par un moteur de thème basé sur une palette qui prend en charge le chargement de thèmes au moment de l'exécution et le rendu en couleurs réelles (true color), ainsi que la capacité de générer des hiérarchies d'interface utilisateur directement à partir de fichiers de configuration. Le framework couvre un large éventail de capacités, notamment la gestion de mise en page complexe avec des panneaux divisés et des onglets, et une variété de composants interactifs tels que des boîtes de dialogue modales, des indicateurs de progression et des listes sélectionnables. Il prend en charge le rendu de contenu riche pour les images et la coloration syntaxique, et emploie un système de routage d'événements à cycle de focus pour gérer la navigation au clavier et les rappels globaux. La gestion de l'état est traitée via des mises à jour d'interface utilisateur asynchrones et un accès basé sur des identifiants, permettant aux développeurs de modifier dynamiquement des vues spécifiques à partir de tâches en arrière-plan.
Wraps content in scroll views to control positioning and handle scrolling events.
toolong est une visionneuse de logs de terminal et un gestionnaire de logs TUI conçu pour surveiller les flux de logs en direct et naviguer dans de grands fichiers de logs. Il fonctionne comme un agrégateur de logs et un formateur JSONL, capable de fusionner plusieurs fichiers de logs en une seule vue chronologique en détectant automatiquement les horodatages. L'application prend en charge la visualisation de données structurées en affichant joliment les fichiers JSONL et en appliquant une coloration syntaxique aux modèles de logs de serveurs web courants. Elle gère les données à grande échelle efficacement via des vues défilantes de taille virtuelle, permettant aux utilisateurs d'ouvrir des logs compressés ou des fichiers de toute taille sans charger l'intégralité du document en mémoire. Le système inclut des capacités pour suivre les flux de logs (tailing), effectuer une correspondance de texte floue (fuzzy matching) et gérer la navigation via un modèle d'écran basé sur une pile. Il fournit également une palette de commandes pour découvrir les fonctions de l'application et prend en charge des éléments interactifs comme des liens cliquables et des infobulles.
Provides scrollable views for terminal content, allowing the navigation of data larger than the physical window.