Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. Panels

Panels

MITSwift2.2.3

A Swift framework for adding sliding panels to iOS apps with safe area and keyboard handling.

GitHubGitHub
1.5k stars89 forks0 contributors

What is Panels?

Panels is a Swift framework for iOS that enables developers to easily add sliding panels to their applications. It handles complex UI challenges like safe area adaptation and keyboard visibility automatically, allowing developers to focus on building features rather than managing panel behavior.

Target Audience

iOS developers building apps that require sliding overlays, modals, or contextual panels, such as settings drawers, detail views, or interactive menus.

Value Proposition

Developers choose Panels for its simplicity, robust handling of iOS-specific UI concerns, and flexible configuration options that reduce boilerplate code compared to manual implementations or heavier UI libraries.

Overview

Panels is a framework to easily add sliding panels to your application

Use Cases

Best For

  • Adding bottom sheets or sliding drawers in iOS apps
  • Creating interactive panels that respond to keyboard visibility
  • Implementing modals that adapt to safe areas on modern iPhones
  • Building contextual menus or settings panels with smooth animations
  • Developing apps that require draggable or tappable overlay components
  • Integrating lightweight, customizable sliding UI without external dependencies

Not Ideal For

  • Apps requiring cross-platform support beyond iOS (e.g., React Native or Flutter projects)
  • Complex UIs with multiple simultaneous or nested sliding panels
  • Projects needing pre-styled, out-of-the-box components without custom UI work
  • Developers who prefer SwiftUI-native solutions over UIKit-based frameworks

Pros & Cons

Pros

Safe Area Integration

Automatically adjusts panel positioning for device notches and rounded corners via the useSafeArea flag in PanelConfiguration, eliminating manual safe area handling.

Keyboard Awareness

Dynamically moves panels when the keyboard appears or disappears, preventing content occlusion without extra code, as highlighted in the README's key features.

Flexible Configuration

Offers extensive customization through PanelConfiguration, allowing control over size, margins, gestures, and animation behaviors with declarative settings.

Interactive Gestures

Supports tap and drag gestures on panel headers for collapsing and expanding, with options like closeOutsideTap for intuitive user interactions.

Cons

iOS-Only Limitation

Built exclusively for iOS with Swift, making it unsuitable for cross-platform projects or other Apple platforms like macOS without significant adaptation.

Single-Panel Focus

Designed around managing individual panels; lacks built-in support for multiple coordinated panels or complex panel hierarchies, which can limit more advanced UIs.

Protocol Overhead

Requires view controllers to conform to protocols like Panelable, adding boilerplate code that might be cumbersome for very simple or rapid prototyping needs.

Frequently Asked Questions

Quick Stats

Stars1,492
Forks89
Contributors0
Open Issues6
Last commit6 years ago
CreatedSince 2018

Tags

#safe-area#mobile-ui#ios#keyboard-handling#swift-package-manager#iphone-x#ux#swift4#ui#sliding-menu#ui-framework#cocoapods#swift#carthage#panel

Built With

U
UIKit
S
Swift

Included in

iOS51.7kSwift26.0k
Auto-fetched 1 day ago

Related Projects

RESideMenuRESideMenu

iOS 7/8 style side menu with parallax effect.

Stars7,048
Forks1,323
Last commit8 years ago
XLPagerTabStripXLPagerTabStrip

Android PagerTabStrip for iOS.

Stars7,006
Forks1,314
Last commit2 years ago
SideMenuSideMenu

Simple side/slide menu control for iOS, no code necessary! Lots of customization. Add it to your project in 5 minutes or less.

Stars5,820
Forks694
Last commit3 years ago
ViewDeckViewDeck

An implementation of the sliding menu found in various iOS apps.

Stars5,268
Forks956
Last commit3 years ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub