Nextra란
Nextra는 docs , blog를 next를 이용하여 문서 사이트를 쉽게 만들 수 있는 해주는 라이브러리입니다. 이걸 이용하면 mdx 파일을 이용하여 원하는 docs를 빠르게 생성할 수 있다는 장점이 있습니다.
이번 프로젝트를 진행하면서 docs를 만들기 위해 nextra를 이용했는데, nextra docs를 생성하는 건 쉽지만, 다국어 처리 시 문제가 발생합니다. nextra docs가 하라는대로 하면 안됩니다. 자 아래는 nextra에서 제공하는 다국어 처리 docs 입니다.
https://nextra.site/docs/guide/i18n
Next.js I18n | Nextra
Make beautiful websites with Next.js & MDX.
nextra.site
mjs 파일만 간단하게 될것처럼 했지만 해보면 오류 터집니다. 일단 nextra에서 getPageMap 을 이용하여 각 path에 해당하는 mdx 파일을 불러와야하는데 이 내용은 없습니다. 아래는 해당 issue git 입니다. 저처럼 에러를 맞고 답답한 나머지, 버그 문의한 글입니다.
https://github.com/shuding/nextra/issues/4343
Nextra 4 with i18n and App router bug · Issue #4343 · shuding/nextra
I'm trying to implement a multi language documentation site using Next.js 15 and Nextra 4 using the App router to organize my files. I've added all the configurations files and dictionaries followi...
github.com
저렇게 해서 해결한 분들도 있지만, 저는 다른 방식으로 문제를 해결했습니다.
첫번쨰로 nextra examples 중 i18n에 해당하는 내용입니다.
https://github.com/shuding/nextra/tree/main/examples/swr-site
nextra/examples/swr-site at main · shuding/nextra
Simple, powerful and flexible site generation framework with everything you love from Next.js. - shuding/nextra
github.com
단계별로 설명하겠습니다.
1. layout.tsx 긁어오기
이친구들이 작성한 레이아웃 파일을 긁어오시면 됩니다.
2. _directionaries 긁어오기
이 친구들의 작성한 _directionaries 폴더 파일을 전부 긁어옵니다.
3. contnet 긁어오기
이 친구들의 작성한 content 긁어옵시다.
4. 수정하기
이 친구들을 바탕으로 이제 기본적인 셋팅은 됐으니, 원하는 언어와 mdx 파일을 생성하여 docs를 구성하면 됩니다. docs 구성방법과, 프로젝트 init 방법은 docs에 잘나와있으니 docs를 살펴보시고, 다국어 처리에 관한 부분은 examples를 바탕으로 커스텀 하시면 됩니다.
결론
netrax document에는 결국 어떻게 써야하는지 나와있지 않습니다. 따라서 그냥 exmaples 폴더를 직접보고 해결하는게 더 빠릅니다.
nextra 다국어 처리를 해야하는데 오류가 발생하신다면 댓글로 남겨주세요 아니면 깃 링크 드릴테니 보셔도 좋을 거 같습니다.
아래는 i18n 적용한 nextra docs 제 프로젝트입니다. 다들 화이팅

