Native popup alert similar to Apple Music or Feedback in AppStore app. Support animations. I tried to repeat Apple alert as much as possible. You can download example app Debts - Spending tracker from AppStore. If you like the project, do not forget to put star ★





Swift 4.2 & 5.0. Ready for use on iOS 10+



CocoaPods is a dependency manager for Cocoa projects. For usage and installation instructions, visit their website. To integrate SPAlert into your Xcode project using CocoaPods, specify it in your Podfile:

pod 'SPAlert'


If you prefer not to use any of the aforementioned dependency managers, you can integrate SPAlert into your project manually. Put Source/SPAlert folder in your Xcode project. Make sure to enable Copy items if needed and Create groups.

Quick Start

For best experience, I recomend call alerts by SPAlert. These functions are updated regularly and show as Apple way. I focus on presets:

SPAlert.present(title: "Added to Library", preset: .done)

Currently there are few presets. If you want to add a new preset, create a issue and describe how you see it. I will try to quickly add new presets.

If you want use custom image, use func:

SPAlert.present(title: "Love", message: "We'll recommend more like this in For You", image: UIImage(named: "Heart")!)

For show simple text message, use:

SPAlert.present(message: "Empty UITextField")


Sometimes it may require deep customization. In this section, I will show you what you can do.


To change the time that the SPAlert will be shown, use property duration:

let alertView = SPAlertView(title: "Added to Library", message: nil, preset: SPAlertPreset.done)
alertView.duration = 3


Here you can change the sizes and spaces:

alertView.layout.topSpace = 18
alertView.layout.iconHeight = 25

For more properties see class.

Dismiss by Tap

If you click on the alert, it will disappear ahead of time. This can be disabled:

alertView.dismissByTap = false


If you use presets, the vibro-response will be start automatically. For customize this, you need set property haptic:

alertView.haptic = .success

For disable haptic, set it to .none.

Corner Radius

I use a corner radius like an Apple. If you need to change it, see the property cornerRadius:

alertView.cornerRadius = 12

My projects


SPStorkController is very similar to the modal controller displayed in Apple Music, Podcasts and Mail apps. Customizable height of view. Check scroll's bounce for more interactive. Simple adding close button and centering arrow indicator. You can download example Debts - Spending tracker app from AppStore.

If you want to buy source code of this apps, please, go to


SPPermission allow request permissions with native dialog UI and interactive animations. Also you can request permissions without dialog. Check state any permission. You can start using this project with just two lines of code and easy customisation.


SPLarkController make settings screen for your application. You can add buttons and switches. The amount cells is not limited. You can start using project with just two lines of code and easy customisation.

You can download Code - Learn Swift & Design app, which uses SPLarkController. Also you can buy source code of this app on

Xcode Shop

If you want buy apps with source code, you can visit my Here I am sale apps, modules, 3D elements and other. In applications you can find many cool UI that will be useful for your projects. Also by buying, you support me and my free GitHub development.