오픈소스 CRM, Notion/Airtable 스타일
Twenty는 오픈소스 CRM 솔루션으로, 기업의 고객 관계 관리를 돕는 도구임
기존 CRM의 높은 가격과 종속성 문제를 해결하고자 오픈소스 모델을 채택함
Notion, Airtable, Linear와 유사한 사용자 경험(UX)을 제공하여 사용성을 높임
TypeScript, NestJS, React 등 최신 기술 스택을 기반으로 개발됨
오픈소스 CRM의 등장 배경
Twenty는 기존 CRM 솔루션의 높은 비용(High Cost)과 데이터 종속성(Data Lock-in) 문제를 해결하고자 오픈소스 모델을 채택했다. 이는 기업이 고객 데이터를 자유롭게 관리하고, 솔루션 변경에 따른 위험 부담(Risk)을 줄일 수 있도록 돕는다. 또한, 커뮤니티 기반 개발을 통해 지속적인 기능 개선과 확장성(Extensibility)을 확보하는 것을 목표로 한다.
사용자 경험(UX) 혁신
Twenty는 Notion, Airtable, Linear와 같은 최신 도구들의 UX 패턴을 차용하여 직관적인 인터페이스(Intuitive Interface)를 제공한다. 필터(Filter), 정렬(Sort), 그룹화(Group by), 칸반(Kanban) 및 테이블 뷰(Table View) 등 다양한 레이아웃 옵션을 통해 사용자 맞춤형 환경을 제공한다. 이를 통해 사용자는 데이터 시각화 및 관리에 대한 접근성(Accessibility)을 높일 수 있다.
기술 스택 및 아키텍처
Twenty는 TypeScript를 사용하여 타입 안정성을 확보하고, Nx를 통해 모노레포(Monorepo) 환경을 구축하여 개발 생산성을 높였다. 백엔드(Backend)는 NestJS 프레임워크를 기반으로 하며, BullMQ를 사용하여 비동기 작업 큐(Asynchronous Task Queue)를 구현했다. 데이터베이스(Database)는 PostgreSQL을 사용하고, Redis를 캐싱(Caching) 용도로 활용하여 성능을 최적화했다.
확장 가능한 플러그인 생태계
Twenty는 플러그인(Plugin) 기능을 통해 확장성(Extensibility)을 제공할 예정이다. 이를 통해 사용자는 CRM 기능을 커스터마이징(Customizing)하고, 다양한 서드파티(3rd-party) 서비스와의 연동을 쉽게 구현할 수 있다. 오픈소스(Open Source) 특성을 활용하여 커뮤니티 주도의 플러그인 개발을 지원하고, 생태계(Ecosystem)를 구축할 계획이다.