본문으로 건너뛰기
목록으로

개인 사이트 구축과 블로그 이전

1분 읽기
블로그개인사이트

이번에 개인사이트를 만들었다.

그러면서 블로그도 옮겼다. 원래 주소는 tesilio.github.io 이고, 약 7년 동안 운영했다. Jekyll 기반의 블로그였고 특별히 불편한 건 없었지만 개인사이트를 새로 만드는김에 그냥 같이 바꾸고 싶었다.

선택한 구조는 모노레포다. 메인 사이트(tesilio.com)와 블로그(blog.tesilio.com)를 하나의 저장소에서 관리한다.

tesilio.com/
├── apps/
│   ├── www/        # 메인 사이트
│   └── blog/       # 블로그
└── packages/
    └── ui/         # 공유 UI 패키지
    ...

pnpm과 Turborepo 조합을 사용했다. 예전부터 모노레포에 관심이 있었는데, 개인 프로젝트에서 이제야 제대로 써본다.

공유 패키지를 만들어서 두 사이트 간의 일관성을 유지하기로 했다. 버튼 하나, 레이아웃 하나를 공유하니 중복코드가 줄어들어 좋다. 나중에 다른 앱을 추가하더라도 같은 방식으로 확장할 수 있다.

그 외에도 좋았던 것들이 몇 가지 있다.

기존과 비슷하지만, 블로그 글을 쓰는 경험이 더 편해질 것 같다. Velite와 MDX 조합을 사용했는데, 아직 잘은 모르지만 MDX의 장점이 많다고 한다. 프론트매터 스키마도 타입으로 검증되니까 실수할 일이 줄었다.

사실 경험이 없어서 잘은 모르지만 빌드도 빠르다. 변경된 패키지만 다시 빌드하니까 전체 빌드를 돌릴 일이 거의 없다. 로컬에서 작업할 때 답답한 느낌은 없었다.

Vercel 배포가 편했다. 모노레포를 잘 지원해서, apps/www와 apps/blog를 각각 별도 프로젝트로 연결하면 된다. 푸시하면 알아서 배포된다.

백년전 jQuery 다루던 백엔드 개발자로서 프론트엔드 영역의 최신 기술들을 직접 다뤄보니 흥미로웠다. Turborepo의 캐싱 전략이나 Velite의 빌드 타임 컴파일 같은 것들이 낯설면서도 재밌었다.

기존 블로그인 tesilio.github.io는 리다이렉트용으로 남겨뒀다.

앞으로는 여기에 글을 쓸 예정이다. 새 집에 이사 온 기분이다.