Skip to content

feat(m0): scaffold Carbon Type foundation — React 19, ProseMirror (MIT), Vite 6#15

Merged
codewriter3000 merged 3 commits intomonograph-rewritefrom
copilot/define-mvp-stack-structure-plan
Apr 5, 2026
Merged

feat(m0): scaffold Carbon Type foundation — React 19, ProseMirror (MIT), Vite 6#15
codewriter3000 merged 3 commits intomonograph-rewritefrom
copilot/define-mvp-stack-structure-plan

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Apr 5, 2026

Replaces the previously approved (but rejected) TipTap-based plan with a fully MIT stack using ProseMirror directly. Bootstraps the entire project from a blank repo.

Stack

  • React 19 + Vite 6 + TypeScript (strict)
  • ProseMirror (10 MIT packages) — no TipTap, no freemium surface
  • CSS Modules + CSS custom properties (dark-first, light via prefers-color-scheme)
  • Vitest + @testing-library, ESLint 9 flat config, Prettier

Editor layer (src/editor-core/)

  • Schema: doc → title block+; block nodes: paragraph, heading (H1–H6), blockquote, code_block, hr, hard_break; marks: em, strong, code, link, underline, strikethrough
  • Plugins: history, keymaps (Mod-b/i/z/Shift-z), gapcursor, inputRules for *em* / **strong** / `code`
  • Commands: toggleBold/Italic/Code/Underline, setHeading(level), insertHardBreak
  • EditorCore: idiomatic useEffect + useRef ProseMirror mount; ARIA on the outer container (role="textbox", aria-multiline, aria-label) to avoid duplication on the inner contenteditable
useEffect(() => {
  const view = new EditorView(containerRef.current!, { state });
  return () => view.destroy();
}, []);

UI (src/components/)

  • Toolbar: role="toolbar", native <button> elements, B / I / U / H1–H3
  • App: <header> + <main> landmark structure

Infrastructure

  • src/styles/tokens.css — centralized design tokens, dark defaults, light overrides
  • src/styles/global.css — box-sizing reset, :focus-visible ring, prefers-reduced-motion
  • GitHub Actions CI: lint → build → test, contents: read permissions
  • 12 ProseMirror schema smoke tests

Copilot AI and others added 2 commits April 5, 2026 02:00
@bolt-new-by-stackblitz
Copy link
Copy Markdown

Review PR in StackBlitz Codeflow Run & review this pull request in StackBlitz Codeflow.

@codewriter3000 codewriter3000 marked this pull request as ready for review April 5, 2026 02:16
@codewriter3000 codewriter3000 merged commit 91cd063 into monograph-rewrite Apr 5, 2026
1 of 2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants