A Swift library for launching external iOS apps and handling deeplinking with concise syntax and web fallback support.
Appz is a Swift library that simplifies deeplinking to external applications on iOS, watchOS, and tvOS. It provides a clean, type-safe API to launch apps and handle URLs, reducing the complexity and boilerplate typically involved in integrating external app functionality. The library includes built-in support for over 170 apps with isolated specs and automatic web fallback.
iOS, watchOS, and tvOS developers who need to integrate deeplinking to external applications like social media, maps, or productivity tools within their Swift apps. It's particularly useful for developers building apps that interact with multiple third-party services.
Developers choose Appz for its type-safe, autocomplete-friendly API that eliminates common deeplinking errors like missing URL schemes or forgetting to check if an app is installed. Its community-maintained, extensible design and comprehensive testing make it more reliable and scalable than manual implementation.
📱 Launch external apps, and deeplink, with ease using Swift!
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.
Provides full autocomplete support, eliminating common errors like incorrect URL schemes and reducing the need to refer to external documentation, as emphasized in the README's design goals.
Seamlessly falls back to web URLs when an external app isn't installed, improving user experience without extra code, demonstrated in the Twitter example with status deeplinking.
Includes over 170 tested app specs for major services like Instagram, Google Maps, and Slack, saving significant development time compared to manual research and implementation.
Each app is isolated in separate files for scalability, and custom apps can be added by conforming to the ExternalApplication protocol, as shown in the extensibility example.
Limited to iOS, watchOS, and tvOS, making it unsuitable for projects that need deeplinking on other platforms like Android, macOS, or cross-platform frameworks.
Requires adding URL schemes to Info.plist under LSApplicationQueriesSchemes for each app, an extra setup step that can be tedious and error-prone, as noted in the 'Getting Started' section.
External app specs may change over time, and the library relies on community contributions to stay current, potentially leading to outdated integrations if updates lag.