질문해 주셔서 감사합니다 @Canapin –
이 테마 컴포넌트는 제 개인 프로젝트(그리고 혹시 원하시는 다른 분들을 위해 커뮤니티에 제공할 목적으로)를 위해 만들기 시작한 일련의 컴포넌트 중 하나입니다.
이 프로젝트는 더 전통적인 추가 방식이 아닌, 빼는(감산) 방식을 사용하여 사이트 커스터마이징에 보다 정밀한 접근을 제공하는 것을 목표로 합니다.
저는 수년 동안 Ghost CMS 커뮤니티를 위해 테마를 개발하고, 거기 있는 개발자 포럼에서 지원을 제공해 왔습니다.
그 커뮤니티는 개발 및 지원 플랫폼으로 Discourse를 사용하며, 제가 Discourse를 알게 된 계기도 바로 그것입니다.
블로깅 플랫폼이자 (최근에는) 본격적인 출판 플랫폼으로서 Ghost의 우아한 단순함은, 수년간 Drupal과 Wordpress으로 사이트를 개발해 온 저에게 신선한 바람과도 같았습니다.
시간이 지날수록 Ghost에서 더 많은 기능을 원하게 되었고, 플랫폼 자체와 그곳의 친근한 커뮤니티 덕분에 제가 그것을 쉽게 해낼 수 있었습니다. 이는 상당 부분 그곳의 Discourse 포럼 덕분이었습니다.
Ghost 커뮤니티에서 Discourse를 사용하는 능숙함이 높아지면서, 저는 어느새 Discourse에 매료되었고, 지난 몇 년간 제 일상적인 온라인 '본거지’를 Discourse로 옮겼습니다. 주로 테마 개발자로서 Ghost 플랫폼을 졸업한 셈이었고, ‘박스에서 바로 꺼내 쓸 수 있는’ 기능이 '그 안쪽’에서 즉시 제공되기를 원했기 때문입니다. 또한, 그곳의 커뮤니티는 훨씬 작고, 진화는 자연히 더 느리고 번거로웠습니다.
Ghost의 기능과 인터페이스는 설계상 매우 최소한의 범위를 지향하며, 제공되는 사용자 및 관리자 인터페이스를 통한 접근이 상대적으로 제한적입니다. ‘박스에서 바로 꺼내 쓸 수 있는’ 것을 넘어 기능을 확장하고 싶거나 필요할 때, 저는 그것을 스스로 구축해야 합니다(대부분 커뮤니티 지원 없이), 그리고 이를 외부 컴포넌트로 어떻게 연결할지 알아봐야 합니다. 저에게 있어 이 방식의 학습 곡선은 더 이상 그만한 가치가 없게 되었습니다.
바로 이 지점에서 Discourse는 저에게 극명한 대비를 보여주었습니다. 플랫폼 도구 세트로서의 Discourse는 저에게 Ghost와 스펙트럼의 정반대쪽에 위치해 있습니다. 더 성숙하며, 더 크고 빠르고 효율적으로 움직이는 커뮤니티를 갖추고 있습니다.
Discourse는 제가 Ghost에서 원하게 되거나 필요하게 된 모든 기능(그리고 제 클라이언트들이 점점 더 많이 요청하는 것들까지)을 ‘박스에서 바로 꺼내 쓸 수 있는’ 형태로 이미 내장하고 있는 것 같습니다. 게다가 훨씬 더 멋진 커뮤니티까지 갖추고 있으니 말입니다!
Discourse는 포럼 소프트웨어를 훨씬 뛰어넘어 성숙했습니다. 핵심 포럼 기능은 확실히 업계 최고 수준이지만, 저는 Discourse를 커스터마이징된 플랫폼, 애플리케이션 및 새로운 유형의 온라인 소셜 공간을 구축하기 위한 도구상자(사실은 Home Depot에 더 가깝습니다)로 보고 있습니다.
저는 사이트 구축에 사용해 온 다양한 플랫폼을 항상 밀고, 당기고, 늘려 왔습니다. 끝없는 매일의 학습자이자 기쁜 초보 전사(nOObish warrior)로서, 저는 배우고, 정복하고, 제패하고자 합니다. 이것이 저를 매일 아침 일어나게 하고 하루 종일 기쁨을 가져다주는 것입니다.
이 점에서 저는 이 커뮤니티에서, 그리고 모든 오픈소스 커뮤니티에서 많은 동류(종류)를 느낍니다.
잠깐, 당신의 원래 질문이 뭐였지?
아 맞다…
최근 저는 Discourse를 사용하여 단순화된 블로깅 플랫폼을 구축하는 실험을 해 왔습니다. 처음에는 이를 자체 테마로 구축할 계획이었으며, 여전히 그럴 것 같습니다. 하지만 제 작업을 더 작은 부분(테마 컴포넌트)으로 나누기로 결정했는데, 이는 기존 테마에도 선택적으로 적용될 수 있습니다.
이 중 상당 부분은 단순히 선택적으로 요소를 제거하는 것(CSS를 통한 숨김 테마 컴포넌트, 그리고 아직 배우지 못한 다른 방법들)으로 달성할 수 있다고 생각합니다.
따라서 당신의 질문에 답하자면, 이 테마 컴포넌트는 제가 작업을 시작해 온 그 더 큰 일련의 컴포넌트 중 하나의 예시입니다.