Hysen Labs
Open-source project
Yalantis/Persei avatar
Yalantis

Persei

GitHub describes it as Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift. The repository metadata lists Swift as its primary language. The metadata lists the MIT license. This article stays within the project description and details documented in the GitHub repository README.

3,431 stars309 forksSwiftMIT
01
DEEP OPEN-SOURCE ANALYSIS

Yalantis/Persei: Supported Swift versions

GitHub describes it as Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift. The repository metadata lists Swift as its primary language. The metadata lists the MIT license. This article stays within the project description and details documented in the GitHub repository README.

02
DEEP OPEN-SOURCE ANALYSIS

Repository scope

GitHub describes it as Animated top menu for UITableView / UICollectionView / UIScrollView written in Swift. The repository metadata lists Swift as its primary language. The metadata lists the MIT license. The README describes the project this way: | Swift Version | Persei | |:---:|:---:| | 1.x | 1.1 | | 2.x | 2.0 | | 3.x | 3.0 | | 4.x | 3.1| | 5.x | 4.0 |

03
DEEP OPEN-SOURCE ANALYSIS

Manual Installation

The README section "Manual Installation" states: For application targets that do not support embedded frameworks, such as iOS 7, Persei can be integrated by including source files from the Persei folder directly, optionally wrapping the top-level types into struct Persei to simulate a namespace. Yes, this sucks.

04
DEEP OPEN-SOURCE ANALYSIS

Manual Installation

The README section "Manual Installation" states: 1. Add Persei as a submodule by opening the Terminal, cd -ing into your top-level project directory, and entering the command git submodule add https://github.com/yalantis/Persei.git 2. Open the Persei folder, and drag Persei.xcodeproj into the file navigator of your app project. 3. In Xcode, navigate to the target configuration window by clicking on the blue project icon, and selecting the application target under the "Targets" heading in the sidebar. 4. Ensure that the deployment target of Persei.framework matches that of the application target. 5. In the tab bar at the top of that window, open the "Build Phases" panel. 6. Expand the "Target Dependencies" group, and add Persei.framework . 7. Expand the "Link Binary With Libraries" group, and add SideMenu.framework 8. Click on the + button at the top left of the panel and select "New Copy Files Phase". Rename this new phase to "Copy Frameworks", set the "Destination" to "Frameworks", and add Persei.framework .

05
DEEP OPEN-SOURCE ANALYSIS

Usage

The README section "Usage" states: Content Gravity Use contentViewGravity to control sticking behavior. There are 3 available options:

06
DEEP OPEN-SOURCE ANALYSIS

Editorial conclusion

The repository README is the source for this review. It does not replace a local installation or an independent test.

07
DEEP OPEN-SOURCE ANALYSIS

Official sources

08
Community notes

Community notes