Mijick / Popups

Popups, popovers, sheets, alerts, toasts, banners, (...) presentation made simple. Written with and for SwiftUI.
Apache License 2.0
1.38k stars 61 forks source link
alert cocoapods ios ios-sdk ios-swift mobile popover popup popup-window popupview popupwindow swift swift-library swift-package swift-package-manager swift6 swiftui swiftui-components swiftui-framework toast

MijickPopups Hero

Popups presentation made simple

Create any popup in no time. Keep your code clean.

Try demo we prepared | Framework documentation | Roadmap


Labels


Popups Alerts Resizable Sheets Banners


Join us on Discord Follow us on LinkedIn See our other frameworks Read us on Medium Buy us a coffee

# ☀️ Why MijickPopups? MijickPopups library solves two seemingly contradictory problems - to allow developers to create fully customizable popup views, and to make the process as simple as possible. Here is why we think we have successfully met these objectives:

The power of a single line of code

For your convenience and to enhance code clarity, we have consolidated all the key actions into a single line of code.

Code Example 1

Tailored to your needs. Designed to suit your preferences

Developers have various programming styles, and we understand and respect that. Therefore, our framework is engineered in such a way that you can open or close a popup view from anywhere in your code.

Code Example 2

Engineered for limitless creativity

The framework was developed not to limit your creativity; we give you the freedom to experiment with the appearance of your popups.

Code Example 3

Three in one

You can display popups created with our framework in one of three positions on the screen: at the bottom, in the center, or at the top. This allows you to create the most common objects, including popups, popovers, alerts, notifications, and more.

Code Example 4

Multiple popups? No problem!

Whether you want to present multiple notifications to the user, or show terms and conditions before they log in, the framework makes it possible - it allows you to keep as many popups on the screen as you want. Inactive popups are stacked in a visually appealing way.

Code Example 5

Past, present and future

We decided to reach out to developers who, for various reasons, want to use native sheets and alerts alongside our framework. From now on, this is possible, and in the near future, we will also add the ability to call sheets in a native SwiftUI style, allowing you to integrate our framework into your existing projects as well.

Code Example 6

### There is much more besides: - The height of the popup adapts to its content, or can be defined by you. - Popups can be automatically dismissed after a certain period of time. - Drag gesture can be used to resize the popup, according to the provided indentations. - Works with multiple windows. - Supports all Apple platforms: iOS 14.0+ / macOS 12.0+ / tvOS 15.0+ / watchOS 7.0+ / visionOS 1.0+. - Supports Swift 6.0. - ... and much more. # 🚀 How to use it? Visit the framework's [documentation page](https://link.mijick.com/popups-wiki) to learn how to integrate your project with **MijickPopups**. # 🍀 Community Join the welcoming community of developers on [Discord](https://link.mijick.com/discord). # 🌼 Contribute To contribute a feature or idea to **MijickPopups**, create an [issue](https://github.com/Mijick/Popups/issues/new?assignees=FulcrumOne&labels=state%3A+inactive%2C+type%3A+feature&projects=&template=🚀-feature-request.md&title=%5BFREQ%5D) explaining your idea or bring it up on [Discord](https://discord.com/invite/dT5V7nm5SC).
If you find a bug, please create an [issue](https://github.com/Mijick/Popups/issues/new?assignees=FulcrumOne%2C+jay-jay-lama&labels=state%3A+inactive%2C+type%3A+bug&projects=&template=🦟-bug-report.md&title=%5BBUG%5D).
If you would like to contribute, please refer to the [Contribution Guidelines](https://link.mijick.com/contribution-guidelines). # 💜 Sponsor our work Support our work by [becoming a backer](https://link.mijick.com/buymeacoffee).