Aligns the entry-file naming with the folder-name convention from
.claude/rules/node-architecture.md / superproject CLAUDE.md.
NON-BREAKING: the Node-RED type id stays lowercase
(`RED.nodes.registerType('dashboardapi', ...)`) so every deployed flow
that references this node continues to load. Only the file paths
change. Admin endpoints `/dashboardapi/menu.js` and
`/dashboardapi/configData.js` are unaffected — they follow the type
id, not the filename.
Updated:
- package.json `main` + `node-red.nodes` value
- test/basic/structure-module-load.basic.test.js require path
- CLAUDE.md: legacy-drift warning replaced with a note explaining the
type-id preservation strategy
Same approach recommended for the remaining two legacy renames (mgc,
vgc); the superproject CLAUDE.md drift table now spells that out.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
42 lines
1.9 KiB
Markdown
42 lines
1.9 KiB
Markdown
# dashboardAPI — Claude Code context
|
||
|
||
InfluxDB telemetry and FlowFuse chart endpoints.
|
||
Part of the [EVOLV](https://gitea.wbd-rd.nl/RnD/EVOLV) wastewater-automation platform.
|
||
|
||
## S88 classification
|
||
|
||
| Level | Colour | Placement lane |
|
||
|---|---|---|
|
||
| **Utility (no S88 level)** | `none` | n/a |
|
||
|
||
## Flow layout rules
|
||
|
||
When wiring this node into a multi-node demo or production flow, follow the
|
||
placement rule set in the **EVOLV superproject**:
|
||
|
||
> `.claude/rules/node-red-flow-layout.md` (in the EVOLV repo root)
|
||
|
||
Key points for this node:
|
||
- Place on lane **n/a** (x-position per the lane table in the rule).
|
||
- Stack same-level siblings vertically.
|
||
- Parent/children sit on adjacent lanes (children one lane left, parent one lane right).
|
||
- Wrap in a Node-RED group box coloured `none` (Utility (no S88 level)).
|
||
|
||
## Folder & File Layout
|
||
|
||
Every per-node file MUST use the folder name (`dashboardAPI`) **exactly**, case-sensitive. Full rule: [`.claude/rules/node-architecture.md`](https://gitea.wbd-rd.nl/RnD/EVOLV/src/branch/development/.claude/rules/node-architecture.md) in the EVOLV superproject.
|
||
|
||
| Path | Required name |
|
||
|---|---|
|
||
| Entry file | `dashboardAPI.js` |
|
||
| Editor HTML | `dashboardAPI.html` |
|
||
| Node adapter | `src/nodeClass.js` |
|
||
| Domain logic | `src/specificClass.js` |
|
||
| Editor JS modules | `src/editor/*.js` (extract when inline editor JS exceeds ~50 lines) |
|
||
| Tests | `test/{basic,integration,edge}/*.test.js` |
|
||
| Example flows | `examples/*.flow.json` |
|
||
|
||
> ℹ️ **Note on the Node-RED type id.** The files are now `dashboardAPI.{js,html}` (folder-name convention satisfied 2026-05-19), but the registered type id stays lowercase: `RED.nodes.registerType('dashboardapi', …)`. Every deployed flow references the type id, not the file name, so this preserves backward compatibility. Admin endpoints (`/dashboardapi/menu.js`, `/dashboardapi/configData.js`) follow the type id and are also unchanged.
|
||
|
||
When adding new files, read the rule above first to avoid drift.
|