Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. ViewDeck

ViewDeck

Objective-C3.1.0

An iOS framework for implementing sliding side menus with programmatic and gesture-based controls.

GitHubGitHub
5.3k stars950 forks0 contributors

What is ViewDeck?

ViewDeck is an iOS framework that implements sliding side menus, similar to those found in many popular iOS apps. It provides a container view controller (`IIViewDeckController`) that manages the presentation of left and right side view controllers, handling both programmatic control and user swipe gestures. The framework solves the problem of building consistent, interactive side navigation without dictating the design of the menus themselves.

Target Audience

iOS developers building applications that require side navigation menus, such as those using a hamburger menu pattern. It is particularly useful for developers who want a robust, gesture-integrated solution that works with standard UIKit components.

Value Proposition

Developers choose ViewDeck because it offers a mature, well-integrated solution for side menus that respects UIKit conventions. Its flexibility in allowing custom menu designs, combined with built-in gesture support and easy programmatic control, makes it a reliable choice over rolling a custom implementation.

Overview

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

Use Cases

Best For

  • Implementing hamburger-style navigation menus in iOS apps
  • Adding interactive side panels that respond to swipe gestures
  • Building apps that require dynamic switching of side view controllers
  • Creating iPad-optimized layouts with sidebars
  • Integrating side menus with existing UINavigationController or UITabBarController setups
  • Projects needing customizable side menu animations and transitions

Not Ideal For

  • Apps built entirely with SwiftUI that prefer a pure SwiftUI architecture
  • Projects needing out-of-the-box, pre-styled menu components without custom UI work
  • Use cases requiring side menus from directions other than left or right (e.g., top or bottom)
  • Teams seeking a lightweight solution with minimal dependencies and setup overhead

Pros & Cons

Pros

Seamless UIKit Integration

Leverages standard UIKit components like UINavigationController and UITabBarController, making it easy to drop into existing iOS projects without major restructuring.

Flexible Programmatic Control

Allows opening and closing side menus via code, such as in response to button taps, and supports dynamic switching of view controllers at runtime.

Interactive Gesture Support

Includes default swipe gestures for user interaction, enhancing the native feel and accessibility of side menus without additional setup.

Customizable Animations

Provides hooks like `animatorForTransitionWithContext:` for developers to tailor the appearance and transitions of side menus, as mentioned in the README.

Cons

UIKit-Only Limitation

Built exclusively for UIKit, making it incompatible with SwiftUI projects without complex bridging, which adds overhead for modern iOS development.

No Pre-Designed Menus

Leaves all menu design and content creation to the developer, requiring significant UI work compared to libraries with built-in, styled components.

Limited Direction Support

Only supports left and right side menus, lacking options for top or bottom presentations that might be needed for certain app layouts or UX patterns.

Maintenance Uncertainty

The original creator has stepped down from maintenance, as noted in the README, which could lead to slower updates or reduced long-term support.

Frequently Asked Questions

Quick Stats

Stars5,251
Forks950
Contributors0
Open Issues17
Last commit4 years ago
CreatedSince 2011

Tags

#ios#objective-c#container-view-controller#gesture-recognition#ui-framework#cocoapods#swift#side-menu#navigation

Included in

iOS51.7k
Auto-fetched 1 day ago

Related Projects

RESideMenuRESideMenu

iOS 7/8 style side menu with parallax effect.

Stars7,032
Forks1,312
Last commit9 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,818
Forks695
Last commit3 years ago
PageMenuPageMenu

A paging menu controller built from other view controllers placed inside a scroll view (like Spotify, Windows Phone, Instagram)

Stars5,212
Forks871
Last commit5 years ago
ParchmentParchment

A paging view with a highly customizable menu ✨

Stars3,463
Forks428
Last commit2 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