# star7-github/vbook-master architecture

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

- Interactive diagram: https://gitdiagram.com/star7-github/vbook-master
- Repository: https://github.com/star7-github/vbook-master

## Overview

This is a BlueOS sample application branded as a vbook, with pages whose names indicate an e-book experience: browsing, book details, catalog navigation, and reading. The tree also shows settings, transfer, and demo pages. The README describes a generic application template, not these page workflows; page implementations and the manifest were not sampled, so their routing and interactions cannot be verified. The only confirmed internal dependency shown is the global router import.

Main entry points: [`src/global.js`](https://github.com/star7-github/vbook-master/blob/main/src/global.js) (Global router setup)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_runtime["App Runtime"]
  node_app["App entry<br/>[app.ux]"]
  node_manifest["App manifest<br/>[manifest.json]"]
  node_global["Global router setup<br/>[global.js]"]
  node_router["BlueOS router"]
end

subgraph group_books["Book Experience"]
  node_home["Home<br/>[index.ux]"]
  node_shelf["Bookshelf<br/>[index.ux]"]
  node_bookdetail["Book detail<br/>[index.ux]"]
  node_catalog["Catalog<br/>[index.ux]"]
  node_reader["Reader<br/>[index.ux]"]
  node_scrollreader["Scroll reader<br/>[index.ux]"]
end

subgraph group_support["Supporting Pages"]
  node_settings["Settings<br/>[index.ux]"]
  node_transfer["Transfer<br/>[index.ux]"]
  node_demo["Demo<br/>[index.ux]"]
  node_demodetail["Demo detail<br/>[index.ux]"]
  node_jump["Jump page<br/>[index.ux]"]
  node_inputnum["Numeric input<br/>[index.ux]"]
  node_appletoast["Toast component<br/>[index.ux]"]
end

node_user(("App user"))

node_global -->|"imports"| node_router

click node_app "https://github.com/star7-github/vbook-master/blob/main/src/app.ux"
click node_manifest "https://github.com/star7-github/vbook-master/blob/main/src/manifest.json"
click node_global "https://github.com/star7-github/vbook-master/blob/main/src/global.js"
click node_home "https://github.com/star7-github/vbook-master/blob/main/src/pages/Home/index.ux"
click node_shelf "https://github.com/star7-github/vbook-master/blob/main/src/pages/Bookshelf/index.ux"
click node_bookdetail "https://github.com/star7-github/vbook-master/blob/main/src/pages/BookDetail/index.ux"
click node_catalog "https://github.com/star7-github/vbook-master/blob/main/src/pages/Catalog/index.ux"
click node_reader "https://github.com/star7-github/vbook-master/blob/main/src/pages/Reader/index.ux"
click node_scrollreader "https://github.com/star7-github/vbook-master/blob/main/src/pages/ScrollReader/index.ux"
click node_settings "https://github.com/star7-github/vbook-master/blob/main/src/pages/Settings/index.ux"
click node_transfer "https://github.com/star7-github/vbook-master/blob/main/src/pages/Transfer/index.ux"
click node_demo "https://github.com/star7-github/vbook-master/blob/main/src/pages/Demo/index.ux"
click node_demodetail "https://github.com/star7-github/vbook-master/blob/main/src/pages/DemoDetail/index.ux"
click node_jump "https://github.com/star7-github/vbook-master/blob/main/src/pages/Jump/index.ux"
click node_inputnum "https://github.com/star7-github/vbook-master/blob/main/src/pages/inputNum/index.ux"
click node_appletoast "https://github.com/star7-github/vbook-master/blob/main/src/components/AppleToast/index.ux"

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_manifest,node_global,node_router,node_user toneBlue
class node_home,node_shelf,node_bookdetail,node_catalog,node_reader,node_scrollreader toneAmber
class node_settings,node_transfer,node_demo,node_demodetail,node_jump,node_inputnum,node_appletoast toneMint
```

## Components

### App Runtime

- [App entry](https://github.com/star7-github/vbook-master/blob/main/src/app.ux): `src/app.ux`
- [App manifest](https://github.com/star7-github/vbook-master/blob/main/src/manifest.json): `src/manifest.json`
- [Global router setup](https://github.com/star7-github/vbook-master/blob/main/src/global.js): `src/global.js`
- **BlueOS router**

### Book Experience

- [Home](https://github.com/star7-github/vbook-master/blob/main/src/pages/Home/index.ux): `src/pages/Home/index.ux`
- [Bookshelf](https://github.com/star7-github/vbook-master/blob/main/src/pages/Bookshelf/index.ux): `src/pages/Bookshelf/index.ux`
- [Book detail](https://github.com/star7-github/vbook-master/blob/main/src/pages/BookDetail/index.ux): `src/pages/BookDetail/index.ux`
- [Catalog](https://github.com/star7-github/vbook-master/blob/main/src/pages/Catalog/index.ux): `src/pages/Catalog/index.ux`
- [Reader](https://github.com/star7-github/vbook-master/blob/main/src/pages/Reader/index.ux): `src/pages/Reader/index.ux`
- [Scroll reader](https://github.com/star7-github/vbook-master/blob/main/src/pages/ScrollReader/index.ux): `src/pages/ScrollReader/index.ux`

### Supporting Pages

- [Settings](https://github.com/star7-github/vbook-master/blob/main/src/pages/Settings/index.ux): `src/pages/Settings/index.ux`
- [Transfer](https://github.com/star7-github/vbook-master/blob/main/src/pages/Transfer/index.ux): `src/pages/Transfer/index.ux`
- [Demo](https://github.com/star7-github/vbook-master/blob/main/src/pages/Demo/index.ux): `src/pages/Demo/index.ux`
- [Demo detail](https://github.com/star7-github/vbook-master/blob/main/src/pages/DemoDetail/index.ux): `src/pages/DemoDetail/index.ux`
- [Jump page](https://github.com/star7-github/vbook-master/blob/main/src/pages/Jump/index.ux): `src/pages/Jump/index.ux`
- [Numeric input](https://github.com/star7-github/vbook-master/blob/main/src/pages/inputNum/index.ux): `src/pages/inputNum/index.ux`
- [Toast component](https://github.com/star7-github/vbook-master/blob/main/src/components/AppleToast/index.ux): `src/components/AppleToast/index.ux`

### Other components

- **App user**

## Connections

- Global router setup → BlueOS router: imports
