# kazuma-bit/devshort architecture

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

- Interactive diagram: https://gitdiagram.com/kazuma-bit/devshort
- Repository: https://github.com/kazuma-bit/devshort

## Overview

DevToggle is an Android app for controlling developer mode, with a main-screen toggle and companion Quick Settings tile and home-screen widget. The tree also identifies UI for ADB permission and extra developer tools. Source excerpts and a README were not provided, so links among these components are limited to the evident app surfaces; their exact coordination and system-setting behavior cannot be confirmed.

Main entry points: [`app/src/main/java/com/example/ui/MainScreen.kt`](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/MainScreen.kt) (Main screen), [`app/src/main/java/com/example/MainActivity.kt`](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/MainActivity.kt) (Main activity), [`app/src/main/java/com/example/DevToggleTileService.kt`](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevToggleTileService.kt) (Quick Settings tile), [`app/src/main/java/com/example/DevToggleWidgetProvider.kt`](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevToggleWidgetProvider.kt) (Toggle widget)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_ui["App interface"]
  node_activity["Main activity<br/>[MainActivity.kt]"]
  node_screen["Main screen<br/>[MainScreen.kt]"]
  node_hero["Toggle card<br/>[HeroToggleCard.kt]"]
  node_adb["ADB permission"]
  node_tools["Extra tools"]
  node_tilecard["Tile card"]
  node_widgetpreview["Widget preview"]
end

subgraph group_control["Toggle control"]
  node_manager["Settings manager"]
end

subgraph group_surfaces["Android surfaces"]
  node_tile["Quick Settings tile"]
  node_widget["Toggle widget"]
end

node_user(("User"))
node_android["Android system"]

node_user -->|"opens app"| node_activity
node_activity -->|"shows screen"| node_screen
node_screen -->|"presents toggle"| node_hero
node_screen -->|"presents permission"| node_adb
node_screen -->|"presents tools"| node_tools
node_screen -->|"presents tile"| node_tilecard
node_screen -->|"presents widget"| node_widgetpreview
node_tile -->|"system tile"| node_android
node_widget -->|"home widget"| node_android

click node_activity "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/MainActivity.kt"
click node_screen "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/MainScreen.kt"
click node_hero "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/HeroToggleCard.kt"
click node_adb "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/AdbPermissionCard.kt"
click node_tools "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/ExtraDevToolsCard.kt"
click node_tilecard "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/QuickSettingsTileCard.kt"
click node_widgetpreview "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/WidgetPreviewCard.kt"
click node_manager "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevSettingsManager.kt"
click node_tile "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevToggleTileService.kt"
click node_widget "https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevToggleWidgetProvider.kt"

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_activity,node_screen,node_hero,node_adb,node_tools,node_tilecard,node_widgetpreview,node_user toneBlue
class node_manager toneAmber
class node_tile,node_widget toneMint
class node_android toneIndigo
```

## Components

### App interface

- [Main activity](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/MainActivity.kt): `app/src/main/java/com/example/MainActivity.kt`
- [Main screen](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/MainScreen.kt): `app/src/main/java/com/example/ui/MainScreen.kt`
- [Toggle card](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/HeroToggleCard.kt): `app/src/main/java/com/example/ui/components/HeroToggleCard.kt`
- [ADB permission](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/AdbPermissionCard.kt): `app/src/main/java/com/example/ui/components/AdbPermissionCard.kt`
- [Extra tools](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/ExtraDevToolsCard.kt): `app/src/main/java/com/example/ui/components/ExtraDevToolsCard.kt`
- [Tile card](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/QuickSettingsTileCard.kt): `app/src/main/java/com/example/ui/components/QuickSettingsTileCard.kt`
- [Widget preview](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/ui/components/WidgetPreviewCard.kt): `app/src/main/java/com/example/ui/components/WidgetPreviewCard.kt`

### Toggle control

- [Settings manager](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevSettingsManager.kt): `app/src/main/java/com/example/DevSettingsManager.kt`

### Android surfaces

- [Quick Settings tile](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevToggleTileService.kt): `app/src/main/java/com/example/DevToggleTileService.kt`
- [Toggle widget](https://github.com/kazuma-bit/devshort/blob/main/app/src/main/java/com/example/DevToggleWidgetProvider.kt): `app/src/main/java/com/example/DevToggleWidgetProvider.kt`

### Other components

- **User**
- **Android system**

## Connections

- User → Main activity: opens app
- Main activity → Main screen: shows screen
- Main screen → Toggle card: presents toggle
- Main screen → ADB permission: presents permission
- Main screen → Extra tools: presents tools
- Main screen → Tile card: presents tile
- Main screen → Widget preview: presents widget
- Quick Settings tile → Android system: system tile
- Toggle widget → Android system: home widget
