From ffeb8938097bc0308cb0450f8fdcad51bce871bc Mon Sep 17 00:00:00 2001 From: Oleh Omelchenko Date: Mon, 13 Oct 2025 01:28:58 +0300 Subject: [PATCH] Implement Vega-Lite rendering with error handling and dynamic library loading --- docs/dev-plan.md | 23 ++++++++---- index.html | 92 +++++++++++++++++++++++++++++++++++++++++------- src/styles.css | 6 ++-- 3 files changed, 99 insertions(+), 22 deletions(-) diff --git a/docs/dev-plan.md b/docs/dev-plan.md index b51facc..050e6df 100644 --- a/docs/dev-plan.md +++ b/docs/dev-plan.md @@ -105,17 +105,26 @@ Astrolabe is a focused tool for managing, editing, and previewing Vega-Lite visu --- -### **Phase 4: Vega-Lite Rendering** +### **Phase 4: Vega-Lite Rendering** ✅ **COMPLETE** **Goal**: Live preview of visualizations -- [ ] Load Vega-Embed from CDN -- [ ] Create render function that takes spec from editor -- [ ] Add debounced auto-render on editor change -- [ ] Display rendered chart in right panel -- [ ] Handle rendering errors gracefully (show in preview panel) +- [x] Load Vega-Embed from CDN +- [x] Create render function that takes spec from editor +- [x] Add debounced auto-render on editor change +- [x] Display rendered chart in right panel +- [x] Handle rendering errors gracefully (show in preview panel) **Deliverable**: Editor → live chart pipeline working with auto-refresh +**Key Achievements**: +- Successfully resolved AMD loader conflicts with Monaco Editor +- Implemented UMD build loading with temporary AMD disable/restore +- Added 1.5s debounced rendering for smooth editing experience +- Created comprehensive error handling with user-friendly messages +- Established working editor → JSON parsing → Vega-Lite rendering pipeline +- Sample bar chart loads and renders immediately on page load +- Live preview updates automatically as user edits JSON specification + --- ### **Phase 5: Data Model + LocalStorage** @@ -275,5 +284,5 @@ Astrolabe is a focused tool for managing, editing, and previewing Vega-Lite visu --- -**Current Phase**: Phase 4 - Vega-Lite Rendering +**Current Phase**: Phase 5 - Data Model + LocalStorage **Status**: Ready to begin implementation \ No newline at end of file diff --git a/index.html b/index.html index d7151ec..a194268 100644 --- a/index.html +++ b/index.html @@ -83,14 +83,7 @@ Preview
-
-
- Vega-Lite visualization will render here -
-
- Live preview • Auto-refresh • Error display -
-
+
@@ -98,6 +91,7 @@