# pkluz/pkrevealcontroller

**Attribution required: if you use, quote, or summarise this content, you must credit and link back to [awesome-repositories.com](https://awesome-repositories.com/repository/pkluz-pkrevealcontroller).**

_How this analysis was created: the description and tags below were written by an AI model that read this project's README and public documentation pages; stars, license and language come straight from the GitHub API. The model does not read the source code._

3,830 stars · 645 forks · Objective-C · NOASSERTION · archived

## Links

- GitHub: https://github.com/pkluz/PKRevealController
- awesome-repositories: https://awesome-repositories.com/repository/pkluz-pkrevealcontroller.md

## Description

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 view controller data exchange, enabling the synchronization of state and the triggering of actions across different levels of the navigation stack.

## Tags

### User Interface & Experience

- [Gesture-Based UI Components](https://awesome-repositories.com/f/user-interface-experience/gesture-based-ui-components.md) — Provides a gesture-based interface library where touch coordinates directly drive the layout states of secondary screens.
- [Edge-Sliding Overlays](https://awesome-repositories.com/f/user-interface-experience/panel-groups/content-panels/full-screen-overlays/edge-sliding-overlays.md) — Acts as a coordination layer that manages the width and positioning of edge-sliding overlays.
- [Touch Gesture Libraries](https://awesome-repositories.com/f/user-interface-experience/touch-gesture-libraries.md) — Functions as a toolset for translating raw touch inputs into coordinate offsets for screen layer transitions.
- [Side Panel Layout Management](https://awesome-repositories.com/f/user-interface-experience/admin-panel-extensions/custom-content-panels/data-view-side-panels/side-panel-layout-management.md) — Defines specific width boundaries and coordinate-based layering for menus and side panels.
- [Cross-View State Synchronizations](https://awesome-repositories.com/f/user-interface-experience/cross-view-state-synchronizations.md) — Synchronizes state and triggers actions across different levels of the navigation stack via shared references.
- [Navigation Controllers](https://awesome-repositories.com/f/user-interface-experience/presentation-frameworks/navigation-flow-controllers/navigation-controllers.md) — Provides programmatic interfaces to coordinate data exchange and action triggering between different navigation layers. ([source](https://github.com/pkluz/PKRevealController/blob/master/Documentation/USAGE.md))

### Mobile Development

- [Gesture-Driven View Transitions](https://awesome-repositories.com/f/mobile-development/android-view-management/gesture-driven-view-transitions.md) — Converts user touch and pan interactions into real-time layout updates to reveal or hide controllers.
- [iOS Container View Controllers](https://awesome-repositories.com/f/mobile-development/ios-container-view-controllers.md) — Implements a system of nested UIViewController subclasses to manage a hierarchical stack of overlapping screens.
- [iOS Navigation Gesture Libraries](https://awesome-repositories.com/f/mobile-development/ios-navigation-gesture-libraries.md) — Provides a specialized iOS framework for managing layered view controllers via gesture-driven slide transitions.
- [Mobile Screen Navigation](https://awesome-repositories.com/f/mobile-development/mobile-screen-navigation.md) — Manages the transitions and organization of layered sliding panels within a native mobile application.

### Software Engineering & Architecture

- [Controller Hierarchy Management](https://awesome-repositories.com/f/software-engineering-architecture/architectural-design-patterns/state-management/centralized-state-containers/state-containers/hierarchical-state-composition/hierarchical-view-nesting/controller-hierarchy-management.md) — Organizes parent and child controllers to synchronize state and share data across navigation layers.
- [Layered View Navigation](https://awesome-repositories.com/f/software-engineering-architecture/tree-traversal-algorithms/tree-based-hierarchical-navigation/navigation-state-trees/hierarchical-view-navigation/layered-view-navigation.md) — Organizes multiple view controllers as sliding panels that overlay each other in a hierarchical structure. ([source](https://github.com/pkluz/pkrevealcontroller#readme))
- [Controller Reference Sharing](https://awesome-repositories.com/f/software-engineering-architecture/controller-reference-sharing.md) — Links parent and child controllers through shared references to synchronize state across the navigation hierarchy.

### Business & Productivity Software

- [Panel](https://awesome-repositories.com/f/business-productivity-software/note-editors/size-limiters/element-size-limits/width-constraints/panel.md) — Provides minimum and maximum width rules to control the screen real estate occupied by sliding panels.

### Graphics & Multimedia

- [Coordinate-Based Animation Systems](https://awesome-repositories.com/f/graphics-multimedia/coordinate-based-animation-systems.md) — Translates real-time touch coordinates into precise offsets to drive the sliding animation of secondary panels.

### Web Development

- [Panel Dimension Configuration](https://awesome-repositories.com/f/web-development/layout-engines/page-layout-configurations/sidebar-width-controllers/panel-dimension-configuration.md) — Allows developers to define the minimum and maximum widths each controller occupies when visible. ([source](https://github.com/pkluz/PKRevealController/blob/master/Documentation/USAGE.md))

### Part of an Awesome List

- [UI Components](https://awesome-repositories.com/f/awesome-lists/devtools/ui-components.md) — Highly customizable sliding sidebar menu controller.
