Skip to content

Releases: NixWrk/Obsidian-Plugin---Miro-Canvas

0.3.2

Choose a tag to compare

@github-actions github-actions released this 10 Oct 20:10
2a6995a
  • Remove the deprecated, no-op Range.detach call from vector text measurement. Preserve glyph positioning, text styles and export cancellation while supporting hosts without the legacy method.
  • Clarify retained standalone Node/configuration warnings and the command ID that preserves existing hotkeys.

Optional standalone CLI and MCP tools are available separately (Node 20+).

0.3.1

Choose a tag to compare

@github-actions github-actions released this 10 Oct 13:46
b19018a
  • Keep main.js below5MB for Obsidian Sync Standard by losslessly compressing all four offline PDF fonts. Preserve their glyphs, styles, licensing and decoded bytes.
  • Remove unused jsPDF external PDF viewers and HTML/SVG raster plugins at build time; add source-integrity, runtime-script and production-size checks.
  • Replace the export panel’s duplicate max-height with a vh/dvh variable fallback, retaining safe-area and keyboard bounds.
  • Publish only the three Obsidian files in plugin releases; provide the optional CLI/MCP bundles in matching tools companion prereleases.
  • Document vault enumeration for local graph/backlinks/property search and clipboard access for explicit copy/cut/paste actions.

Optional standalone CLI and MCP tools are available separately (Node 20+).

0.3.0

Choose a tag to compare

@github-actions github-actions released this 10 Oct 12:57
15da03a
  • Add a global minimum zoom percentage for the figure radius marker in plugin settings, with slider and exact input; default 200%, or 0 for any zoom. Follow native displayed zoom, remove the marker while zooming out and cancel unfinished radius drafts without a history entry; retain drag/exact input and the settings switch.

  • Restore native Canvas pan/pinch for finger drags from selected, unselected or locked native cards and native mixed/collapsed selection areas in review, native readonly and slideshow; board navigation leaves node positions and history unchanged. Preserve native right-button mouse panning through the move guard.

  • Add Raster/Vector PDF and PowerPoint export while retaining standalone SVG. Vector PDF embeds licensed Noto Sans in four styles and preserves real paths/text/clipping; vector PPTX embeds SVG per slide with a JPEG compatibility fallback. Keep independent snapshots, Stop and guarded saves; load the bundled PDF libraries only when requested.

  • Hide editing and creation menus in review, restoring them on exit and retaining direct selected-link opening. Add a temporary laser pointer to review and slideshow controls; its bounded fading trail never changes board data/history or enters exports. Present ordinary native frames in file order, with export pages as a fallback, and restore readonly on exit.

  • Refine the export panel with grouped page actions, compact paper/quality controls, native SVG action icons, a scrolling body and persistent Close/output actions; account for tablet safe areas and the real Android keyboard. Keep PDF/PowerPoint/SVG callbacks and independent rendering unchanged.

  • Use a bidirectional radius arrow and restore the earlier marker movement with the live radius. Give side connection circles explicit accent outlines that remain visible over Obsidian tablet button rules.

  • Replace the small circular shape-radius marker with a rounded-corner/drag-arrow icon and show the current radius above the held control during finger, pen or mouse movement; retain exact numeric input.

  • Make the inherited board theme follow the owning Obsidian window rather than a conflicting OS preference; label it “Obsidian” / «Как в Obsidian». Follow live host changes and retain explicit board themes. Wrap long board-menu labels without displacing switches. Correct selected attachment-name checkbox state for native runtime nodes so repeated toggling and Undo/Redo work.

  • Replace the selection More popover’s scattered icon grid with labelled action rows, consistent native controls, touch targets and Delete last. Keep the action list inside the available board area while Android’s keyboard is open.

  • Keep rectangular shape corners circular at any width/height. Add a drag handle and exact input directly on the selected figure, plus a plugin-settings switch; remember the last radius for new rounded rectangles. Use wide/tall/square catalogue proportions for click/drop creation instead of making every figure a square.

  • Add adjustable card corner radius (0–48 board pixels; square by default), preserving diagram and drawing geometry.

  • Exclude supported CSS snippets from Canvas by default, with individual permissions in searchable settings. Preserve ordinary note styling and native/theme/plugin CSS; diagnose unsupported global rules and popout ownership instead of claiming complete isolation.

  • Add independent SVG export with actual vector geometry/text and vertically stacked clipped pages. Preserve computed card typography/radius and native arrow transforms; embed only intrinsic raster attachments. Unsupported rich content reports a refusal; fonts remain references and cosmetic shadows are omitted.

  • Expand board search to linked Markdown note contents and heading/block slices, with match-case, bounded regular expressions and explicit invalid/unsupported-pattern feedback.

  • Add Flip for native and independent connections, connected/incoming/outgoing selection and optional highlighting. Add reversible group collapse as a view projection, retaining native cards, lines and stored geometry.

  • Move a selection into a new board with preserved card IDs, styling, unknown fields and Miro source evidence; redirect crossing lines to the new file card and retain old card links through redirects. Undo restores the source selection but deliberately retains the target board.

  • Add board properties, tags/aliases and individual-card links/embeds. Use guarded transient metadata caches plus graph/outgoing/backlink integration; discover property-only backlinks outside native results with genuine board navigation, supported only with an empty backlink filter.

  • Add a separate board-property/tag file-result supplement for positive conjunctions, including typed searches. Unsupported OR, negation, regex, comparisons, typed operands and mixed content/file/path syntax fail closed for the supplement; native search remains unchanged.

  • Add optional note-property-derived connections between file cards, reconciling only marked generated edges and preserving manual connections. Maintain property links and moved-card redirects across renames through checked writers.

  • Prefer a permanent palette for new or uncustomized boards while preserving customized local palettes. Add named scoped CSS declarations from a restricted subset and zoom content thresholds with selection/editing exemptions.

  • Wait for native Markdown rendering before independent PDF/PowerPoint capture so card text remains in background exports under default throttling.

Verification, supported behavior and remaining coverage follow-ups are
tracked in the feature plan and
release checks.

  • Refresh all 58 English/Russian guide GIFs with readable step captions, simpler workflows and clear final states. Add one board-theme switch example per language; keep card colors and content visible across both themes. Place panels beside the work, select cards before following links, and verify actual drawing/erasure and reachable controls.
  • Simplify the English and Russian READMEs with a feature overview, quick installation and first steps. Keep all detailed instructions and existing GIFs in linked user guides; move CLI examples and source-warning notes to the contributor guides.
  • Update development ESLint to 10.12.0 and Node 22 declarations to 22.20.5; development now requires Node 22.13+ on supported lines. Keep the three plugin runtime files unchanged and CLI/MCP downloads on Node 20+; rebuilding the standalone tools changes only unused package metadata. Pin html2canvas-pro 2.5.0: the next two patches declare Node 24 and are deferred.

Tools for Miro Canvas 0.3.2

Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Oct 20:10
2a6995a

Standalone CLI and MCP bundles for Miro Canvas 0.3.2, built from the same tagged commit.

Download miro-canvas-cli.mjs or miro-canvas-mcp.mjs and run it with Node 20+ outside the Obsidian plugin folder. No dependency install is needed.

Tools for Miro Canvas 0.3.1

Pre-release

Choose a tag to compare

@github-actions github-actions released this 10 Oct 13:46
b19018a

Standalone CLI and MCP bundles for Miro Canvas 0.3.1, built from the same tagged commit.

Download miro-canvas-cli.mjs or miro-canvas-mcp.mjs and run it with Node 20+ outside the Obsidian plugin folder. No dependency install is needed.

0.2.10

Choose a tag to compare

@github-actions github-actions released this 07 Oct 09:24
413e23a
  • Render PDF/PowerPoint pages from an independent board snapshot and pack files in a bundled Web Worker. Keep the working camera, selection and editing available; board switches retain running exports. Stop cancels the job, plugin unload aborts all jobs, and output paths remain tied to the source board. No screen capture or extra window.
  • Keep board panels, default cards and their editing frames consistent when the board and Obsidian use opposite light/dark themes. Carry the board scheme into export and progress panels. Theme checks now reject white controls on a dark board and inspect actual colors while reading and editing on Windows and physical Android devices.
  • Update the build and test toolchain together to esbuild 0.28.2 and Vitest 5.0.3, and browser checks to Playwright 1.63.0. Keep all existing behavior assertions.
  • Use patched Moment 2.31.0 for the development SDK dependency, removing the remaining known npm audit advisories. This does not replace Obsidian's own runtime libraries.
  • Update pinned GitHub Actions for Node/Python setup and release provenance. Group related Dependabot updates; defer incompatible TypeScript and Node declaration major upgrades with documented reasons.
  • Building the repository now requires a supported Node version from 22.12 onward. Downloaded CLI/MCP still target Node 20+. The plugin minimum Obsidian version remains 1.13.7.

0.2.9

Choose a tag to compare

@github-actions github-actions released this 07 Oct 06:32
  • Publish ready-to-run miro-canvas-cli.mjs and miro-canvas-mcp.mjs as optional release downloads. Both require Node 20+; Obsidian only needs the usual three plugin files.

  • Add an optional Node 20+ CLI built with npm run cli:build to list, call and batch the same board tools as MCP. Accept JSON arguments, file input or stdin, return one JSON result and explicit exit codes, and support custom configuration folders and read-only use.

  • Run batch calls sequentially and stop at the first refusal, retaining earlier writes. Hand off revisions per board with expectedRevision: "previous"; undo remembers only the last change in the same process. MCP and the format skill remain available.

  • Return JSON for CLI --help and --version. Remove standalone startup console redirects, forbid own console use and configure Ajv with logger: false, preserving structured validation errors. Replace the type-only node:stream import with the readline input type and a structural output writer. Explain retained Node imports, the explicit .obsidian default and the legacy hotkey command ID in both root READMEs; raw CLI I/O advisories remain visible.

0.2.8

Choose a tag to compare

@github-actions github-actions released this 06 Oct 22:11
  • Keep pen width steady while holding a stroke to straighten it and through pen lift. Recognize uneven smart-drawn rectangles by their sides and corners; preserve the orientation of rectangles, ellipses and triangles, rounded to 45-degree steps.
  • Cancel a resize without adding an empty Undo step. Keep attached native edges and connector chains aligned with mixed selections during movement, commit and cancellation; preserve unknown endpoint, waypoint and comment fields.
  • Keep selection menus inside the board and the search close button above folded controls on phones. Close comment threads and unsaved drafts when an outside press starts another board action, while keeping thread and pin controls interactive.
  • Add a keyboard-accessible section selector to settings, put welcome/import actions first and use Obsidian's declarative settings API on supported versions. Clarify moving and resizing export pages and the numbered welcome route in English and Russian.
  • Remove all remaining CSS !important and :has() selectors. Preserve native menu visibility, card alignment, paint and selected layer styles through scoped rules and reversible style ownership, restoring native values when the plugin unloads.
  • Create HTML/SVG in the owning window, including detached previews and popouts. Keep delayed gestures, refresh polling and observers in that window and cancel pending work on unload or view changes.
  • Wait for native PDF loading and initial page layout before fitting a document, with a two-second deadline and the existing native controls fallback. Closing its window cancels pending waits; export, Stop and save failures restore the board view.
  • Keep native font fallback after a local font read fails and allow a later request to retry.
  • Support custom Obsidian configuration folders through --config-dir in the optional standalone MCP server, with a separate Node runtime lint check in CI. The plugin does not start the server.
  • Remove redundant TypeScript assertions and tighten private Canvas boundaries. Retain the existing command ID to preserve saved hotkeys; its one advisory lint warning remains documented.
  • Record affected user actions and mandatory checks before lint changes. The final implementation passes 2,036 unit tests, browser smoke checks and scoped checks in installed Windows, Android tablet and phone Obsidian. The phone runs below the supported minimum; successful Android system clipboard roundtrips and physical pen pressure/palm/hover remain unverified. See the regression register for evidence and limits.

0.2.7

Choose a tag to compare

@github-actions github-actions released this 05 Oct 18:10
  • Fix arrows disappearing on phones when no colour was assigned: support both native RGB-channel and complete CSS-colour theme variables for lines, arrowheads and block arrows, including off-screen edges after plugin reload.
  • Fix the square outline around rounded native cards: paint their fill on the native face and leave the shell and inner Markdown surfaces transparent. Translucent fills are painted once.
  • Restore source decorations before changing persisted appearance, preventing stale fills after undoing a shape change. Keep native styles intact when the plugin unloads.
  • Verify light/dark themes, selection and plugin reload on desktop, Android tablet and phone, plus editing and shape undo in real desktop Obsidian.

0.2.6

Choose a tag to compare

@github-actions github-actions released this 05 Oct 17:06
  • Folded panels now clear their expanded inline spacing instead of overriding it with CSS !important. Explicit toggle-host and menu states replace seven :has() selectors and four !important declarations.
  • Keep the fold button in place when a wide toolbar opens on a narrow phone: choose the roomier side and wrap within the available width. Preserve and restore this width when dragging or cancelling a drag.
  • Keep search announcements visually hidden without clip-path, while retaining them for assistive technology.
  • Read the interface language through Obsidian's public API; remove the obsolete local storage fallback.
  • Check CSS advisory regression budgets in CI and release builds. Remaining advisories are still reported; this release does not claim a warning-free community review.