explaingit

jonkykong/sidemenu

5,825SwiftAudience · developerComplexity · 2/5Setup · easy

TLDR

A Swift library that adds a sliding side menu to iOS apps, configurable entirely through Xcode storyboards with no code required for basic setup, and eight animation styles including a parallax effect.

Mindmap

mindmap
  root((SideMenu))
    What it does
      Slide-out drawer menu
      Left and right menus
      iOS navigation panel
    Features
      8 animation styles
      Parallax effect
      Storyboard setup
    Configuration
      SideMenuManager global
      Per-menu controller
      Gesture sensitivity
    Setup
      CocoaPods
      Carthage
      Swift Package Manager
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Things people build with this

USE CASE 1

Add a left or right sliding navigation drawer to an iOS app using only storyboard segues, no code needed for basic setup.

USE CASE 2

Offer users eight animation styles and a parallax effect for a polished, native-feeling side menu.

USE CASE 3

Let users swipe continuously between a left and right menu in a single gesture on any screen in the app.

USE CASE 4

Keep interactive content like live video or dynamic lists inside the menu, since SideMenu uses real view controllers not screenshots.

Tech stack

SwiftiOSCocoaPodsCarthageSwift Package Manager

Getting it running

Difficulty · easy Time to first run · 30min

Requires iOS 10+ and Swift 5, install via CocoaPods, Carthage, or Swift Package Manager.

License terms are not described in the explanation.

In plain English

SideMenu is a Swift library for iOS apps that adds a sliding panel menu to the side of the screen. It is aimed at iOS developers who want to include a drawer-style navigation menu in their app without writing a lot of custom code. The library works on iOS 10 and above and requires Swift 5. The main draw of this project is that it can be set up entirely through Xcode's storyboard interface, without writing any code at all. You create a navigation controller in your storyboard, assign the SideMenu class to it, and connect a button to trigger it with a segue. That's the full setup for a basic menu. For developers who prefer code, a programmatic API is also available. SideMenu includes eight animation styles out of the box: Slide Out, Slide In, Dissolve, Slide In and Out, among others. There is also a parallax effect option. You can configure a left-side menu, a right-side menu, or both, and users can swipe continuously between the two in a single gesture. The configuration is global, meaning you set it once and it applies across all screens in your app. Because SideMenu uses iOS's built-in view controller transition system, the menus behave like any standard screen in your app. They animate using the actual view controllers rather than static screenshots of them, which means interactive content inside the menu stays live. The library also handles device rotation and the height changes that occur when a phone call is active. Installation is available through CocoaPods, Carthage, or the Swift Package Manager. The repository includes a customization layer called SideMenuManager for global settings and SideMenuNavigationController for per-menu settings, covering things like presentation style, animation duration, shadow appearance, and gesture behavior. The README documents each option with code examples.

Copy-paste prompts

Prompt 1
I'm adding SideMenu to my iOS storyboard app. Walk me through setting up a left slide-out menu, assigning the SideMenu class, and connecting a button to trigger it with a segue.
Prompt 2
How do I configure SideMenuManager in Swift to change the animation style to SlideIn, add a drop shadow, and set the menu width to 80% of the screen?
Prompt 3
I want a right-side menu in my iOS app using SideMenu without storyboards. Show me how to create and present it programmatically in Swift.
Prompt 4
My SideMenu app rotates the device and the menu breaks. How does SideMenu handle device rotation and the status bar height change during a phone call?
Prompt 5
How do I set up both a left and a right SideMenu so users can swipe between them with a single continuous gesture?
Open on GitHub → Explain another repo

← jonkykong on gitmyhub — every repo by this author, as a profile.

Verify against the repo before relying on details.