zombie-mermaid 5.8.1 → 5.8.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -30,7 +30,7 @@ Ultra-fast, fully themeable, zero DOM dependencies. A maintained fork of [`beaut
30
30
 
31
31
  `beautiful-mermaid` is a genuinely good library — fast, beautiful, and works everywhere from rich UIs to plain terminals. Checkable facts, as of 2026-10-13: the last push to upstream's `main` was 2026-05-06 and its latest release is v1.1.2 (2026-02-26); it has [43 open pull requests](https://github.com/lukilabs/beautiful-mermaid/pulls) (19 opened before 2026-04-13) and [50 open issues](https://github.com/lukilabs/beautiful-mermaid/issues) (live counts at those links; the figures above are a dated snapshot). I maintain `zombie-mermaid` as the fork that won't stay buried: pulling in upstream fixes, giving PRs stuck in the upstream queue a home, and actually shipping releases. Craft and Craft Agents aren't part of this project's process going forward; this is an independently maintained continuation.
32
32
 
33
- This isn't just a claim — see **[what this fork fixes](https://dfadler.github.io/zombie-mermaid/fork-fixes.html)** for an evidence-based before/after showcase (51 fixes): every bug listed there is rendered by the actual pre-fix and post-fix code, not described from memory.
33
+ This isn't just a claim — see **[what this fork fixes](https://dfadler.github.io/zombie-mermaid/fork-fixes.html)** for an evidence-based before/after showcase (53 fixes): every bug listed there is rendered by the actual pre-fix and post-fix code, not described from memory.
34
34
 
35
35
  It's still MIT-licensed, still built on the same foundation, and still credits the original authors — including the ASCII rendering engine's origins — in [Attribution](#attribution) below.
36
36
 
@@ -1,36 +1 @@
1
- import { AsciiRenderOptions } from '@zombie-mermaid/ascii-renderer';
2
-
3
- /** Value of the `layout` option / `--layout` flag. `'standard'` is the default grid renderer. */
4
- export declare type AsciiLayoutMode = 'mermaid' | 'standard';
5
-
6
- export declare interface AsciiLayoutResult {
7
- text: string;
8
- /** Which renderer produced `text`. */
9
- path: 'layout-faithful' | 'standard';
10
- /** Why the standard renderer ran although `layout: 'mermaid'` was requested. */
11
- fallbackReason?: string;
12
- /** Caveat to show with layout-faithful output (merged parallel edges). */
13
- note?: string;
14
- }
15
-
16
- /**
17
- * Render ASCII, optionally from mermaid's ELK layout (`layout: 'mermaid'`).
18
- *
19
- * Layout-faithful covers flat flowcharts only; anything else (subgraphs, unmodelled shapes,
20
- * other diagram types, a layout failure, elkjs 0.9.3 not installed) falls back to the standard
21
- * renderer and says so in `fallbackReason`. Layout-faithful output is plain text drawn on its
22
- * own grid, so spacing/color/profile options apply only to the fallback. A drawing that cannot
23
- * fit the width cap (`maxCols`, default 120) also falls back; pass `maxCols: Infinity` to get the
24
- * wide layout-faithful text instead.
25
- */
26
- export declare function renderMermaidASCIIWithLayout(text: string, options?: AsciiRenderOptions & {
27
- layout?: AsciiLayoutMode;
28
- /**
29
- * Width cap for the layout-faithful drawing (default 120). The rasterizer shrinks blank gaps
30
- * to fit; when the boxes alone are wider, the standard renderer runs instead (with
31
- * `fallbackReason`). `Infinity` disables the cap: the wide layout-faithful text is returned.
32
- */
33
- maxCols?: number;
34
- }): Promise<AsciiLayoutResult>;
35
-
36
- export { }
1
+ export * from "./shared/ascii-layout.js";
@@ -1,36 +1 @@
1
- import { AsciiRenderOptions } from '@zombie-mermaid/ascii-renderer';
2
-
3
- /** Value of the `layout` option / `--layout` flag. `'standard'` is the default grid renderer. */
4
- export declare type AsciiLayoutMode = 'mermaid' | 'standard';
5
-
6
- export declare interface AsciiLayoutResult {
7
- text: string;
8
- /** Which renderer produced `text`. */
9
- path: 'layout-faithful' | 'standard';
10
- /** Why the standard renderer ran although `layout: 'mermaid'` was requested. */
11
- fallbackReason?: string;
12
- /** Caveat to show with layout-faithful output (merged parallel edges). */
13
- note?: string;
14
- }
15
-
16
- /**
17
- * Render ASCII, optionally from mermaid's ELK layout (`layout: 'mermaid'`).
18
- *
19
- * Layout-faithful covers flat flowcharts only; anything else (subgraphs, unmodelled shapes,
20
- * other diagram types, a layout failure, elkjs 0.9.3 not installed) falls back to the standard
21
- * renderer and says so in `fallbackReason`. Layout-faithful output is plain text drawn on its
22
- * own grid, so spacing/color/profile options apply only to the fallback. A drawing that cannot
23
- * fit the width cap (`maxCols`, default 120) also falls back; pass `maxCols: Infinity` to get the
24
- * wide layout-faithful text instead.
25
- */
26
- export declare function renderMermaidASCIIWithLayout(text: string, options?: AsciiRenderOptions & {
27
- layout?: AsciiLayoutMode;
28
- /**
29
- * Width cap for the layout-faithful drawing (default 120). The rasterizer shrinks blank gaps
30
- * to fit; when the boxes alone are wider, the standard renderer runs instead (with
31
- * `fallbackReason`). `Infinity` disables the cap: the wide layout-faithful text is returned.
32
- */
33
- maxCols?: number;
34
- }): Promise<AsciiLayoutResult>;
35
-
36
- export { }
1
+ export * from "./shared/ascii-layout.js";
package/dist/ascii.d.cts CHANGED
@@ -1,4 +1 @@
1
-
2
- export * from "@zombie-mermaid/ascii-renderer";
3
-
4
- export { }
1
+ export * from "./shared/ascii.js";
package/dist/ascii.d.ts CHANGED
@@ -1,4 +1 @@
1
-
2
- export * from "@zombie-mermaid/ascii-renderer";
3
-
4
- export { }
1
+ export * from "./shared/ascii.js";
package/dist/index.d.cts CHANGED
@@ -1,104 +1 @@
1
- import { AsciiRenderOptions } from '@zombie-mermaid/ascii-renderer';
2
- import { ClassRenderOptions } from '@zombie-mermaid/core';
3
- import { CommonRenderOptions } from '@zombie-mermaid/core';
4
- import { createLayoutCache } from '@zombie-mermaid/svg-renderer';
5
- import { DEFAULT_RENDER_LIMITS } from '@zombie-mermaid/core';
6
- import { DEFAULTS } from '@zombie-mermaid/core';
7
- import { DiagramColors } from '@zombie-mermaid/core';
8
- import { Direction } from '@zombie-mermaid/core';
9
- import { ElkConstructor } from '@zombie-mermaid/core';
10
- import { ElkNotRegisteredError } from '@zombie-mermaid/svg-renderer';
11
- import { ErRenderOptions } from '@zombie-mermaid/core';
12
- import { FlowchartRenderOptions } from '@zombie-mermaid/core';
13
- import { fromShikiTheme } from '@zombie-mermaid/core';
14
- import { LayoutCache } from '@zombie-mermaid/svg-renderer';
15
- import { LimitExceededError } from '@zombie-mermaid/core';
16
- import { MermaidGraph } from '@zombie-mermaid/core';
17
- import { NodeInteraction } from '@zombie-mermaid/core';
18
- import { parseMermaid } from '@zombie-mermaid/mermaid-parser';
19
- import { PositionedGraph } from '@zombie-mermaid/core';
20
- import { registerElk } from '@zombie-mermaid/svg-renderer';
21
- import { RenderLimits } from '@zombie-mermaid/core';
22
- import { renderMermaid } from '@zombie-mermaid/svg-renderer';
23
- import { renderMermaidASCII } from '@zombie-mermaid/ascii-renderer';
24
- import { renderMermaidAscii } from '@zombie-mermaid/ascii-renderer';
25
- import { renderMermaidSVG } from '@zombie-mermaid/svg-renderer';
26
- import { renderMermaidSVGAsync } from '@zombie-mermaid/svg-renderer';
27
- import { renderMermaidSync } from '@zombie-mermaid/svg-renderer';
28
- import { RenderOptions } from '@zombie-mermaid/core';
29
- import { SequenceRenderOptions } from '@zombie-mermaid/core';
30
- import { themeCssVariables } from '@zombie-mermaid/svg-renderer';
31
- import { ThemeName } from '@zombie-mermaid/core';
32
- import { THEMES } from '@zombie-mermaid/core';
33
- import { validateMermaid } from '@zombie-mermaid/svg-renderer';
34
- import { XyChartRenderOptions } from '@zombie-mermaid/core';
35
-
36
- export { AsciiRenderOptions }
37
-
38
- export { ClassRenderOptions }
39
-
40
- export { CommonRenderOptions }
41
-
42
- export { createLayoutCache }
43
-
44
- export { DEFAULT_RENDER_LIMITS }
45
-
46
- export { DEFAULTS }
47
-
48
- export { DiagramColors }
49
-
50
- export { Direction }
51
-
52
- export { ElkConstructor }
53
-
54
- export { ElkNotRegisteredError }
55
-
56
- export { ErRenderOptions }
57
-
58
- export { FlowchartRenderOptions }
59
-
60
- export { fromShikiTheme }
61
-
62
- export { LayoutCache }
63
-
64
- export { LimitExceededError }
65
-
66
- export { MermaidGraph }
67
-
68
- export { NodeInteraction }
69
-
70
- export { parseMermaid }
71
-
72
- export { PositionedGraph }
73
-
74
- export { registerElk }
75
-
76
- export { RenderLimits }
77
-
78
- export { renderMermaid }
79
-
80
- export { renderMermaidASCII }
81
-
82
- export { renderMermaidAscii }
83
-
84
- export { renderMermaidSVG }
85
-
86
- export { renderMermaidSVGAsync }
87
-
88
- export { renderMermaidSync }
89
-
90
- export { RenderOptions }
91
-
92
- export { SequenceRenderOptions }
93
-
94
- export { themeCssVariables }
95
-
96
- export { ThemeName }
97
-
98
- export { THEMES }
99
-
100
- export { validateMermaid }
101
-
102
- export { XyChartRenderOptions }
103
-
104
- export { }
1
+ export * from "./shared/index.js";
package/dist/index.d.ts CHANGED
@@ -1,104 +1 @@
1
- import { AsciiRenderOptions } from '@zombie-mermaid/ascii-renderer';
2
- import { ClassRenderOptions } from '@zombie-mermaid/core';
3
- import { CommonRenderOptions } from '@zombie-mermaid/core';
4
- import { createLayoutCache } from '@zombie-mermaid/svg-renderer';
5
- import { DEFAULT_RENDER_LIMITS } from '@zombie-mermaid/core';
6
- import { DEFAULTS } from '@zombie-mermaid/core';
7
- import { DiagramColors } from '@zombie-mermaid/core';
8
- import { Direction } from '@zombie-mermaid/core';
9
- import { ElkConstructor } from '@zombie-mermaid/core';
10
- import { ElkNotRegisteredError } from '@zombie-mermaid/svg-renderer';
11
- import { ErRenderOptions } from '@zombie-mermaid/core';
12
- import { FlowchartRenderOptions } from '@zombie-mermaid/core';
13
- import { fromShikiTheme } from '@zombie-mermaid/core';
14
- import { LayoutCache } from '@zombie-mermaid/svg-renderer';
15
- import { LimitExceededError } from '@zombie-mermaid/core';
16
- import { MermaidGraph } from '@zombie-mermaid/core';
17
- import { NodeInteraction } from '@zombie-mermaid/core';
18
- import { parseMermaid } from '@zombie-mermaid/mermaid-parser';
19
- import { PositionedGraph } from '@zombie-mermaid/core';
20
- import { registerElk } from '@zombie-mermaid/svg-renderer';
21
- import { RenderLimits } from '@zombie-mermaid/core';
22
- import { renderMermaid } from '@zombie-mermaid/svg-renderer';
23
- import { renderMermaidASCII } from '@zombie-mermaid/ascii-renderer';
24
- import { renderMermaidAscii } from '@zombie-mermaid/ascii-renderer';
25
- import { renderMermaidSVG } from '@zombie-mermaid/svg-renderer';
26
- import { renderMermaidSVGAsync } from '@zombie-mermaid/svg-renderer';
27
- import { renderMermaidSync } from '@zombie-mermaid/svg-renderer';
28
- import { RenderOptions } from '@zombie-mermaid/core';
29
- import { SequenceRenderOptions } from '@zombie-mermaid/core';
30
- import { themeCssVariables } from '@zombie-mermaid/svg-renderer';
31
- import { ThemeName } from '@zombie-mermaid/core';
32
- import { THEMES } from '@zombie-mermaid/core';
33
- import { validateMermaid } from '@zombie-mermaid/svg-renderer';
34
- import { XyChartRenderOptions } from '@zombie-mermaid/core';
35
-
36
- export { AsciiRenderOptions }
37
-
38
- export { ClassRenderOptions }
39
-
40
- export { CommonRenderOptions }
41
-
42
- export { createLayoutCache }
43
-
44
- export { DEFAULT_RENDER_LIMITS }
45
-
46
- export { DEFAULTS }
47
-
48
- export { DiagramColors }
49
-
50
- export { Direction }
51
-
52
- export { ElkConstructor }
53
-
54
- export { ElkNotRegisteredError }
55
-
56
- export { ErRenderOptions }
57
-
58
- export { FlowchartRenderOptions }
59
-
60
- export { fromShikiTheme }
61
-
62
- export { LayoutCache }
63
-
64
- export { LimitExceededError }
65
-
66
- export { MermaidGraph }
67
-
68
- export { NodeInteraction }
69
-
70
- export { parseMermaid }
71
-
72
- export { PositionedGraph }
73
-
74
- export { registerElk }
75
-
76
- export { RenderLimits }
77
-
78
- export { renderMermaid }
79
-
80
- export { renderMermaidASCII }
81
-
82
- export { renderMermaidAscii }
83
-
84
- export { renderMermaidSVG }
85
-
86
- export { renderMermaidSVGAsync }
87
-
88
- export { renderMermaidSync }
89
-
90
- export { RenderOptions }
91
-
92
- export { SequenceRenderOptions }
93
-
94
- export { themeCssVariables }
95
-
96
- export { ThemeName }
97
-
98
- export { THEMES }
99
-
100
- export { validateMermaid }
101
-
102
- export { XyChartRenderOptions }
103
-
104
- export { }
1
+ export * from "./shared/index.js";
package/dist/mcp.d.cts CHANGED
@@ -1,4 +1 @@
1
-
2
- export * from "@zombie-mermaid/mcp";
3
-
4
- export { }
1
+ export * from "./shared/mcp.js";
package/dist/mcp.d.ts CHANGED
@@ -1,4 +1 @@
1
-
2
- export * from "@zombie-mermaid/mcp";
3
-
4
- export { }
1
+ export * from "./shared/mcp.js";
@@ -0,0 +1,36 @@
1
+ import { AsciiRenderOptions } from '@zombie-mermaid/ascii-renderer';
2
+
3
+ /** Value of the `layout` option / `--layout` flag. `'standard'` is the default grid renderer. */
4
+ export declare type AsciiLayoutMode = 'mermaid' | 'standard';
5
+
6
+ export declare interface AsciiLayoutResult {
7
+ text: string;
8
+ /** Which renderer produced `text`. */
9
+ path: 'layout-faithful' | 'standard';
10
+ /** Why the standard renderer ran although `layout: 'mermaid'` was requested. */
11
+ fallbackReason?: string;
12
+ /** Caveat to show with layout-faithful output (merged parallel edges). */
13
+ note?: string;
14
+ }
15
+
16
+ /**
17
+ * Render ASCII, optionally from mermaid's ELK layout (`layout: 'mermaid'`).
18
+ *
19
+ * Layout-faithful covers flat flowcharts only; anything else (subgraphs, unmodelled shapes,
20
+ * other diagram types, a layout failure, elkjs 0.9.3 not installed) falls back to the standard
21
+ * renderer and says so in `fallbackReason`. Layout-faithful output is plain text drawn on its
22
+ * own grid, so spacing/color/profile options apply only to the fallback. A drawing that cannot
23
+ * fit the width cap (`maxCols`, default 120) also falls back; pass `maxCols: Infinity` to get the
24
+ * wide layout-faithful text instead.
25
+ */
26
+ export declare function renderMermaidASCIIWithLayout(text: string, options?: AsciiRenderOptions & {
27
+ layout?: AsciiLayoutMode;
28
+ /**
29
+ * Width cap for the layout-faithful drawing (default 120). The rasterizer shrinks blank gaps
30
+ * to fit; when the boxes alone are wider, the standard renderer runs instead (with
31
+ * `fallbackReason`). `Infinity` disables the cap: the wide layout-faithful text is returned.
32
+ */
33
+ maxCols?: number;
34
+ }): Promise<AsciiLayoutResult>;
35
+
36
+ export { }
@@ -0,0 +1,4 @@
1
+
2
+ export * from "@zombie-mermaid/ascii-renderer";
3
+
4
+ export { }
@@ -0,0 +1,104 @@
1
+ import { AsciiRenderOptions } from '@zombie-mermaid/ascii-renderer';
2
+ import { ClassRenderOptions } from '@zombie-mermaid/core';
3
+ import { CommonRenderOptions } from '@zombie-mermaid/core';
4
+ import { createLayoutCache } from '@zombie-mermaid/svg-renderer';
5
+ import { DEFAULT_RENDER_LIMITS } from '@zombie-mermaid/core';
6
+ import { DEFAULTS } from '@zombie-mermaid/core';
7
+ import { DiagramColors } from '@zombie-mermaid/core';
8
+ import { Direction } from '@zombie-mermaid/core';
9
+ import { ElkConstructor } from '@zombie-mermaid/core';
10
+ import { ElkNotRegisteredError } from '@zombie-mermaid/svg-renderer';
11
+ import { ErRenderOptions } from '@zombie-mermaid/core';
12
+ import { FlowchartRenderOptions } from '@zombie-mermaid/core';
13
+ import { fromShikiTheme } from '@zombie-mermaid/core';
14
+ import { LayoutCache } from '@zombie-mermaid/svg-renderer';
15
+ import { LimitExceededError } from '@zombie-mermaid/core';
16
+ import { MermaidGraph } from '@zombie-mermaid/core';
17
+ import { NodeInteraction } from '@zombie-mermaid/core';
18
+ import { parseMermaid } from '@zombie-mermaid/mermaid-parser';
19
+ import { PositionedGraph } from '@zombie-mermaid/core';
20
+ import { registerElk } from '@zombie-mermaid/svg-renderer';
21
+ import { RenderLimits } from '@zombie-mermaid/core';
22
+ import { renderMermaid } from '@zombie-mermaid/svg-renderer';
23
+ import { renderMermaidASCII } from '@zombie-mermaid/ascii-renderer';
24
+ import { renderMermaidAscii } from '@zombie-mermaid/ascii-renderer';
25
+ import { renderMermaidSVG } from '@zombie-mermaid/svg-renderer';
26
+ import { renderMermaidSVGAsync } from '@zombie-mermaid/svg-renderer';
27
+ import { renderMermaidSync } from '@zombie-mermaid/svg-renderer';
28
+ import { RenderOptions } from '@zombie-mermaid/core';
29
+ import { SequenceRenderOptions } from '@zombie-mermaid/core';
30
+ import { themeCssVariables } from '@zombie-mermaid/svg-renderer';
31
+ import { ThemeName } from '@zombie-mermaid/core';
32
+ import { THEMES } from '@zombie-mermaid/core';
33
+ import { validateMermaid } from '@zombie-mermaid/svg-renderer';
34
+ import { XyChartRenderOptions } from '@zombie-mermaid/core';
35
+
36
+ export { AsciiRenderOptions }
37
+
38
+ export { ClassRenderOptions }
39
+
40
+ export { CommonRenderOptions }
41
+
42
+ export { createLayoutCache }
43
+
44
+ export { DEFAULT_RENDER_LIMITS }
45
+
46
+ export { DEFAULTS }
47
+
48
+ export { DiagramColors }
49
+
50
+ export { Direction }
51
+
52
+ export { ElkConstructor }
53
+
54
+ export { ElkNotRegisteredError }
55
+
56
+ export { ErRenderOptions }
57
+
58
+ export { FlowchartRenderOptions }
59
+
60
+ export { fromShikiTheme }
61
+
62
+ export { LayoutCache }
63
+
64
+ export { LimitExceededError }
65
+
66
+ export { MermaidGraph }
67
+
68
+ export { NodeInteraction }
69
+
70
+ export { parseMermaid }
71
+
72
+ export { PositionedGraph }
73
+
74
+ export { registerElk }
75
+
76
+ export { RenderLimits }
77
+
78
+ export { renderMermaid }
79
+
80
+ export { renderMermaidASCII }
81
+
82
+ export { renderMermaidAscii }
83
+
84
+ export { renderMermaidSVG }
85
+
86
+ export { renderMermaidSVGAsync }
87
+
88
+ export { renderMermaidSync }
89
+
90
+ export { RenderOptions }
91
+
92
+ export { SequenceRenderOptions }
93
+
94
+ export { themeCssVariables }
95
+
96
+ export { ThemeName }
97
+
98
+ export { THEMES }
99
+
100
+ export { validateMermaid }
101
+
102
+ export { XyChartRenderOptions }
103
+
104
+ export { }
@@ -0,0 +1,4 @@
1
+
2
+ export * from "@zombie-mermaid/mcp";
3
+
4
+ export { }
@@ -0,0 +1 @@
1
+ {"type":"commonjs"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "zombie-mermaid",
3
- "version": "5.8.1",
3
+ "version": "5.8.2",
4
4
  "license": "MIT",
5
5
  "description": "Render Mermaid diagrams as beautiful SVGs or ASCII art. Ultra-fast, fully themeable, zero DOM dependencies. Maintained fork of beautiful-mermaid.",
6
6
  "type": "module",
@@ -101,11 +101,11 @@
101
101
  "@modelcontextprotocol/sdk": "^1.32.1",
102
102
  "elkjs": "^0.12.0",
103
103
  "entities": "^7.0.1",
104
- "@zombie-mermaid/ascii-renderer": "5.8.1",
105
- "@zombie-mermaid/core": "5.8.1",
106
- "@zombie-mermaid/mcp": "5.8.1",
107
- "@zombie-mermaid/svg-renderer": "5.8.1",
108
- "@zombie-mermaid/mermaid-parser": "5.8.1"
104
+ "@zombie-mermaid/ascii-renderer": "5.8.2",
105
+ "@zombie-mermaid/core": "5.8.2",
106
+ "@zombie-mermaid/mermaid-parser": "5.8.2",
107
+ "@zombie-mermaid/mcp": "5.8.2",
108
+ "@zombie-mermaid/svg-renderer": "5.8.2"
109
109
  },
110
110
  "devDependencies": {
111
111
  "@arethetypeswrong/cli": "0.18.5",
@@ -133,8 +133,8 @@
133
133
  "lightningcss": "^1.33.0",
134
134
  "marked": "^18.0.11",
135
135
  "mermaid": "12.1.0",
136
+ "oxfmt": "0.73.0",
136
137
  "oxlint": "1.87.0",
137
- "prettier": "^3.9.6",
138
138
  "publint": "0.3.25",
139
139
  "react": "^19.2.8",
140
140
  "react-dom": "^19.2.8",
@@ -171,10 +171,6 @@
171
171
  "test:ascii-text:update": "vitest run -c config/vitest.config.ts __tests__/ascii-text-snapshots.test.ts -u",
172
172
  "test:visual:update": "playwright test --update-snapshots",
173
173
  "coverage:diff": "tsx scripts/check-diff-coverage.ts",
174
- "samples": "scripts/tsx-css.sh packages/site/index.ts",
175
- "editor": "scripts/tsx-css.sh packages/site/editor.ts",
176
- "pages": "scripts/tsx-css.sh packages/site/pages.ts",
177
- "blog": "scripts/tsx-css.sh packages/site/blog.ts",
178
174
  "dev": "vite",
179
175
  "bench": "tsx scripts/bench.ts",
180
176
  "bench:compare": "tsx scripts/bench-compare.ts",
@@ -197,12 +193,12 @@
197
193
  "check:bundle-size": "tsx scripts/check-bundle-size.ts",
198
194
  "size:report": "tsx scripts/size-report.ts",
199
195
  "generate:hero": "tsx scripts/generate-hero.ts",
200
- "build:mono-font": "tsx scripts/build-mono-font-subset.ts && prettier --write demo/components/generated/mono-font-subset.ts demo/styles.css packages/svg-renderer/src/generated/mono-font-subset.ts",
201
- "generate:primitives-classes": "tsx scripts/generate-primitives-classes.ts && prettier --write demo/components/generated/primitives-classes.ts",
196
+ "build:mono-font": "tsx scripts/build-mono-font-subset.ts && oxfmt demo/components/generated/mono-font-subset.ts demo/styles.css packages/svg-renderer/src/generated/mono-font-subset.ts",
197
+ "generate:primitives-classes": "tsx scripts/generate-primitives-classes.ts && oxfmt demo/components/generated/primitives-classes.ts",
202
198
  "generate:logo-lockup": "tsx scripts/generate-logo-lockup.ts",
203
199
  "api:report": "tsx scripts/api-report.ts",
204
200
  "mutation": "stryker run",
205
- "docs:scripts": "tsx scripts/generate-development-scripts-doc.ts && prettier --write docs/development-scripts.md",
201
+ "docs:scripts": "tsx scripts/generate-development-scripts-doc.ts && oxfmt docs/development-scripts.md",
206
202
  "badge:bundle-size": "tsx scripts/generate-bundle-badge.ts",
207
203
  "visual-diff": "tsx scripts/visual-diff.ts",
208
204
  "form-diff": "tsx scripts/form-diff.ts",
@@ -213,20 +209,18 @@
213
209
  "mention-watch": "tsx scripts/mention-watch.ts",
214
210
  "build": "pnpm run build:packages && vite build --app --config config/vite.config.lib.ts",
215
211
  "build:packages": "vite build --app --config packages/core/vite.config.ts && vite build --app --config packages/mermaid-parser/vite.config.ts && vite build --app --config packages/svg-renderer/vite.config.ts && vite build --app --config packages/ascii-renderer/vite.config.ts && vite build --app --config packages/mcp/vite.config.ts && vite build --config packages/mcp/vite.worker.config.ts",
216
- "build:site": "rm -rf site && mkdir -p site && SITE_OUT_DIR=site scripts/tsx-css.sh packages/site/index.ts && SITE_OUT_DIR=site scripts/tsx-css.sh packages/site/editor.ts && SITE_OUT_DIR=site scripts/tsx-css.sh packages/site/fork-fixes.ts && SITE_OUT_DIR=site scripts/tsx-css.sh packages/site/pages.ts && SITE_OUT_DIR=site scripts/tsx-css.sh packages/site/blog.ts && SITE_OUT_DIR=site scripts/tsx-css.sh packages/site/dashboard.ts && cp -r public/* site/",
212
+ "build:site": "rm -rf site && vite build --app -c vite.site.config.ts",
217
213
  "lint": "oxlint --report-unused-disable-directives-severity=error .",
218
- "format": "prettier --write .",
219
- "format:check": "prettier --check .",
214
+ "format": "oxfmt .",
215
+ "format:check": "oxfmt --check .",
220
216
  "typecheck": "tsc --noEmit && tsc --noEmit -p demo/tsconfig.json && tsc --noEmit -p editor/tsconfig.json",
221
- "fork-fixes": "scripts/tsx-css.sh packages/site/fork-fixes.ts",
222
- "dashboard": "scripts/tsx-css.sh packages/site/dashboard.ts",
223
217
  "dashboard:data": "tsx scripts/generate-dashboard-data.ts",
224
218
  "upstream:pr-candidates": "tsx scripts/list-upstream-pr-rescue-candidates.ts",
225
219
  "audit:responsive": "tsx scripts/audit-responsive.ts",
226
220
  "layout:oracle": "tsx scripts/layout-oracle.ts",
227
221
  "elk-layout:oracle": "tsx scripts/elk-layout-oracle.ts --gallery",
228
222
  "elk-layout:font": "tsx scripts/elk-layout-font.ts",
229
- "layout:scorecard": "tsx scripts/layout-oracle.ts --history=layout-fidelity-history.jsonl --scorecard=docs/layout-fidelity-scorecard.md && prettier --write docs/layout-fidelity-scorecard.md",
223
+ "layout:scorecard": "tsx scripts/layout-oracle.ts --history=layout-fidelity-history.jsonl --scorecard=docs/layout-fidelity-scorecard.md && oxfmt docs/layout-fidelity-scorecard.md",
230
224
  "label:oracle": "tsx scripts/label-position-oracle.ts",
231
225
  "verify": "scripts/verify.sh",
232
226
  "doctor": "scripts/doctor.sh"