32 个仓库
Systems for managing the sequence, traversal, and directional movement between slides or nested slide structures.
Explore 32 awesome GitHub repositories matching user interface & experience · Navigation and Flow Controllers. Refine with filters or upvote what's useful.
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
Organize content into nested vertical stacks to enable multi-directional navigation.
fullPage.js is a JavaScript full-screen scrolling library and layout engine used to create websites composed of vertical sections and horizontal slides that snap to the viewport. It provides a system for organizing web content into full-screen pages with automatic snapping behavior. The library distinguishes itself through a WebGL transition framework and visual storytelling tools, enabling cinematic effects such as 3D rotations, parallax backgrounds, fading, and water distortion during navigation. It also features a responsive adaptation system that can switch from automatic snapping to stan
Converts horizontal slides into vertical sections when the page enters a responsive mobile mode.
This project is an LLM-powered presentation generator and HTML slide deck framework designed to produce single-file presentations. It combines an AI-driven generation system with a playback engine that utilizes WebGL-accelerated rendering for high-performance visual storytelling. The system is distinguished by its focus on design system enforcement, utilizing a validator to ensure layouts adhere to specific typographic and structural rules. It includes a specialized AI visual asset pipeline that generates context-aware imagery and transforms raw screenshots into polished assets through progra
Adapts raw captures into presentation assets using programmatic scaling and themed background canvases.
SwifterSwift is a collection of Swift extensions designed to reduce boilerplate code during the development of iOS and macOS applications. It provides a library of pre-made utilities that extend the standard library and system frameworks to streamline data manipulation, system integration, and user interface optimization. The project provides specialized tools for a wide range of development tasks. This includes image processing and binary translation, text string manipulation, and complex data management for arrays, strings, and dictionaries. It also offers utilities for network request mana
Simplifies the instantiation of controllers from storyboards and the management of popover and child controller relationships.
AsyncDisplayKit is an asynchronous UI framework and performance library for iOS. It provides a collection of performant alternatives to standard views, allowing developers to build responsive interfaces by offloading layout and rendering tasks to background threads. The framework is centered around a declarative layout engine based on a flexbox model, which calculates element positions and sizes asynchronously. It utilizes a node-based abstraction to wrap native views, enabling the instantiation and configuration of UI hierarchies on background threads to prevent main thread blocking. The sy
Integrates asynchronous interface components into the standard view controller lifecycle.
vue-awesome-swiper is a Vue.js component wrapper for the Swiper library, providing a declarative interface for creating touch-enabled carousels. It serves as a virtualized slider component that can render only visible slides to maintain performance when handling large datasets. The project distinguishes itself through high-performance rendering and a wide array of visual effects, including 3D transitions, parallax movements, and image zoom capabilities. It also supports the synchronization of multiple slider instances and provides accessibility features such as ARIA roles and focus-scrolling
Integrates interactive paging, scrolling, and keyboard controls into the slider interface.
Material is a mobile user interface framework designed for building responsive and consistent native applications. It provides a declarative component architecture that allows developers to construct complex interfaces through modular, self-contained elements that manage their own state and rendering logic. The framework distinguishes itself through a constraint-based layout engine that calculates component geometry by solving spatial relationships between elements, ensuring layouts adapt automatically to varying screen sizes. It also features a hierarchical design system that propagates styl
Coordinates navigation flows using drawers, tab bars, and hierarchical controllers.
This project is a mobile-first web interface built with Vue 3 that replicates the layout and interaction patterns of a short-form video platform. It is designed as a responsive web application focused on high-performance mobile rendering and short-video workflows. The application features a vertical video carousel with infinite scrolling and a vertical-slide view orchestration system for seamless content playback. It employs a responsive layout using viewport-relative units to ensure consistent rendering across various mobile screen sizes and aspect ratios. The project incorporates Pinia for
Implements a vertical sliding mechanism to orchestrate a continuous sequence of video components.
AppIntro is an Android onboarding framework used to create swipeable introductory screens and feature walkthrough carousels. It provides a navigation controller to manage wizard-style flow control and a UI component library for handling slide transitions and immersive layouts. The framework integrates system runtime permission requests directly into the onboarding sequence, allowing developers to block navigation until required access is granted. It supports different navigation modes that can toggle between standard and wizard behaviors, including the ability to restrict slide transitions ba
Provides a programmatic interface for managing wizard-style flow control and restricting navigation based on screen conditions.
Spectacle is a React-based presentation framework that enables developers to author slide decks using JSX and MDX syntax. It provides a component-driven approach to building presentations, where slides are composed as React components with declarative layouts, theme-driven styling, and step-based animation sequencing. The framework distinguishes itself through its support for live coding demonstrations within slides, allowing presenters to execute and display code directly during a talk. It includes a presenter mode with dual-view architecture that shows speaker notes, a timer, and upcoming s
Controls presentation flow with arrow keys and shortcuts for overview, presenter, and fullscreen modes.
TimelineJS is a JavaScript library for creating interactive, chronological narratives and visualizing multimedia sequences. It functions as a tool for data-driven storytelling, rendering a navigable interface where events are organized by date. The system generates these narratives by importing event information from external sources, such as JSON files or spreadsheets. It transforms external media links into embedded video and audio elements and synchronizes the current view with the browser address bar to allow for direct linking and bookmarking. The library covers broad capabilities for d
Enables direct navigation to specific chronological points in the sequence using URL hash tags.
Embla Carousel is a lightweight JavaScript carousel library and barebones slider engine designed for creating touch-enabled, swipeable content sliders. It functions as a plugin-based framework that manages scroll physics and slide positioning without imposing specific UI styles, while providing a programmable API for custom carousel development. The system is distinguished by its modular architecture, allowing developers to extend core logic through external plugins and custom event hooks. It is compatible with server-side rendering, generating initial styles on the server to prevent layout s
Automatically adjusts slide alignment and layout based on viewport size for responsive displays.
Glide is a dependency-free ES6 JavaScript library used to create responsive content sliders and carousels. It functions as a modular framework for implementing sliding content areas that adapt their layout and settings based on browser window breakpoints. The library is distinguished by a modular architecture that allows the inclusion of only necessary logic to reduce final bundle size. It separates core structural styles from thematic visual styles and utilizes a plugin system to extend the base slider functionality and lifecycle hooks. The component covers a range of interaction and naviga
Provides keyboard arrow controls and programmatic navigation to ensure the sliding content is accessible.
react-joyride is a user onboarding library for React applications used to create interactive guided tours and walkthroughs. It provides a framework for defining sequences of tooltips and beacons that highlight specific user interface elements to introduce users to application features. The library distinguishes itself through a programmatic controller that allows developers to manage tour state, navigation, and lifecycle events via external application logic. It supports a high degree of visual extensibility, allowing the replacement of default tooltips and beacons with custom components to m
Provides programmatic interfaces to start, stop, or jump between tour steps using external logic.
XLPagerTabStrip is a navigation component for iOS that synchronizes a tabbed menu with a swipable view controller pager. It functions as a gesture-based view switcher, allowing users to navigate between different screen views through either direct tab selection or horizontal swipe gestures. The project provides a wrapper for segmented controls and other tab indicator styles to manage the switching of multiple child views. It supports various tab indicator styling options, including button bars and simple indicator bars, and allows for the configuration of tab transition behaviors. The system
Implements lifecycle handling for child view controllers held within a swipable paging container.
mtheme is a minimalist visual style for creating presentation slides using the LaTeX Beamer document class. It provides a set of formatting rules and a presentation typesetting style designed to optimize slide layout and content spacing. The theme focuses on a clean, low-noise layout that reduces visual clutter to maximize available content space. It includes a visual progress indicator integrated into each frame to track the viewer's position within the slide deck. The project covers academic presentation formatting and technical slide design, utilizing a document typesetting engine to gene
Integrates a visual progress bar into each frame to indicate the current slide position.
WebSlides is a CSS-class-driven presentation framework that turns HTML sections into full-screen slides with keyboard, touch, and remote navigation. Its core architecture defines slides as HTML section elements styled entirely through CSS classes for layout, animation, and background, with a vertical-rhythm spacing foundation using an 8-pixel baseline grid. The framework includes a plugin-based behavior extension system that hooks into slide lifecycle events, and maps each slide to a unique URL hash for direct permalink navigation. The framework distinguishes itself through a comprehensive se
Automatically advances slides on a configurable timer for hands-free presentations.
WebSlides is an open-source tool for creating HTML presentations, landing pages, and longform articles directly in the browser. It provides a full-screen slide deck system where each section element becomes an individual slide with horizontal and vertical navigation, keyboard shortcuts, touch gestures, and remote presenter support. The project distinguishes itself by offering over 40 pre-built slide components such as covers, cards, quotes, and flexible block grids that can be assembled without writing custom layout code. It includes built-in support for embedding rich media like background i
Moves between slides using keyboard shortcuts, swipe gestures, remote presenters, or click-to-nav with permalink support.
JXCategoryView 是一组用于创建可滚动标签菜单和分页容器的 iOS 用户界面组件。它提供了一个用于实现基于类别的导航的系统,其中分段控件与内容区域协调以实现部分转换。 该项目专注于导航菜单与分页视图控制器之间的同步,确保滚动内容时更新活动标签,反之亦然。它通过子类化支持高度可自定义的标签单元格,允许集成图像、富文本和通知徽章。 该库包括用于延迟加载子视图控制器以管理内存和启动时间的能力。它还提供了用于解决导航菜单与系统手势之间冲突的手势协调逻辑,例如限制边缘滑动返回导航。
Manages the lifecycle events of child view controllers as they are selected or scrolled into view.
Fusuma 是一个 Markdown 演示框架和静态幻灯片生成器,将 Markdown 和 MDX 文件转换为基于 Web 的演示文稿的结构化幻灯片。它作为一个技术内容渲染器和交互式演示工具,支持从文本源文件创建幻灯片。 该项目的独特之处在于其演讲交付套件,提供了语音录制、时间分析和排练时间轴等演示排练工具。它包括一个带有演讲者备注的专用演示者视图,并支持实时幻灯片标注和实时评论流,以促进观众互动。 该平台涵盖了广泛的技术渲染功能,包括数学公式、流程图和语法高亮代码块。它还具有交互式组件嵌入、实时屏幕捕获以及将幻灯片导出为 PDF 文档的能力。 部署通过静态托管环境的自动化提供支持,特别包括 GitHub Pages。
Provides controls for cycling through slides and managing transition effects and keyboard accessibility.