{"id":14177375,"url":"https://github.com/MPowerKit/Popups","last_synced_at":"2025-08-07T09:31:25.919Z","repository":{"id":212531515,"uuid":"731720033","full_name":"MPowerKit/Popups","owner":"MPowerKit","description":".NET MAUI popup library which allows you to open MAUI pages as a popup. Also the library allows you to use very simple and flexible animations for showing popup pages.","archived":false,"fork":false,"pushed_at":"2024-08-15T12:18:51.000Z","size":298,"stargazers_count":16,"open_issues_count":0,"forks_count":5,"subscribers_count":0,"default_branch":"main","last_synced_at":"2024-08-16T12:17:45.939Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"C#","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MPowerKit.png","metadata":{"files":{"readme":"readme.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-12-14T18:05:41.000Z","updated_at":"2024-08-15T12:18:55.000Z","dependencies_parsed_at":"2024-05-11T01:32:57.604Z","dependency_job_id":"72ac064c-5f68-4bfe-bf58-3e8fda8ad3ab","html_url":"https://github.com/MPowerKit/Popups","commit_stats":null,"previous_names":["mpowerkit/popups"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MPowerKit%2FPopups","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MPowerKit%2FPopups/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MPowerKit%2FPopups/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MPowerKit%2FPopups/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MPowerKit","download_url":"https://codeload.github.com/MPowerKit/Popups/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":215840624,"owners_count":15938151,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-18T07:00:47.442Z","updated_at":"2025-08-07T09:31:25.902Z","avatar_url":"https://github.com/MPowerKit.png","language":"C#","funding_links":["https://www.buymeacoffee.com/alexdobrynin"],"categories":["UI"],"sub_categories":[],"readme":"# MPowerKit.Popups\n\n.NET MAUI popup library which allows you to open MAUI pages as a popup. Also the library allows you to use very simple and flexible animations for showing popup pages.\n\n[![NuGet](https://img.shields.io/nuget/v/MPowerKit.Popups.svg?maxAge=2592000)](https://www.nuget.org/packages/MPowerKit.Popups)\n\n[![\"Buy Me A Coffee\"](https://www.buymeacoffee.com/assets/img/custom_images/orange_img.png)](https://www.buymeacoffee.com/alexdobrynin)\n\nInspired by [Rg.Plugins.Popup](https://github.com/rotorgames/Rg.Plugins.Popup) and [Mopups](https://github.com/LuckyDucko/Mopups), but implementation is completely different. \n\n- It has almost the same PopupPage API as packages above, but improved animations, removed redundant properties as ```KeyboardOffset```, changed names of some properties. \n\n- Improved code and fixed some known bugs, eg Android window insets (system padding) or animation flickering. \n\n- Changed API of ```PopupService```, now you have an ability to choose a window to show/hide popup on.\n\n- Under the hood platform specific code does not use custom renderers for ```PopupPage```.\n\n- Hiding keyboard when tapping anywhere on popup except entry field\n\n- ```PopupStack``` is not static from now.\n\n- All API's are public or protected from now, so you can easily override and change implementation as you want\n\n## Supported Platforms\n\n* .NET8\n* .NET8 for Android (min 24)\n* .NET8 for iOS (min 15)\n* .NET8 for MacCatalyst (min 15)\n* .NET8 for Windows (min 10.0.17763.0)\n* .NET9\n* .NET9 for Android (min 24)\n* .NET9 for iOS (min 15)\n* .NET9 for MacCatalyst (min 15)\n* .NET9 for Windows (min 10.0.17763.0)\n\nNote: .NET8/.NET9 for Tizen is not supported, but your PRs are welcome.\n\n## Setup\n\nAdd ```UseMPowerKitPopups()``` to your MauiProgram.cs file as next\n\n```csharp\nbuilder\n    .UseMauiApp\u003cApp\u003e()\n    .UseMPowerKitPopups();\n```\n\n## Usage\n\nYou can use both registered ```IPopupService``` or static singletone ```PopupService.Current```\n\nInherit your popup page from ```PopupPage```:\n\n```csharp\npublic class YourCustomPopup : PopupPage...\n```\n\nShow popup:\n\n```csharp\nIPopupService _popupService;\n\nYourCustomPopup _popup;\n\nawait _popupService.ShowPopupAsync(_popup, animated);\n```\n\nIt has overload for showing popup which accepts a window of type ```Window```, on which the popup will be shown:\n\n```csharp\nIPopupService _popupService;\n\nYourCustomPopup _popup;\n\nawait _popupService.ShowPopupAsync(_popup, desiredWindow, animated);\n```\n\nHide popup (the last one from ```PopupStack```):\n\n```csharp\nIPopupService _popupService;\n\nawait _popupService.HidePopupAsync(animated);\n```\n\nAnd overload for hiding desired popup:\n\n```csharp\nIPopupService _popupService;\n\nYourCustomPopup _popup;\n\nawait _popupService.HidePopupAsync(_popup, animated);\n```\n\nNote: Don't forget to catch informative exceptions;\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMPowerKit%2FPopups","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMPowerKit%2FPopups","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMPowerKit%2FPopups/lists"}