30 open-source projects similar to mutualmobile/mmdrawercontroller, ranked by how many features they have in common. Compare stars, activity and what each one does to find the best MMDrawerController alternative.
SwipeBackLayout is an Android gesture navigation library and view component designed to implement edge-swipe gestures for navigating back to previous screens. It provides the underlying logic and layout management necessary to integrate horizontal swipe transitions into an application's screen stack. The library utilizes a custom layout manager to coordinate the simultaneous movement of foreground and background views. It maps horizontal touch offsets to the translation and opacity of view hierarchies, using interpolation to calculate visual progression based on the swipe percentage. The sys
RESideMenu is an iOS side menu component and user interface framework element used to implement the side-drawer navigation pattern on Apple mobile devices. It provides a sliding side panel that organizes top-level application sections and navigation links. The component specifically implements a parallax navigation menu, which shifts content layers at different speeds to create a sense of depth during transitions. This allows for the creation of a sliding menu that moves content visually when controllers are opened from either side of the screen. The system manages the interface through gest
Slideout is a touch-gesture UI component and navigation menu designed for mobile web applications. It provides a side panel that slides across the screen to reveal navigation options, utilizing CSS transitions to animate the movement of the viewport. The component manages the expanded or collapsed state of the navigation menu and includes logic to restrict gestures for specific interface elements to prevent interaction conflicts. It employs a system for executing custom logic triggered by menu state transitions and user drag gestures.
Snap.js is a JavaScript library for building draggable side navigation panels on touch devices. It enables slide-in menus from the left or right screen edge, driven by a gesture-based state machine that interprets drag and flick gestures to open and close the panel. The library distinguishes horizontal menu drags from vertical scrolling by analyzing the initial touch movement angle, and locks menu movement to a single axis to prevent interference. It uses hardware-accelerated CSS transforms for smooth animations and provides configurable snap thresholds that determine whether a drag should op
mui is a mobile UI component framework and native-like web UI kit designed for building high-performance mobile web interfaces. It functions as a mobile web performance framework and gesture-based interface library to eliminate browser lag and mimic the behaviors and animations of native mobile applications. The framework focuses on implementing common mobile UX patterns, including pull-to-refresh functionality, swipe-to-action menus, and sliding side navigation. It provides specialized tools for gesture-driven interface development to ensure an immediate visual response to touch interactions
MaterialDrawer is a navigation drawer library and side menu framework for Android applications. It provides a Material Design UI component that implements a sliding side menu to manage user movement between different sections of a mobile application. The framework supports the organization of complex navigation lists, including the use of expandable sections, sticky headers, and badges. It includes tools for building personalized interfaces, such as user profile displays and headers. The library handles navigation through item management, event handling via listeners, and state-driven UI upd
This project is a comprehensive UI toolkit that provides a declarative, reactive framework for building modular web interfaces. It centers on a component-based architecture that maps application state to rendered elements, utilizing a twelve-point flexbox grid system and nested containers to manage complex layouts. The library ensures consistent behavior across large-scale applications by providing centralized configuration for component defaults, themes, and global design tokens. What distinguishes this framework is its deep integration of Material Design principles alongside a highly flexib
DGElasticPullToRefresh is a Swift pull-to-refresh component for iOS that provides a bouncy, elastic animation effect for scrolling lists. It serves as a specialized table view extension that triggers content updates via a downward swipe gesture. The component uses bezier paths and spring physics to render curved visual elements, simulating a flexible stretching effect during user interaction. This physics-based approach governs the movement and bounce of the interface to create a fluid feel. The system manages gesture-driven states and coordinate transformations to shift the view hierarchy.
PKRevealController is an iOS navigation framework and slide-over UI controller. It functions as a gesture-based interface library and hierarchical view controller manager that allows secondary screens to slide over a primary content area through touch interactions. The system organizes parent and child controllers into a layered navigation structure, translating touch input into coordinate offsets to animate transitions. It manages the width and positioning of side panels to control the available screen real estate. The framework provides capabilities for side panel layout management and vie
IQKeyboardManager is an iOS keyboard management library and UI layout utility. It automatically adjusts screen layouts to prevent the software keyboard from covering text input fields. The project provides a customizable keyboard toolbar component with navigation buttons and action triggers. It enables focus management, allowing users to move between text fields via the return key or toolbar controls. The library covers keyboard layout coordination, including touch-based dismissal and offset configuration. It also includes a system for managing keyboard behaviors and appearance on a per-clas
Onboard is an iOS onboarding framework designed for creating guided welcome screen sequences and tutorial flows. It provides a page transition engine to manage navigation and animations between sequential screens containing images, text, and action buttons. The framework includes a SwiftUI UI library with customizable layout components and styles. It features a system for animating content and managing the navigation flow, which allows for the implementation of smooth transitions and fade effects between instructional screens. The project covers background management with support for static
JVFloatLabeledTextField is a reusable UIKit component for iOS that provides a text input field with a floating label. It animates the placeholder text into a hovering label when the field is focused or contains text, maintaining visual context for the user during data entry. This library functions as a programmable interface element for native applications developed with Swift and Objective-C, specifically designed to implement modern mobile form design patterns. The component manages these interactions through a combination of state-driven label transitions and constraint-based layout anima
React Native Gesture Handler is a declarative library that exposes the platform's native touch and gesture system to React Native, enabling smooth, deterministic gesture handling on the UI thread. It manages gesture recognition through a native state machine with defined transitions between states like BEGAN, ACTIVE, END, and CANCELLED, routing touch events through platform-native gesture recognizers on both iOS and Android. The library provides a comprehensive gesture composition framework that allows developers to combine multiple gestures into race, simultaneous, or exclusive sequences, co
SlidingMenu is an Android navigation drawer library and UI component library used to create side-panel navigation menus that slide over or push primary content. It functions as an activity wrapper and a set of XML layout components to manage the interaction between main content and navigation layers. The library provides a system for menu aesthetic customization, allowing for the adjustment of scroll scales, fade effects, drop shadows, and touch-responsive areas. It implements a slide-in navigation interface that reveals a hidden side panel through programmatic activity wrapping and XML menu
Tiny-slider is a vanilla JavaScript carousel library used to create touch-enabled content sliders and accessible UI components without external dependencies. It functions as a responsive layout engine that adjusts slide visibility and dimensions based on viewport breakpoints. The library distinguishes itself through built-in lazy loading for images and media to improve page performance and a responsive system that automatically scales item counts and spacing according to the device screen size. It also supports nested slider instances, allowing for the creation of multi-directional scrolling
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
gocui is a console user interface library for the Go programming language. It provides a toolkit for building interactive terminal applications using a layout engine that organizes overlapping rectangular views and coordinates. The library features a terminal input handler to capture and map keyboard shortcuts and mouse events to specific application actions. It includes an ANSI escape sequence parser to manage text attributes, colors, and cursor positioning. The framework covers interface view management and overlapping window layering, allowing for a structured arrangement of content. Rend
EAIntroView is an onboarding UI library used to build sequential introduction and welcome screens. It functions as a customizable walkthrough and interactive tutorial framework for creating guided tours and step-by-step instructional guides. The library features a coordinate-based layout engine that defines UI element placement using coordinates and offsets mapped to individual pages. It includes an event-driven UI component that triggers specific logic and animations based on page transition and visibility events. The framework manages view navigation through a navigation-controlled introdu
This project is a declarative UI pattern library and reference implementation for structuring layouts, navigation flows, and data collections across Apple platforms. It provides a collection of practical implementation patterns and component examples for building user interfaces using the SwiftUI framework. The library serves as a cross-platform reference for rendering visual content on iOS and macOS. It includes a view implementation guide that covers managing navigation, handling user inputs, and embedding web content. The codebase covers broad capability areas including layout management
SideMenu is an iOS navigation menu library and mobile app navigation framework written in Swift. It provides reusable components for implementing animated slide-out side menus and navigation drawers within iOS applications. The framework supports continuous swiping navigation, allowing users to transition between menus on opposite sides of the screen in a single motion. It includes a coordination system to manage multiple menu instances across different navigation levels and a global configuration mechanism to ensure consistent behavior and appearance across all application screens. The libr
zuck.js is a JavaScript UI library used to build JSON-driven story viewers and timelines. It provides a touch-based interface for rendering sequences of full-screen content, enabling the integration of social media style story layouts into web applications. The library features a customizable theme engine that allows for different visual styles and hardware-accelerated 3D transition effects, such as cube transitions, when switching between story sets. It employs mobile UI emulation to replicate native application experiences through fullscreen layouts and gesture-based navigation. The toolki
PageMenu is an iOS paging navigation controller and composite view controller manager. It organizes multiple independent view controllers within a scroll view, enabling users to swipe between full-page content views. The system features a customizable segmented control navigation bar that maps selectable segments to specific content views. This interface supports programmatic navigation to page indices and monitors page transitions via a delegate pattern. The controller manages horizontal page scrolling and view controller organization. It includes capabilities for styling the menu interface
gui.cs is a .NET terminal user interface toolkit and framework used to build interactive, cross-platform text-based applications. It provides a structured system for composing terminal views using a view hierarchy and a dedicated layout engine. The library distinguishes itself through a component-based widget system and a constraint-based layout engine that allows interfaces to remain responsive across different terminal window dimensions. It employs a virtual-screen buffer to minimize flickering during redraws and uses state-driven theme configurations to maintain persistent visual styles.
Cursive is a cross-platform terminal user interface toolkit and framework for building interactive applications in Rust. It provides a modular system for creating text-based graphical interfaces, utilizing a dedicated engine to manage the main display loop and view hierarchies. The toolkit features a backend-agnostic abstraction layer to ensure consistent rendering and input handling across different operating systems. It distinguishes itself through a palette-based theme engine that supports runtime theme loading and true color rendering, as well as the ability to generate user interface hie
Hero is a transition framework and animation toolkit for iOS and tvOS designed to create fluid visual continuity between screens. It provides a shared element animation library that interpolates the position and size of views across different screens using unique identifiers. The framework includes an interactive transition controller that binds navigation progress to manual gestures and user input events in real time. It utilizes a system for calculating animation durations based on element distance and size to maintain a consistent sense of motion speed. The toolkit covers global coordinat
This project is a reference guide and technical resource for building user interfaces with the SwiftUI framework. It provides a comprehensive collection of code examples, documentation, and a component library of reusable view implementations and layout patterns. The resource includes a compatibility map that links modern declarative views to their equivalent imperative counterparts in the UIKit framework. This documentation assists with the migration from UIKit to SwiftUI by providing guidance on wrapping legacy view controllers and view subclasses within a declarative hierarchy. The guide
This project is a collection of official plugin packages and a native integration library designed to provide a consistent interface for accessing hardware and software functionality across different mobile and desktop platforms. It serves as a native platform bridge, enabling cross-platform applications to invoke native code and manage operating system dependencies. The project utilizes a federated plugin architecture, splitting plugins into common interfaces and separate platform implementations to allow for independent development and extension. It further supports native integration throu
mdui is a framework-agnostic UI library and design system based on Material Design 3 standards. It provides a comprehensive set of reusable interface elements implemented as native Web Components, ensuring compatibility across different JavaScript frameworks. The library features a sophisticated theming system that supports light and dark modes, as well as the ability to generate dynamic color palettes from seed colors or image sources. It distinguishes itself with a high level of flexibility in visual customization, using CSS custom properties to control design tokens such as typography, cor
This is a browser-based puzzle game and HTML5 JavaScript application where players slide and merge numbered tiles on a grid to reach a target value. The game runs entirely on the client side, using web standard technologies to handle game logic and rendering directly in the browser. The application is a mobile-compatible web app that translates touch-swipe gestures and keyboard inputs into directional commands. It includes a local storage score tracker to save and maintain a record of high scores across different sessions.