# timilsinadinesh101/nowinandroid architecture

> Architecture diagram of the GitHub repository timilsinadinesh101/nowinandroid, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-26). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/timilsinadinesh101/nowinandroid
- Repository: https://github.com/timilsinadinesh101/nowinandroid

## Overview

Now in Android is a modular Kotlin/Compose app for browsing Android news and following topics. The principal journey is opening the app, exploring personalized or searchable content, viewing topic details, and saving items or preferences; followed interests can also lead to matching-content notifications. The README documents demo data and production backend modes. The tree identifies the relevant feature, data, storage, sync, and notification modules, but sampled source does not establish their internal call wiring, so uncertain connections are omitted.

Main entry points: [`app`](https://github.com/timilsinadinesh101/nowinandroid/tree/main/app) (Android app), [`feature/foryou/impl`](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/foryou/impl) (For You), [`core/network`](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/network) (Network access), [`feature/search/impl`](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/search/impl) (Search)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["App experience"]
  node_app["Android app"]
end

subgraph group_content["Content features"]
  node_foryou["For You"]
  node_search["Search"]
  node_topic["Topic details"]
  node_interests["Interests"]
end

subgraph group_platform["Data platform"]
  node_domain["Domain logic"]
  node_data["Repositories"]
  node_database[("Local database")]
  node_datastore[("Preferences store")]
  node_network["Network access"]
  node_demo["Demo content"]
end

subgraph group_engagement["User engagement"]
  node_bookmarks["Bookmarks"]
  node_settings["Settings"]
  node_sync["Background sync"]
  node_notifications["Notifications"]
end

node_user(("App user"))
node_backend["Content backend"]

node_user -->|"opens"| node_app
node_app -->|"presents feed"| node_foryou
node_app -->|"opens search"| node_search
node_app -->|"opens topics"| node_topic
node_app -->|"manages interests"| node_interests
node_app -->|"opens saved items"| node_bookmarks
node_app -->|"opens settings"| node_settings
node_network -.->|"fetches content"| node_backend
node_demo -.->|"supplies local content"| node_foryou

click node_app "https://github.com/timilsinadinesh101/nowinandroid/tree/main/app"
click node_foryou "https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/foryou/impl"
click node_search "https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/search/impl"
click node_topic "https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/topic/impl"
click node_interests "https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/interests/impl"
click node_bookmarks "https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/bookmarks/impl"
click node_settings "https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/settings/impl"
click node_domain "https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/domain"
click node_data "https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/data"
click node_database "https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/database"
click node_datastore "https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/datastore"
click node_network "https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/network"
click node_demo "https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/network"
click node_sync "https://github.com/timilsinadinesh101/nowinandroid/tree/main/sync/work"
click node_notifications "https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/notifications"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_app,node_user toneBlue
class node_foryou,node_search,node_topic,node_interests toneAmber
class node_domain,node_data,node_database,node_datastore,node_network,node_demo toneMint
class node_bookmarks,node_settings,node_sync,node_notifications toneRose
class node_backend toneIndigo
```

## Components

### App experience

- [Android app](https://github.com/timilsinadinesh101/nowinandroid/tree/main/app): `app`

### Content features

- [For You](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/foryou/impl): `feature/foryou/impl`
- [Search](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/search/impl): `feature/search/impl`
- [Topic details](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/topic/impl): `feature/topic/impl`
- [Interests](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/interests/impl): `feature/interests/impl`

### Data platform

- [Domain logic](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/domain): `core/domain`
- [Repositories](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/data): `core/data`
- [Local database](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/database): `core/database`
- [Preferences store](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/datastore): `core/datastore`
- [Network access](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/network): `core/network`
- [Demo content](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/network): `core/network`

### User engagement

- [Bookmarks](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/bookmarks/impl): `feature/bookmarks/impl`
- [Settings](https://github.com/timilsinadinesh101/nowinandroid/tree/main/feature/settings/impl): `feature/settings/impl`
- [Background sync](https://github.com/timilsinadinesh101/nowinandroid/tree/main/sync/work): `sync/work`
- [Notifications](https://github.com/timilsinadinesh101/nowinandroid/tree/main/core/notifications): `core/notifications`

### Other components

- **App user**
- **Content backend**

## Connections

- App user → Android app: opens
- Android app → For You: presents feed
- Android app → Search: opens search
- Android app → Topic details: opens topics
- Android app → Interests: manages interests
- Android app → Bookmarks: opens saved items
- Android app → Settings: opens settings
- Network access → Content backend: fetches content
- Demo content → For You: supplies local content
