# Roadmap: good next functions Near-term useful features: 1. Engine UX polish - Show “SaxonJS loading…” when the large compiler file is first loaded. - Show compile time vs transform time separately. - Cache compiled SEF by stylesheet hash to avoid recompiling unchanged XSLT. 2. Parameters - Add UI for xsl:param. - Support string/number/boolean parameters first. - Later support XPath expressions. 3. Better diagnostics - Convert SaxonJS compiler/runtime errors into editor diagnostics. - Extract line/module info when available. - Jump from diagnostic to editor line. 4. Examples / templates - Identity transform. - Rename elements. - Extract table. - Namespace cleanup. - Grouping example. - XSLT 3.0 shallow-copy example. 5. Project files - Export/import a full local project JSON: '''XML input XSLT output engine examples/tests parameters''' - No uploads needed. 6. Test cases inside the app - Multiple XML inputs per stylesheet. - Expected output assertions. - Diff expected vs actual. - “Run all tests” button. 7. Diff views - XML input vs output. - Previous output vs current output. - Pretty XML diff. 8. Explain mode - Start with static analysis: '''template match → output node candidates''' - Later add instrumentation around generated SEF or stylesheet templates. 9. Performance - Web Worker for SaxonJS compile/transform. - Prevent UI lockups on large XML. - Progress indicator and cancellation if possible. 10. Storage - LocalStorage for small projects. - IndexedDB for larger documents and histories.