반응형

ejs를 사용하는 프로젝트가 있는데 개발 서버를 express로 만들어서 사용하고 있었다. 페이지가 추가될 때마다 express에 라우트를 추가해줘야 하는 번거로움이 있어서 이를 개선하고자 했다. 처음엔 (이전 글에서 공부한 경험도 있으니) webpack을 생각했으나 번들링이 필요 없는데 번들러를 사용하는 게 거창해 보여서 예전에 들어본 적 있는 snowpack을 사용해봤다.

우여곡절 끝에 snowpack-plugin-ejs 플러그인을 추가해서 프로젝트의 개발 서버를 snowpack으로 바꿨다. 이제 페이지를 추가할 때마다 express 코드를 수정할 필요도 없고 변경사항도 실시간으로 반영이 된다!ㅎㅎ

아무튼 snowpack을 도입하면서 sitemap.xml 생성 과정도 자동화해보려고 플러그인을 만들었다. 공식 문서와 인터넷 자료들이 부실했지만 snowpack-plugin-ejs 플러그인의 코드를 참고해가며 만들었다. 처음으로 npm에도 배포해보았다!

https://www.npmjs.com/package/snowpack-plugin-sitemap

 

snowpack-plugin-sitemap

Add the process of creating a sitemap to Snowpack.

www.npmjs.com

소스는 깃허브에 올려놨다.

https://github.com/joyfuI/snowpack-plugin-sitemap

이 플러그인은 snowpack build 명령어를 실행했을 때 결과물 중 html 파일들의 목록을 뽑아 sitemap.xml 파일을 생성한다. 플러그인 옵션 등 자세한 사용법은 위 링크를 참고하면 된다.

그나저나 처음으로 npm 배포를 해봤는데 npm publish 명령어에서 오류가 나지만 배포는 정상적으로 된다? 대체 뭐지...

그리고 처음에 우여곡절 끝에 스노우팩으로 바꿨다고 했는데 현재 스노우팩에는 개발 서버에서 빌드된 html 파일이 브라우저에서 보여지는 게 아닌 다운로드로 처리되는 문제가 있다. 자세한 내용은 링크 참고. 일단 해당 버그가 수정될 때까지 다른 분이 수정한 snowpack4을 사용하기로 했다. 근데 몇 개월째 수정이 안 되고 있는 거 보면 사용자가 굉장히 적은 건가 싶다. 엄청 치명적인 버그라고 생각되는데...

반응형

+ Recent posts