개발
블로그 불러오는 중...
개발
블로그 개발기를 작성해 본다.
어릴 때는 많은 것을 기록하며 간직했지만, 20살 이후로는 기록하는 습관이 점점 사라졌다. 다양한 방법으로 다시 기록을 시도해봤지만 쉽지 않았고, 결국 Post-it처럼 조각난 기억들을 모아 하나의 큰 텍스트를 만드는 방식을 고민하게 되었다.
그러던 중 Obsidian이라는 프로그램을 접하게 되었고, 아직 잘 활용하지는 못하지만 이를 통해 소중한 일상과 지식을 공유해 보고 싶다는 생각이 들었다. Obsidian은 노트 간의 연결 관계를 시각적으로 보여주는 기능이 있어, 지식을 체계적으로 정리하는 데 큰 도움이 될 것 같았다.
Obsidian을 사용하면서 자연스럽게 Markdown 기반의 블로그를 만들면 어떨까? 하는 생각이 들었다.
@tailwind base;
@tailwind components;
@tailwind utilities;
@import "./prism.css";
@layer base {
/* 라이트 모드 색상 */
:root {
--background: #ffffff;
--background-inverted: #1f1f1f;
--surface: #f1f1f1;
--text: #333333;
--text-muted: #888888;
--primary: #4a90e2;
--border: rgb(218, 220, 224);
}
/* 다크 모드 색상 */
.dark {
--background: #1f1f1f;
--background-inverted: #ffffff;
--surface: #2f2f2f;
--text: #e0e0e0;
--text-muted: #b3b3b3;
--primary: #8ab4f8;
--border: rgb(49, 51, 53);
}
}
@layer utilities {
.bg-base {
background-color: var(--background);
}
.bg-base-inverted {
background-color: var(--background-inverted);
}
.bg-surface {
background-color: var(--surface);
}
.text-base-color {
color: var(--text);
}
.text-muted {
color: var(--text-muted);
}
.text-primary {
color: var(--primary);
}
.border-base {
border-color: var(--border);
}
}처음에는 무료로 관리가 가능한 정적 블로그를 고려했으나, 게시물을 수정하거나 데이터를 푸시할 때의 불편함과 향후 커스터마이징의 어려움 때문에 동적 블로그를 선택했다.
블로그 포스팅을 위해 관리 페이지를 구현하는 것이 추가적인 작업이 될 것이라 예상되었고, 이에 따라 검색을 통해 Headless CMS를 찾게 되었다. Headless CMS는 SEO 최적화 등 여러 가지 요구 사항을 내가 직접 개발하지 않아도 처리해 줄 수 있을 것 같았다.
프로그래밍 격언 중에 "Don't reinvent the wheel"이 있다. 굳이 Admin 사이트까지 만들고 백엔드를 구성하는 것보다, 이미 존재하는 좋은 솔루션을 활용하는 것이 효율적이라고 생각했다.
결국, 이런 이유들로 Headless CMS를 사용하기로 결정했다.
그 중에서도 Headless CMS 중에서 Strapi를 선택한 이유는 다음과 같다.
Strapi는 여러 플러그인을 지원하며, Node.js는 내가 이미 익숙한 언어였다. 또한, 현업에서 사용하는 MySQL을 선택할 수 있어 백업, 서버 이전 및 데이터 조작에 유리할 것 같았다. 이러한 이유로 Strapi를 선택하여 블로그를 개발하게 되었다.
프론트엔드도 직접 구현하고자 했는데, 회사에서 react 로 개발 경험이 있었던 나는 항상 포트폴리오 사이트를 만들어 보고 싶었고, 회사에서 사용해 보지 않은 Next.js와 TailwindCSS를 사용해 보고 싶은 마음이 컸다.
최종 기술스택🛠️은 다음과 같다
text-base와 Tailwind의 기본 클래스를 겹치지 않게 하기 위해 text-base-color 같은 다소 어색한 네이밍을 사용했지만, 오픈소스를 참고해서 좋은 네이밍을 지켜서 작성해 보려 한다.이번 블로그 개발을 통해 다시 기록하는 습관을 되찾고, 소중한 생각과 경험을 공유하는 공간을 만들어가고 있다. Obsidian과 블로그를 통해 점점 더 체계적으로 정리하고 발전시켜 나갈 예정이다!
지금 남은 것은 댓글 기능이다. 댓글을 작성하고 피드백을 통해 조금 더 나은 게시글을 작성하고 싶다.
잘 지켜봐 주시면 좋겠다!
추가로, 현재 서버 형태를 공유한다!



