Skip to content

feat(playground): Expand into schema workbench#72

Merged
mhiro2 merged 2 commits into
mainfrom
feat/schema-workbench
Apr 18, 2026
Merged

feat(playground): Expand into schema workbench#72
mhiro2 merged 2 commits into
mainfrom
feat/schema-workbench

Conversation

@mhiro2

@mhiro2 mhiro2 commented Apr 18, 2026

Copy link
Copy Markdown
Owner

Summary

  • Add WASM bindings for lint and diff operations to enable browser-based schema workbench features
  • Transform the playground into a full-featured schema workbench with Render, Inspect, Export, Lint, and
    Compare modes
  • Support formatter-backed output formats (text, markdown, JSON) for non-visual modes
  • Implement mode-specific UI panels and editor state management across all operations

Changes

  • 7badf94 : feat(wasm): expose schema workbench APIs
    • Expose WASM bindings for lint and diff operations to support schema workbench browser features
    • Extend request exports to include layout direction and support new browser-facing diff/lint shapes
    • Implement formatter-backed diff responses with text, markdown, and JSON content for non-visual rendering
      modes
    • Add wasm-bindgen tests to lock down lint and compare entry points under Node.js
  • a522d04 : feat(playground): expand into schema workbench
    • Rework the public playground into a schema workbench with five operational modes (Render, Inspect, Export,
      Lint, Compare)
    • Implement mode-specific UI panels with unified WASM runtime integration and mode-aware rendering logic
    • Add before/after editor support for the Compare mode with synchronized state management
    • Update documentation and local playground TypeScript definitions to reflect the expanded workbench surface

mhiro2 added 2 commits April 18, 2026 08:44
Add WASM bindings for lint and diff so the browser workbench can use
Relune application features beyond diagram rendering. Export requests now
also carry layout direction, and the request adapters cover the new
browser-facing diff and lint shapes.

Diff responses now return formatter-backed text, markdown, and JSON
content for non-visual modes, while wasm-bindgen tests lock down the new
lint and compare entry points under Node.js.
Rework the public playground into a browser schema workbench with
Render, Inspect, Export, Lint, and Compare modes over the shared WASM
runtime. The UI now exposes mode-specific panels, compare before/after
editors, richer output actions, and updated schema workbench copy.

Example changes and resets now keep the single editor and compare
editors aligned so switching modes never runs stale SQL. The docs and
local playground typings were updated alongside the new workbench
surface.
@mhiro2 mhiro2 self-assigned this Apr 18, 2026
@mhiro2 mhiro2 added the enhancement New feature or request label Apr 18, 2026
@github-actions

Copy link
Copy Markdown

Code Metrics Report

main (a58a08b) #72 (f4ac84b) +/-
Coverage 94.2% 94.1% -0.1%
Test Execution Time 1m27s 1m31s +4s
Details
  |                     | main (a58a08b) | #72 (f4ac84b) |  +/-  |
  |---------------------|----------------|---------------|-------|
- | Coverage            |          94.2% |         94.1% | -0.1% |
  |   Files             |             77 |            77 |     0 |
  |   Lines             |          32073 |         32185 |  +112 |
+ |   Covered           |          30224 |         30308 |   +84 |
- | Test Execution Time |          1m27s |         1m31s |   +4s |

Code coverage of files in pull request scope (72.9% → 73.4%)

Files Coverage +/- Status
crates/relune-wasm/src/lib.rs 5.7% -2.2% modified
crates/relune-wasm/src/request.rs 97.9% +2.5% modified

Reported by octocov

@mhiro2
mhiro2 merged commit 0f996e3 into main Apr 18, 2026
4 checks passed
@mhiro2
mhiro2 deleted the feat/schema-workbench branch April 18, 2026 06:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant