Docusaurus Introduction
-
static site generator이다. markdown으로 content에 집중
-
versioning, i18n, search, theme 지원
-
Single page application을 생성해 준다. React로 interactive함을 더해준다.
-
npx @docusaurus/init@latest init docusaurus1 classic
- 뒤에
classic
은 theme인데 생략하면 console에서 물어본다ㅇ에
cd docusaurus1 npm start
- 뒤에
-
docusaurus v2는 beta이다
- Jamstack documentation site
- SPA with client-side routing
- 모든 path에 HTML은 생성된다(SEO)
- React와 MDX 지원
-
Features
- plugin을 만들 수 있다는데...
- GitHub pages, Netflify, Vercel 등에 배포
- full site is searchable
- project release와 sync할 수 있도록 document versioning 제공
- i18n 지원
- PRPL pattern으로 겁나 빨리 로딩됨
- accessibility 지원
Design principle
- Little to learn - API가 최소화 되어있다. 그러면서도 대부분의 기능은 사용자가 달성 가능
- Intuitive - project를 보거나 기능을 추가할 때 overwhelmed되지 않는다
- Sensible defaults
- No vendor-lock in
Comparison with other tools
- Gatsby
- 강력한 기능 but higher learning curve
- GraphQL을 사용하지 않아도 된다
- Next.js
- 인기있는 hybrid React framework이지만 문서화에 특화되지 않았다
- VuePress
- Vue vs React
- MkDocs
- SPA가 필요없고 React가 필요없으면 좋은 옵션
- Docsify
- static site generator가 아니고 SEO friendly하지 않다
- GitBook
- commercial product에 집중
- Redux도 GitBook → Docusarus로 넘어갔다
- Jekyll
- React가 필요하기 전까진 좋은 선택이었다