deeplink_x 1.0.0 copy "deeplink_x: ^1.0.0" to clipboard
deeplink_x: ^1.0.0 copied to clipboard

Easy to use Flutter plugin for type-safe external deeplink launching with built-in smart fallback, supporting app stores and popular apps.

DeeplinkX #

A lightweight Flutter plugin for type-safe handling of external deeplinks with built-in support for popular apps. Features smart fallback to app stores and web URLs across all major platforms.

Naming Note: 'X' in DeeplinkX stands for external.

Features #

  • Easy to use
  • Type-safe API for external deeplinks
  • Multi-platform support
  • Smart fallback system
  • No native platform codes

Usage #

import 'package:deeplink_x/deeplink_x.dart';

void main() {
  final deeplinkX = DeeplinkX();

  // Launch App Actions
  final isActionLaunched = await deeplinkX.launchAction(Telegram.openProfile('username'));
  deeplinkX.launchAction(Telegram.openProfile('username', fallBackToStore: true));
  deeplinkX.launchAction(Telegram.openProfile('username'), disableFallback: true);

  // Launch Apps
  final isLaunched = await deeplinkX.launchApp(Instagram.open());
  deeplinkX.launchApp(Instagram.open(fallBackToStore: true));
  deeplinkX.launchApp(Instagram.open(), disableFallback: true);

  // Check App Is Installed
  final isInstalled = await deeplinkX.isAppInstalled(LinkedIn());

  // Redirect to store (Update app use case)
  // Redirect to appropriate store based on platform
  final isRedirected = await deeplinkX.redirectToStore(
    storeActions: [
      AppStore.openAppPage(appId: '389801252'),  // iOS App Store
      PlayStore.openAppPage(packageName: 'com.instagram.android'),  // Google Play Store
      HuaweiAppGalleryStore.openAppPage(appId: 'C101162369'),  // Huawei AppGallery Store
    ],
  );
}

Supported Apps And Actions #

Category App Supported Actions
Stores iOS App Store • Launch app
• Open app page
• Rate app
Stores Mac App Store • Launch app
• Open app page
• Rate app
Stores Microsoft Store • Launch app
• Open app page
• Rate app
Stores Google Play Store • Launch app
• Open app page
Stores Huawei AppGallery Store • Launch app
• Open app page
Stores Cafe Bazaar Store • Launch app
• Open app page
Stores Myket Store • Launch app
• Open app page
• Rate app
Social Apps Telegram • Launch app
• Open profile by username/phone
• Send message
Social Apps Instagram • Launch app
• Open profile by username
Social Apps WhatsApp • Launch app
• Chat with phone number
• Share text content
Business LinkedIn • Launch app
• Open profile page
• Open company page

Documentation #

Detailed documentation available in doc/apps:

URL Scheme Handling #

DeeplinkX uses a three-tier approach for compatibility:

  1. Native App Deep Links: Direct app launch when installed
  2. Store Fallback: Redirects to app stores when apps aren't installed (with fallBackToStore: true)
  3. Web Fallback: Redirects to web URLs when neither app nor store is available

Most app actions (like opening profiles, sending messages) support all three fallback levels:

// With store fallback enabled
await deeplinkX.launchAction(Instagram.open(fallBackToStore: true));

// With fallback disabled
await deeplinkX.launchAction(Instagram.open(), disableFallback: true);

For detailed URL schemes and fallback behavior, see each app's documentation.

Platform-Specific Configuration #

See respective app documentation for platform-specific configuration.

Contributing #

Contributions are welcome! Please feel free to submit a Pull Request:

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

License #

This project is licensed under the MIT License - see the LICENSE file for details.

Issues and Feature Requests #

Have a bug or feature request? Please open a new issue after checking existing ones.

4
likes
160
points
406
downloads

Publisher

verified publisherp-hatan.com

Weekly Downloads

Easy to use Flutter plugin for type-safe external deeplink launching with built-in smart fallback, supporting app stores and popular apps.

Repository (GitHub)
View/report issues

Topics

#deeplink #external-deeplink #custom-url-schemes #open-store

Documentation

API reference

License

MIT (license)

Dependencies

deeplink_x_android, deeplink_x_ios, deeplink_x_linux, deeplink_x_macos, deeplink_x_platform_interface, deeplink_x_web, deeplink_x_windows, flutter

More

Packages that depend on deeplink_x