Skip to content

Commit b8ad63c

Browse files
committed
docs for plugin ecosystem
1 parent 6dbfbd0 commit b8ad63c

File tree

7 files changed

+1965
-18
lines changed

7 files changed

+1965
-18
lines changed

docs/PLUGIN_GLYPHS.md

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,9 @@
22

33
This document describes the design, API, and usage for the ScreenGrid glyph plugin system.
44

5-
Status: PR-ready skeleton implementation included in `src/glyphs/GlyphRegistry.js` and integration wired into `ScreenGridLayerGL.js`.
5+
📖 **📚 For comprehensive documentation**: See [PLUGIN_GLYPH_ECOSYSTEM.md](./PLUGIN_GLYPH_ECOSYSTEM.md) for detailed evaluation, all available plugins, usage patterns, and complete API reference.
6+
7+
Status: ✅ **Fully implemented and production-ready**. Complete implementation in `src/glyphs/GlyphRegistry.js` with full integration into `ScreenGridLayerGL.js`. Four built-in plugins available, lifecycle hooks implemented, and legend support functional.
68

79
## Goals
810

@@ -79,10 +81,10 @@ Notes:
7981

8082
## Future improvements (post-MVP)
8183

82-
- Per-layer plugin lifecycle hooks: call `plugin.init(layer, config)` and `plugin.destroy()` so plugins can manage state.
83-
- Legend integration: allow `Legend` to call `plugin.getLegend(cellInfo)` when available.
84-
- Optional sandboxing: consider WebWorker or sandboxed if third-party plugins run untrusted code.
85-
- Dynamic loading: allow registering plugins from URLs (with security considerations).
84+
- **Implemented**: Per-layer plugin lifecycle hooks (`plugin.init(layer, config)` and `plugin.destroy()`)
85+
- **Implemented**: Legend integration (Legend module calls `plugin.getLegend()` when available)
86+
- **Planned**: Optional sandboxing: consider WebWorker or sandboxed if third-party plugins run untrusted code.
87+
- **Planned**: Dynamic loading: allow registering plugins from URLs (with security considerations).
8688

8789
## Files changed in this PR
8890

0 commit comments

Comments
 (0)