Overview
Voyager is a Flutter package that combines widget routing and basic dependency injection, enabling developers to define navigation paths in YAML format. It allows for dynamic route configuration and extensibility through custom plugins, simplifying navigation logic and reducing boilerplate. By leveraging YAML, routes become declarative and maintainable, while the built-in dependency injection supports seamless service management across screens. Ideal for apps with complex navigation needs, Voyager streamlines development and enhances code organization.
Use cases
- Declarative navigation with YAML
- Complex app routing
- Dynamic route configuration
- Plugin-based navigation extensions
- Simplified dependency injection
- Cross-platform navigation
Key features
- YAML-based route definitions
- Custom plugin support
- Built-in dependency injection
- Cross-platform compatibility
- Minimal boilerplate
- Extensible navigation system
Suitable for
- Large-scale Flutter applications
- Teams prioritizing maintainable routing
- Developers using declarative configuration
- Apps requiring dynamic navigation
- Projects with reusable navigation components
Considerations
- Requires YAML knowledge for route setup
- Limited to basic dependency injection
- Learning curve for plugin integration
- Not ideal for simple one-screen apps
- Depends on external YAML parsing
- May need additional tooling for validation