Board File Fixer - notice ========================= Board File Fixer (https://boardfile-fixer.skillsafe.ai/) is a derived work of the agent skill @kepano/json-canvas, published in kepano/obsidian-skills: https://github.com/kepano/obsidian-skills (skills/json-canvas/SKILL.md, last changed in commit 5a557ceba792fcb4c58591f3117c6887810d8df1, 2026-02-25) Copyright (c) 2026 Steph Ango (@kepano), MIT License - full text in LICENSE-obsidian-skills.txt. What is derived from the skill: the rules the page checks and the model follows - the node and edge attributes, the validation checklist (ids unique across nodes and edges, every fromNode/toNode resolving, required fields per node type, allowed sides, ends and colours), the newline pitfall (a literal backslash-n shows as two characters in Obsidian), the 16-character hex id convention and the layout guidelines (spacing, padding, suggested sizes). The page's JSON reader, checker, layout checks, SVG preview and outline are new code written for this app. Other sources, checked on 2026-09-27: - JSON Canvas Spec 1.0 (2024-03-11), https://jsoncanvas.org/spec/1.0/ - source file spec/1.0.md in https://github.com/obsidianmd/jsoncanvas at commit cb29ef61788cf430f3deb7ed3501110ed5bced7c (Copyright (c) 2024 Obsidian.md, MIT). No spec text is redistributed beyond short paraphrase. Where the sources differ, and what the page does: - Unique ids. The spec says each node and each edge has a unique id; the skill's checklist says ids are unique across nodes and edges together. The page reports two nodes (or two edges) sharing an id as an error, and a node and an edge sharing an id as a warning from the skill. - Id format. The spec requires only a string; 16 lowercase hex characters is the skill's convention, so other ids are an info note, never an error. - Colours. The spec shows hex colours as "#FF0000"; the page accepts 6-digit hex and warns on the 3-digit form, which neither source mentions. - Groups. Neither source lists a group's children; the page treats a node as inside a group when it lies fully within the group's rectangle, and notes nodes that are only half inside. - Edge sides. Where an edge names no side, the spec leaves the choice to each app; the preview picks the side facing the other node, which may differ from Obsidian. - Preset colours "1"-"6" have no defined values in the spec; the preview uses its own palette. Obsidian is not affiliated with this app. No Obsidian code is included.