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

A comprehensive deeplink and short URL management system built with Clean Architecture principles. Supports strategy patterns, dependency injection, and enterprise-grade error handling.

Changelog #

All notable changes to the shyun_link package will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

1.0.0 - 2025-08-08 #

๐ŸŽ‰ Initial Release #

โœจ Added

  • Core Domain Entities

    • DeepLinkEntity - Comprehensive deep link representation
    • ShortLinkEntity - Short URL management with analytics
    • NavigationRouteEntity - Route configuration and metadata
    • Result<T> - Functional error handling pattern
  • DeepLink Management System

    • Universal Link Support for both app schemes and web URLs
    • Parametrized link processing with query parameter extraction
    • Fallback strategies for handling unknown or malformed links
    • Route validation to ensure links point to valid destinations
    • Preview mode for debugging and testing deeplinks
  • Short URL System

    • HTTP-based short link creation and management
    • Click analytics with geographic, device, and referrer tracking
    • Expiration management with time-based link expiration
    • Custom alias support for branded short links
    • Batch operations for efficient multiple link creation
  • Framework-Agnostic DI System

    • Support for GetX, get_it, Provider, and built-in DI
    • Automatic adapter detection and initialization
    • Custom adapter interface for extending to other DI frameworks
    • Comprehensive lifecycle management with disposable pattern
  • Configuration Management

    • Environment-based configuration (development, staging, production)
    • Runtime configuration modification without rebuilding
    • Security controls including domain whitelisting and rate limiting
    • Performance tuning with caching and request optimization
  • Enterprise Features

    • Comprehensive logging with debug, performance, and error tracking
    • Type safety with full Dart null safety support
    • Testing utilities with built-in mocks and test helpers
    • Performance optimization with caching and request coalescing

๐Ÿ—๏ธ Architecture Components

  • Domain Layer: Pure business logic with entities, repositories, and services
  • Application Layer: Use cases, factories, and facades orchestrating domain logic
  • Infrastructure Layer: External integrations, HTTP clients, and platform services
  • Configuration Layer: Framework-agnostic setup and dependency management

๐Ÿ”ง Integration Points

  • GetX Integration: Seamless integration with GetX state management and routing
  • get_it Integration: Support for get_it service locator pattern
  • Built-in DI: No external dependencies required for basic functionality
  • Custom DI: Extensible adapter pattern for any DI framework

๐Ÿ“ฑ Platform Support

  • โœ… Android - App Links and Custom Schemes
  • โœ… iOS - Universal Links and Custom Schemes
  • โœ… Web - URL Routing with History API
  • โœ… macOS - Custom URL Schemes
  • โœ… Windows - Protocol Registration
  • โœ… Linux - Desktop Integration

๐Ÿงช Testing Support

  • Unit test utilities with mock implementations
  • Integration test helpers for end-to-end scenarios
  • Test configuration presets for different environments
  • Comprehensive example app demonstrating all features

๐Ÿ“š Documentation

  • Complete README with quickstart guide
  • API documentation with detailed examples
  • Architecture overview with diagrams
  • Migration guides for existing implementations
  • Best practices and common patterns

๐Ÿ›ก๏ธ Security Features #

  • URL validation with configurable domain whitelisting
  • Rate limiting to prevent abuse
  • Input sanitization and validation
  • Secure error handling without information leakage

โšก Performance Features #

  • Request caching with configurable timeout
  • Request coalescing to prevent duplicate operations
  • Lazy loading of non-critical components
  • Memory-efficient data structures
  • Optimized batch operations

๐Ÿ” Debugging & Monitoring #

  • Detailed logging with configurable levels
  • Performance metrics and timing information
  • Error tracking with context preservation
  • System status reporting and diagnostics
  • Preview mode for deeplink testing

[Unreleased] #

๐Ÿ”ฎ Planned Features #

  • Analytics dashboard integration
  • A/B testing support for deeplinks
  • Advanced caching strategies
  • GraphQL integration for short links
  • Custom domain support
  • QR code generation
  • Link expiration notifications
  • Webhook integration for link events

Migration Guide #

From Custom Implementation #

If you're migrating from a custom deeplink implementation:

  1. Install the package:

    dependencies:
      flutter_deeplink_architect: ^1.0.0
    
  2. Initialize the system:

    final config = DeepLinkConfig.defaults(
      appScheme: 'your-app-scheme',
      baseUrl: 'https://your-domain.com',
    );
    await DeepLinkArchitect.initialize(config);
    
  3. Replace deeplink handling:

    // Old way
    void handleDeepLink(String url) {
      // Custom parsing and routing logic
    }
       
    // New way
    final facade = DIContainer.get<DeepLinkFacade>();
    final success = await facade.handleDeepLink(url);
    
  4. Update short link creation:

    // Old way
    final shortUrl = await createShortLink(originalUrl);
       
    // New way
    final shortUrl = await facade.createPageLink(
      pageType: 'product',
      pageId: productId,
      originalUrl: originalUrl,
    );
    

Breaking Changes #

  • None (initial release)

Deprecations #

  • None (initial release)

For more information, visit our GitHub repository.

3
likes
0
points
6
downloads

Publisher

unverified uploader

Weekly Downloads

A comprehensive deeplink and short URL management system built with Clean Architecture principles. Supports strategy patterns, dependency injection, and enterprise-grade error handling.

Repository (GitHub)
View/report issues

Topics

#deeplink #url #shortlink #navigation

License

unknown (license)

Dependencies

dio, flutter, logger, share_plus, url_launcher

More

Packages that depend on shyun_link