https://github.com/jeziellago/flownav
Annotation processor that provides better navigation on android multi-modules projects 🛳.
https://github.com/jeziellago/flownav
android annotation-processor fragments kotlin navigation navigation-component
Last synced: 6 months ago
JSON representation
Annotation processor that provides better navigation on android multi-modules projects 🛳.
- Host: GitHub
- URL: https://github.com/jeziellago/flownav
- Owner: jeziellago
- License: apache-2.0
- Created: 2019-11-20T01:19:25.000Z (almost 6 years ago)
- Default Branch: master
- Last Pushed: 2021-06-24T12:07:45.000Z (over 4 years ago)
- Last Synced: 2025-03-27T23:41:43.502Z (7 months ago)
- Topics: android, annotation-processor, fragments, kotlin, navigation, navigation-component
- Language: Kotlin
- Homepage:
- Size: 310 KB
- Stars: 134
- Watchers: 8
- Forks: 11
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# FlowNav   [](https://androidweekly.net/issues/issue-397)  [](https://search.maven.org/search?q=g:%22dev.jeziellago%22%20AND%20a:%22flownav-annotation%22)
FlowNav is a mobile library for Android that helps and provider a better way to make multi-modules navigation.
>The main purpose of this library is to help in cases where you have a project with multiple modules and need to navigate from one feature to another without adding dependency between them. For example, to navigate from module A to module B, you do not need to add module B as a dependency of module A.
>
>There are other ways to solve the problem of module-to-module navigation such as using Intent-filter (which is error-prone and not support fragments). FlowNav solves these problems, either using Activities, native Fragments, or through the Navigation Component.
>
>**Check the [wiki](https://github.com/jeziellago/FlowNav/wiki).**
#### Processor
```groovy
dependencies {kapt "dev.jeziellago:flownav-processor:$VERSION"
}
```#### Annotation
```groovy
dependencies {implementation "dev.jeziellago:flownav-annotation:$VERSION"
}
```#### Router
```groovy
dependencies {api "dev.jeziellago:flownav-router:$VERSION"
}
```>**`Router` dependency is imported only on the `navigation module`**.
>
>**All other modules will import the `Processor` and `Annotation` dependencies**## Start Now!
* [Import dependencies](https://github.com/jeziellago/FlowNav/wiki/Setup-Dependencies)
* [Init FlowNavApp on Application](https://github.com/jeziellago/FlowNav/wiki/Start-FlowNav)
* [Navigation on Activities](https://github.com/jeziellago/FlowNav/wiki/Navigation-on-Activities)
* [Navigation on Fragments](https://github.com/jeziellago/FlowNav/wiki/Navigation-on-Fragments)
* [Fragments using Navigation Component](https://github.com/jeziellago/FlowNav/wiki/Fragments-using-Navigation-Component)## LICENSE
This project is available under Apache Public License version 2.0. See [LICENSE](LICENSE.md).