Skip to Content
๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ

๊ฐœ๋ฐœ ๊ฐ€์ด๋“œ

Inkio๋Š” ๋ชจ๋…ธ๋ ˆํฌ ๊ตฌ์กฐ๋กœ ์šด์˜๋ฉ๋‹ˆ๋‹ค.

ํ”„๋กœ์ ํŠธ ๊ตฌ์กฐ

editor/ โ”œโ”€โ”€ packages/ โ”‚ โ”œโ”€โ”€ core/ # @inkio/editor โ”‚ โ”œโ”€โ”€ extensions/ # @inkio/extension โ”‚ โ””โ”€โ”€ server/ # @inkio/server โ”œโ”€โ”€ docs/ # ๋ฌธ์„œ ์‚ฌ์ดํŠธ (Next.js + Nextra) โ”œโ”€โ”€ package.json # workspace orchestration โ””โ”€โ”€ pnpm-workspace.yaml

๋กœ์ปฌ ๊ฐœ๋ฐœ

pnpm install pnpm build:packages pnpm examples:build pnpm docs:typecheck pnpm build pnpm test pnpm release:smoke

๊ฐœ๋ฐœ ์„œ๋ฒ„๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์•„๋ž˜์ฒ˜๋Ÿผ ์‹คํ–‰ํ•ฉ๋‹ˆ๋‹ค.

# docs dev (๊ธฐ๋ณธ) pnpm dev

ํŒจํ‚ค์ง€ watch๊ฐ€ ํ•„์š”ํ•œ ๊ฒฝ์šฐ:

# core/extensions watch๋งŒ ์‹คํ–‰ pnpm dev:packages # core/extensions + docs ๋™์‹œ ์‹คํ–‰ pnpm dev:all

์˜์กด์„ฑ ์ •์ฑ…

  • @inkio/editor peer: react, react-dom
  • @inkio/extension peer: @inkio/editor, react, react-dom
  • Tiptap ๋Ÿฐํƒ€์ž„(@tiptap/core, @tiptap/react, @tiptap/pm, @tiptap/suggestion, @tiptap/extension-table*)๊ณผ katex, konva, react-konva๋Š” @inkio/extension dependencies๋กœ ๊ด€๋ฆฌ

์ฆ‰ ์†Œ๋น„์ž๋Š” ๋ณดํ†ต ์•„๋ž˜๋ฅผ ์„ค์น˜ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

npm install @inkio/editor @inkio/extension react react-dom

๋นŒ๋“œ ์‚ฐ์ถœ๋ฌผ

  • ๊ฐ ํŒจํ‚ค์ง€ ์‚ฐ์ถœ๋ฌผ: packages/*/dist
  • ๋ฌธ์„œ ์ •์  ์‚ฐ์ถœ๋ฌผ: docs/out (๋ ˆํฌ ๊ด€๋ฆฌ ๋Œ€์ƒ ์•„๋‹˜)

๋ฆด๋ฆฌ์ฆˆ ์ฒดํฌ๋ฆฌ์ŠคํŠธ

  1. pnpm build ํ†ต๊ณผ
  2. pnpm test ํ†ต๊ณผ
  3. pnpm examples:build ํ†ต๊ณผ
  4. pnpm release:smoke ํ†ต๊ณผ
  5. pnpm docs:build ํ†ต๊ณผ
  6. API/๋ฌธ์„œ ๋™๊ธฐํ™” ํ™•์ธ
  7. ๋ธŒ๋ ˆ์ดํ‚น ๋ณ€๊ฒฝ ์‹œ MIGRATION.md ๊ฐฑ์‹ 

๋ฆด๋ฆฌ์ฆˆ ํ”Œ๋กœ์šฐ

  • main ๋ธŒ๋žœ์น˜์—์„œ๋Š” workspace source ๊ธฐ์ค€์œผ๋กœ ๊ฐœ๋ฐœํ•˜๊ณ  docs๋ฅผ ํ™•์ธํ•ฉ๋‹ˆ๋‹ค.
  • ์‹ค์ œ ๋ฐฐํฌ ๊ฒ€์ฆ์€ pnpm release:smoke๋กœ tarball ์†Œ๋น„์ž ํ™˜๊ฒฝ์„ ๋”ฐ๋กœ ๊ฒ€์ฆํ•ฉ๋‹ˆ๋‹ค.
  • npm publish๋Š” main push๊ฐ€ ์•„๋‹ˆ๋ผ v* ํƒœ๊ทธ push์—์„œ๋งŒ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

๋ฌธ์„œ ์•ฑ ์ฐธ๊ณ 

docs/next.config.mjs์—์„œ ๋‹ค์Œ ํŒจํ‚ค์ง€๋ฅผ transpile ๋Œ€์ƒ์œผ๋กœ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.

  • @inkio/editor
  • @inkio/extension
Last updated on