> For the complete documentation index, see [llms.txt](https://docs.mpush.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.mpush.cloud/ios-sdk/introduction.md).

# Introduction

{% hint style="info" %}
MPush is a client library, written in Swift, that can be used to interact with the MPush API. The minimum deployment target for the library is iOS 11.0.
{% endhint %}

MPush uses a classic Pub/Sub pattern, you will register your device to topics, then from the MPush APIs you will be able to send notifications to those topics and all device registered will receive a notification.

A topic can represent whatever you want in your system (e.g. the entire app, a user a subset of user with a common characteristic) so you will be able to choose the granularity of the notifications.

### Minimum Requirements

* [Swift 4.0+](https://github.com/pusher/push-notifications-swift/commit/d6dfa2186195135d8d7d1e3d3efdd7f8661ea404)
* [Xcode](https://itunes.apple.com/us/app/xcode/id497799835) - The easiest way to get Xcode is from the [App Store](https://itunes.apple.com/us/app/xcode/id497799835?mt=12), but you can also download it from [developer.apple.com](https://developer.apple.com/) if you have an AppleID registered with an Apple Developer account.
