Overview
Organize route access rules and deep link validation around your application's navigation flow.
flutter_deep_link_guard Organize route access rules and deep link validation around your application's navigation flow.
Installation
Add the package to your Flutter project.
flutter pub add flutter_deep_link_guard:^1.0.0Quick Start
Start with this small example, then connect it to your own application. Read the known limitations before using it with real data.
import 'package:flutter_deep_link_guard/flutter_deep_link_guard.dart';
Future<String?> redirectFor(String location, bool signedIn) async {
final pipeline = GuardPipeline([
AuthGuard(
isAuthenticated: () => signedIn,
fallbackRedirectPath: '/login',
),
]);
return pipeline.evaluate(GuardContext(location: location));
}This is a starting point, not a complete application. Add error handling and tests for your own backend and lifecycle.
Configuration
Keep configuration with the part of your application that owns the package instance. Connect authentication, storage, exporters or backend handlers explicitly rather than relying on hidden global state.
Use the versioned API reference for constructors and options. The starting example above focuses on a small integration surface; the repository example shows the surrounding application code.
Explore configuration in the API referenceKnown Limitations
The local audit found that an HTTPS URI without a host can pass the host allowlist check. Validate the URI scheme and require a nonempty allowed host before passing external links to this release.
API Reference
Explore the public classes, methods and constructors for version 1.0.0.
Open versioned API referenceExample & Tests
Use the repository example to explore the package in context. Run its tests locally, and add regression cases for the known limitations above. The SSL package’s device test results do not apply to this package.
git clone https://github.com/lekthedeveloper/flutter_deep_link_guard.git
cd flutter_deep_link_guard
flutter pub get
flutter testFrequently Asked Questions
Can I use this package in a commercial app?
The package is MIT licensed. Follow the license terms and review the current limitations for your use case.
Where should I report a bug?
Open an issue in the package repository. Include the package and Flutter versions, a minimal reproduction and the expected behavior. Remove credentials and private data.
Are these packages all verified for production?
No blanket guarantee is made. Each guide documents its current limitations. Test your integration and use independent review for sensitive workflows.