Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/eyedol/github-android-client
Unofficial Github Android-client
https://github.com/eyedol/github-android-client
android architecture modularized
Last synced: about 5 hours ago
JSON representation
Unofficial Github Android-client
- Host: GitHub
- URL: https://github.com/eyedol/github-android-client
- Owner: eyedol
- License: apache-2.0
- Created: 2018-08-16T08:43:45.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2023-12-15T17:52:49.000Z (11 months ago)
- Last Synced: 2023-12-15T18:57:25.047Z (11 months ago)
- Topics: android, architecture, modularized
- Language: Kotlin
- Size: 5.68 MB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# POC Of a Modularized Architecture
```
+---------------------+
| |
| |
+--------------+| app +-----------+
| | | |
| | | |
| | | |
| +----------+----------+ |
| | |
| | |
| | |
| | |
| | |
+------+------+ +-------+------+ +------+------+
| | | | | |
| :users | | :user | | :login |
| +---+ | | +---+ |
| | | | | | | |
+------+------+ | +-------+------+ | +--------+----+
| | | | |
| | | | |
| | | | |
| | | | |
| | +----------+--------+ | |
| | | | | |
| +----+ :user-model +--+ |
| | | |
| +-------------------+ |
| |
| |
| |
| |
+------+---------------------------------------------------+-----+
| |
| |
| :base |
| |
| |
+----------------------------------------------------------------+```
**app:** The composed application that would be built and packaged as apk. It has all the feature related modules.
**user-model:** A **shared** module to be used by `user` related feature. Essentially a `user` model class.
**user:** A feature module for showing a particular user details. This module has the `base` and `user-model` modules.
**users:** A feature module for showing a list of users. This module has the `base` and `user-model` modules as well.
**login:** A feature module for allowing a user to login. This module has the `base` and `user-model` modules.
**base:** A shared module to be used by all feature related modules.
# Navigation
[Deep link](https://developer.android.com/training/app-links/deep-linking) handles all the navigations
There's an `AppNavigation` class in the base module navigating users to the different screens. This is solely using deep links for launching all `Activities`
# Sample Demo