RDKDEV-1421 Add thunderUI Documentation - #123
Conversation
|
Added README.md for thunderUI |
There was a problem hiding this comment.
Pull request overview
Adds a comprehensive technical README under docs/ describing ThunderUI’s purpose, architecture, module structure, and runtime/build configuration to help developers understand and operate the project.
Changes:
- Introduces a full ThunderUI design/architecture overview (including Mermaid diagrams).
- Documents module responsibilities and component interactions (JSON-RPC/WebSocket + REST fallback).
- Describes configuration and persistence behavior (conf/env/localStorage).
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
There was a problem hiding this comment.
Pull request overview
Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.
Comments suppressed due to low confidence (6)
docs/README.md:82
- This makes it sound like Node ≥17 is always handled automatically, but the automatic
--openssl-legacy-providerwiring only happens when building via CMake (it setsNODE_OPTIONS). Clarify the scope so developers runningnpmscripts directly know what to expect.
- **Build Dependencies**: Node.js (≥ 17 handled automatically with OpenSSL legacy provider), npm, Webpack 4, ThunderJS v1.2.4, `copy-webpack-plugin`, `css-loader`, `style-loader`, `dotenv-webpack`.
docs/README.md:216
- The docs describe
cache_periodas an active API cache setting, but ThunderUI currently doesn't use it anywhere (it only exists as a constant inconf.js). Adjust this row so readers don't assume it has runtime effect.
| `conf.js` | Static configuration values compiled into the bundle: polling interval, API cache period, and the default start plugin. | `src/js/conf.js` |
docs/README.md:326
cache_periodis currently not used in the codebase (only defined insrc/js/conf.js). Consider marking it as currently unused here to keep the configuration documentation accurate.
| `src/js/conf.js` | Compiled into the bundle. Sets polling interval, API cache period, and default start plugin. | Edit source before building |
docs/README.md:334
cache_periodis described as controlling API response caching, but there is no implementation using this value (it’s only defined insrc/js/conf.js). Update the description to reflect its current status or link it to the code that uses it.
| `cache_period` | int | `500` | Duration in milliseconds during which the WPE API will serve a cached response to prevent excessive requests. Defined in `conf.js`. |
docs/README.md:336
- The runtime fallback is
resolveHostnamePort()(hostname + port, defaulting port 80 when absent), not justwindow.location.hostname. Tweaking this wording makes the behavior matchsrc/js/helpers.js.
| `HOST` | string | `127.0.0.1` | Target device IP address used for development builds. Set in `.env.local` (not deployed). Falls back to `window.location.hostname` at runtime. |
docs/README.md:85
cache_periodis documented as an active runtime setting here, but it is not referenced anywhere outsidesrc/js/conf.js(the API layer does not currently use it). Mark it as currently unused (or implement the caching/throttling behavior in code).
This issue also appears in the following locations of the same file:
- line 216
- line 326
- line 334
- **Configuration Files**: `conf.js` (compiled into bundle) — sets `refresh_interval` (5000 ms), `cache_period` (500 ms), and `startPlugin` (Controller). At build time, an optional `.env.local` file supplies `HOST` for local development builds.
|
The review comments are now addressed |
RDKDEV-1421