Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

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

TermsPrivacyAboutGitHubRSS
  1. Home
  2. iOS
  3. AREK

AREK

MITSwift4.0.2

A clean and easy-to-use Swift wrapper for requesting and managing iOS permissions with customizable popups.

GitHubGitHub
954 stars61 forks0 contributors

What is AREK?

AREK is a Swift library that provides a clean, configurable wrapper for handling iOS permission requests. It solves the problem of abrupt system permission dialogs by allowing developers to explain why permissions are needed and manage user responses through customizable popups. The library supports over 15 different iOS permission types and helps apps follow Apple's human interface guidelines for privacy.

Target Audience

iOS developers building apps that require multiple system permissions and want to implement user-friendly permission flows with clear explanations and re-engagement options.

Value Proposition

Developers choose AREK because it simplifies iOS permission management with a clean API, supports extensive customization of permission dialogs, and helps prevent permanent permission denials through thoughtful user communication—all while being fully compatible with Swift and major dependency managers.

Overview

AREK is a clean and easy way to request any kind of iOS permission (with some nifty features 🤖)

Use Cases

Best For

  • iOS apps that need to request multiple system permissions in a user-friendly way
  • Implementing custom permission explanation dialogs before showing system prompts
  • Managing re-engagement flows for users who have denied permissions
  • Localizing permission request interfaces across different languages
  • Following Apple's human interface guidelines for permission requests
  • Reducing permanent permission denials through better user communication

Not Ideal For

  • Cross-platform apps using frameworks like React Native or Flutter
  • Projects that require direct control over system permission dialogs without intermediary popups
  • Teams working with Objective-C codebases without Swift interoperability

Pros & Cons

Pros

Comprehensive Permission Support

Covers 15+ iOS permissions including Camera, Contacts, HealthKit, and more, as detailed in the implemented permissions list.

User-Centric Permission Flows

Implements pre-permission and re-enable popups to explain why permissions are needed and manage user responses, following Apple's human interface guidelines.

Highly Configurable UI

Allows customization of popup titles, messages, images, and types (native or PMAlertController) through ArekConfiguration and ArekPopupData structs.

Built-in Localization

Uses localized string keys for all UI elements, making it straightforward to internationalize permission requests by adding strings to project files.

Cons

Incomplete Customization Options

The TODO list indicates missing features like injecting custom PMAlertController or setting popup type during initialization, limiting advanced UI tweaks.

Version Management Hassles

Requires matching specific versions to Xcode and Swift (e.g., Swift 4.2 for Xcode 10), which can complicate updates and maintenance.

Manual String Setup

Developers must manually add localized strings for each permission in their project, increasing setup time compared to libraries with built-in defaults.

Frequently Asked Questions

Quick Stats

Stars954
Forks61
Contributors0
Open Issues6
Last commit2 years ago
CreatedSince 2016

Tags

#ios#popup#cloudkit#permission#swift-package-manager#bluetooth#privacy#healthkit#ui#mobile-development#cocoapods#swift#permissions#carthage

Built With

i
iOS
S
Swift

Included in

iOS51.7kSwift26.0k
Auto-fetched 5 hours ago

Related Projects

SPPermissionsSPPermissions

Universal API for request permission and get its statuses.

Stars5,816
Forks479
Last commit1 year ago
SPPermissionSPPermission

Universal API for request permission and get its statuses.

Stars5,816
Forks479
Last commit1 year ago
PermissionPermission

A unified API to ask for permissions on iOS

Stars2,891
Forks321
Last commit3 years ago
ClusterPrePermissionsClusterPrePermissions

Cluster's reusable pre-permissions utility that lets developers ask the users on their own dialog for photos or contacts access, before making the system-based request. This is based on the Medium post by Cluster describing the different ways to ask for iOS permissions (https://medium.com/p/96fa4eb54f2c).

Stars1,194
Forks103
Last commit8 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