정적 블로그에 블루스카이(Bluesky) 댓글 연동, 개발자는 어떻게 구현했을까?
정적 사이트(Static Site)의 댓글 기능 부재 문제를 해결하기 위해 블루스카이(Bluesky) API를 활용하여 댓글 섹션을 구현함
React Server Components와 Tanstack react-query를 사용하여 API 호출 및 상태 관리를 효율적으로 처리함
오픈 소셜 플랫폼(Open Social Platform)인 블루스카이(Bluesky)의 장점과 트위터(Twitter) 등 타 플랫폼과의 비교가 이루어짐
EU 규제(EU Regulations) 준수 및 스팸(Spam) 문제에 대한 우려와 블루스카이(Bluesky) 생태계 성장에 대한 기대가 공존함
블루스카이(Bluesky) API 연동 및 구현 상세
저자는 정적 블로그에 댓글 기능을 추가하기 위해 블루스카이(Bluesky) API를 활용했다. 특히, getPostThread 엔드포인트(Endpoint)를 사용하여 특정 게시물에 대한 댓글 데이터를 가져왔다. React Server Components와 Tanstack react-query를 사용하여 API 호출 및 상태 관리를 효율적으로 처리했으며, UI 컴포넌트와 API 함수를 포함하여 약 200줄의 코드로 구현했다. 이는 유지보수(Maintenance) 측면에서 장점을 가진다.
블루스카이(Bluesky) vs 기존 댓글 시스템
블루스카이(Bluesky) 댓글 시스템은 기존의 VPS 또는 클라우드 서비스(Cloud Service)를 이용하는 방식과 비교하여 유지 관리(Maintenance)의 부담을 줄인다. 또한, 오픈 소셜 플랫폼(Open Social Platform)인 블루스카이(Bluesky)의 특성상, 특정 기업에 종속되지 않는다는 장점이 있다. 하지만, 트위터(Twitter) 등 다른 소셜 미디어 플랫폼을 선택할 수도 있다는 점과 EU 규제(EU Regulations) 준수에 대한 고려가 필요하다.
댓글 시스템 구현 방식 비교
커뮤니티에서는 다양한 댓글 시스템 구현 방식이 논의되었다. 이메일(Email) 기반 댓글 시스템은 스팸(Spam)을 방지하는 장점이 있지만, 수동적인 검토 과정이 필요하다. 깃허브 디스커션(GitHub Discussions)을 활용하는 방식은 개발 환경과의 통합이 용이하지만, 깃허브(GitHub) 정책 변화에 영향을 받을 수 있다. 또한, 디스커스(Disqus)와 같은 외부 서비스는 편리하지만, 수익 모델(Revenue Model)의 지속 가능성에 대한 우려가 존재한다.
블루스카이(Bluesky) 댓글 시스템의 장단점
블루스카이(Bluesky) 댓글 시스템은 오픈 플랫폼(Open Platform)이라는 장점과 함께, 스팸(Spam) 및 모더레이션(Moderation) 문제를 해결해야 하는 과제를 안고 있다. 저자는 블루스카이(Bluesky) API를 활용하여 댓글을 가져오는 방식으로 구현했지만, 직접 게시 기능을 구현하는 것은 복잡하다는 것을 인지했다. 또한, EU 규제(EU Regulations) 준수를 위해 별도의 필터링(Filtering) 기능 구현이 필요할 수 있다.