TypeScript 프로젝트의 API 문서를 자동으로 생성하고, 가독성 좋은 정적 사이트로 배포하기 위해 TypeDoc과 Docusaurus를 연동한 구축 과정을 기록합니다.
v16.20.2^4.7.42.3.1^0.25.xnpm install --save-dev typedoc typedoc-plugin-markdown
npm install @docusaurus/core @docusaurus/preset-classic react react-dom
typedoc.json){
"entryPoints": ["./src/core"],
"entryPointStrategy": "expand",
"out": "./docs-site/docs/api",
"plugin": ["typedoc-plugin-markdown"],
"readme": "none",
"exclude": [
"**/__tests__/**",
"**/test__/**",
"**/__mock__/**",
"**/*.test.ts",
"**/*.spec.ts"
],
"hidePageTitle": true,
"hideBreadcrumbs": true,
"categorizeByGroup": false,
"sort": ["source-order"]
}
docusaurus.config.jsdocs: {
sidebarPath: require.resolve('./sidebars.js'),
editUrl: undefined
},
blog: false, // 블로그 기능 제거
sidebars.jsmodule.exports = {
tutorialSidebar: [
'intro',
{
type: 'category',
label: 'API Reference',
items: [{ type: 'autogenerated', dirName: 'api' }]
}
]
};
| 문제 | 해결 방법 |
|---|---|
undici 에러 | blog: false로 블로그 플러그인 제거 |
readme/readme 경로 중복 | "readme": "none" 설정 |
| 1뎁스 README 제거 | "exclude": ["**/index.ts"] 추가 |
| TypeDoc 결과가 안 보임 | entryPointStrategy: "expand"로 설정 |
typedoc은 코드 구조 그대로 문서를 뽑고,docusaurus는 그 문서를 예쁘게 보여주는 역할src 일부만 지정해서 관리TypeDoc과 Docusaurus를 연동하면 코드 기반 API 문서를 자동으로 생성하고, 팀 전체가 공유 가능한 수준 높은 개발 문서를 구축할 수 있습니다.
향후 CI/CD 파이프라인에 typedoc + docusaurus build를 연결하면 배포 자동화도 가능합니다.