diff options
| author | grothedev <grothedev@gmail.com> | 2025-10-03 20:28:33 -0400 |
|---|---|---|
| committer | grothedev <grothedev@gmail.com> | 2025-10-03 20:28:33 -0400 |
| commit | 0d58ccc4e90b93fa1498a3fa97712697ac606775 (patch) | |
| tree | c303ee4ff66fa0930869efe2160a49c561082770 /web-timeplot | |
| parent | bcc93c8d058e6db05e32e262760d0903a721e402 (diff) | |
move rust proj into own fowdowh
Diffstat (limited to 'web-timeplot')
| -rw-r--r-- | web-timeplot/AGENTS.md | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/web-timeplot/AGENTS.md b/web-timeplot/AGENTS.md new file mode 100644 index 0000000..9e4bcef --- /dev/null +++ b/web-timeplot/AGENTS.md @@ -0,0 +1,38 @@ +## Features to implement +### some of the features that i want to implement next + +- time speed adjustment +- pause and resume time +- label of current real time +- label of current plot time +- hover tooltip for data points +- data input system +- multiple panels that can be toggled on and off + - use extension scaffolding src as example https://github.com/MoebiusSolutions/extension-scaffold/tree/main + - possibly use ES directly, but ideally make own system if it can be better and simpler +- config panel + +## Systems - dividing up concerns in a sensible, performant, and easy-to-maintain-and-work-with way +### my initial thinking on the concerns of different architectural components. this very well may change, and each thing does not necessarily map to its own file or even its own class. + +- local configuration: read a config file +- state management: + - user preferences + - service config (websocket url, remote api endpoints) + - UI config (what panels acive, ) + - database stuff + - plots (which attributes of which input data-type are which graph axes, current time range viewable, ) + - data input stuff (structure of input datapoints, source, metadata) + - health (service connections, framerate, db access) + - +- application event system (to notify of state updates) +- rendering +- input data processing +- plot handling +- DB handling +- disk handling +- service handling (websockets, mqtt, HTTP REST) + + +### Notes +- we will need a good system for state management, as the state will grow fairly large, including things like user preferences, UI config (what panels are displayed),
\ No newline at end of file |
