Skip to main content

Changelog

Ydesign is composed of several independently published packages, each with its own release cadence. This page lists major capability changes only; minor fixes and dependency bumps live in each package’s Git history.

📦 Versions follow SemVer. Starting from v1.0, breaking changes to public APIs are reflected in the major version number.

PackageOn npmCurrentStatus
@ydesign/core@ydesign/core0.4.2Public preview
@ydesign/editor-store@ydesign/editor-store0.3.0Public preview
@ydesign/react-editor@ydesign/react-editor0.8.0Public preview
@ydesign/vue-editor————Planned

All public packages are still in the 0.x range; some APIs may evolve based on feedback. v1.0 will ship alongside the Ydesign SDK v1.0 announcement blog.


@ydesign/core

Canvas rendering core — wraps Fabric.js v6, UI-framework agnostic.

0.4.4

Patch Changes

  • Rotation control polish:
    • Rotation handle restyled as a white circular button with Lucide refresh-ccw (Gaoding-style), connector line hidden
    • Hover / drag shows a Lucide rotate-ccw custom cursor
    • Restoring controls after crop exit goes through the latest createControls (includes the above)

0.4.3

Patch Changes

  • cbaf0b1: Rotation interaction and toolbar angle editing:
    • @ydesign/core: Extend default mtr; hold Shift to snap every 10° (Fabric snapAngle + rotationWithSnapping, avoids anchor drift); show an angle overlay beside the handle while dragging; add objectsHandler.setAngle() so typed angles go through centered rotate().
    • @ydesign/react-editor: Editable angle input in the top bar (AnglePicker); move placeholder “remove background / inpaint” out of the built-in image toolbar — inject via components / extendToolbar (e.g. demo custom-toolbar).

Only major capability changes are listed; minor fixes and dependency bumps are omitted. Full history is in Git.

0.4.2

  • HistoryHandler adds exportStacks / importStacks to export and restore per-page canvas undo/redo stacks for the unified multi-page history timeline.

0.4.0

  • Multi-page editor foundation: SceneHandler page switching and thumbnails; history init emits UI status events.

0.3.0 (2026-06-22)

Breaking change: nanoid re-export removed — use generateObjectId() instead.

  • GuidelinesHandler: smart guides use a two-stage flow (show hint first, then snap); each axis snaps to the nearest candidate only.
  • New generateObjectId(); fabric upgraded to ^6.9.1.

0.2.1 (2026-05)

  • RulerHandler: ruler + draggable guides (adaptive ticks, drag-back-to-delete, transparent to persistence).

0.2.0 (2026-04)

  • InpaintHandler: eraser mode, stroke-level undo/redo, inpaint:status, replaceTargetImageSrc.

0.1.9 (2026-03)

  • InpaintHandler: brush / rect / lasso modes with mask export.
  • ImageStrokeHandler: dashed / inner / outer image strokes.

0.1.x

  • Initial Handler stack (Workarea / Zoom / Objects / History / Scene / Crop / Guidelines, etc.) and Editor event bus.

@ydesign/editor-store

Framework-agnostic editor state: MobX-State-Tree store + Project layer.

0.3.0

  • Multi-page enhancements: unified document + canvas undo timeline; loadJSON supports replace / append / replace-page; race-safe thumbnails on page switch and append; saveAsImages multi-page image export (ZIP).

0.2.0

  • Multi-page: pages API, DesignDocument load / export, draft thumbnails.

0.1.0

  • Initial release: framework-agnostic MobX-State-Tree Store shared by react-editor / vue-editor.

@ydesign/react-editor

Official React editor UI — built-in shadcn components on MobX + mobx-state-tree.

0.8.2

Patch Changes

  • cbaf0b1: Rotation interaction and toolbar angle editing:

    • @ydesign/core: Extend default mtr; hold Shift to snap every 10° (Fabric snapAngle + rotationWithSnapping, avoids anchor drift); show an angle overlay beside the handle while dragging; add objectsHandler.setAngle() so typed angles go through centered rotate().
    • @ydesign/react-editor: Editable angle input in the top bar (AnglePicker); move placeholder “remove background / inpaint” out of the built-in image toolbar — inject via components / extendToolbar (e.g. demo custom-toolbar).
  • Updated dependencies [cbaf0b1]

    • @ydesign/core@0.4.3

Only major capability changes are listed; minor fixes, legacy UI migration notes, and dependency bumps are omitted. Full history is in Git.

0.8.1

Patch Changes

  • Fix missing main entry type declarations (app.d.ts not emitted).

0.8.0

  • Multi-page UX: template placement dialog (single-select + confirm);
  • Pages thumbnail sizing;
  • Toolbar “add text” dropdown;
  • Undo/redo driven by the store timeline;
  • DiscreteSlider for stepped values.

0.7.0

  • UI layer stabilized on built-in shadcn components and semantic CSS variables; built-in theme system (ThemeSwitcher, multiple presets).
  • Fix: image crop state not resetting when switching pages.

0.6.0

  • Multi-page UI: bottom Pages timeline, synced with undo/redo on page change.

0.5.0

Breaking change: business shell moved out of the SDK.

  • Project, topbar, business APIs, and ID-photo / inpaint business panels moved out — SDK keeps the canvas UI shell and Section extension points.
  • Removed /project, /topbar, and setBaseURL / setAPI; added Section.nonClosable and related extension points.

0.3.0 (2026-06)

  • Build migrated to Vite (multi-entry ESM + UMD bundle); @ydesign/react-editor/bundle for CDN use.

0.2.9 (2026-05)

  • <RulerButton />: canvas ruler and guides toggle.

0.2.8 (2026-04)

  • Inpaint panel: eraser, undo/redo; lasso UX aligned with selection tools.

0.1.x

  • Initial editor UI: SidePanel (templates / text / photos, etc.), dynamic Toolbar, Workspace, MST Store, i18n, and font management.

@ydesign/vue-editor

Official Vue 3 UI layer on Vue 3 + Pinia.

Unreleased (planned)

  • API parity with @ydesign/react-editor
  • Shares @ydesign/core; JSON fully interoperable
  • See Vue integration

Feedback or ideas? Open an issue on GitHub.