본문으로 건너뛰기
로그인 둘러보기
개발·코딩·데이터베이스 · 윈도우즈 유틸

marchat

0

marchat은 Cod-e-Codes가 개발한 경량 터미널 채팅 애플리케이션으로, WebSocket을 통한 실시간 메시징과 선택적 E2E 암호화를 제공합니다.

E2E 암호화개발자 도구오픈소스크로스플랫폼터미널 채팅플러그인

소개

marchat은 Cod-e-Codes가 개발한 경량 터미널 채팅 애플리케이션으로, WebSocket을 통한 실시간 메시징과 선택적 E2E 암호화를 제공합니다. 셀프 호스팅 방식으로 개발자에게 적합하며, Linux, macOS, Windows, Android/Termux에서 실행할 수 있습니다. Go로 작성되었으며 Bubble Tea 기반의 TUI를 갖추고 있습니다.

상세정보

터미널 UI 및 실시간 채팅

Bubble Tea 기반의 아름다운 TUI를 제공하며, WebSocket을 통한 빠른 실시간 메시징을 지원합니다. SQLite, PostgreSQL, MySQL 백엔드를 선택할 수 있습니다.

메시지 관리

메시지 편집, 삭제, 고정, 반응, 검색 기능을 제공합니다. 직접 메시지(DM)는 서버에 저장되며 재연결 시 다시 표시됩니다.

채널 및 다이렉트 메시지

여러 채팅방을 지원하며, 참여/나가기 기능과 채널별 메시지 기록을 제공합니다. DM은 사용자 간 비공개 대화를 지원합니다.

E2E 암호화

선택적 E2E 암호화를 제공하며, ChaCha20-Poly1305 알고리즘을 사용합니다. 공유 대칭 키를 통해 메시지와 파일 전송을 암호화합니다.

파일 공유

최대 1MB(설정 가능)의 파일을 전송할 수 있으며, 대화형 파일 선택기를 제공합니다. E2E 암호화를 선택적으로 적용할 수 있습니다.

플러그인 시스템

원격 레지스트리에서 플러그인을 설치하고 텍스트 명령 또는 Alt+키 단축키로 사용할 수 있습니다.

관리자 기능

사용자 관리, 차단, 강제 퇴장, 데이터베이스 백업 및 통계 확인 등의 관리 기능을 제공합니다.

알림 및 테마

벨소리 및 데스크톱 알림, 방해 금지 시간, 집중 모드를 지원합니다. 기본 제공 테마와 사용자 정의 테마(JSON)를 지원합니다.

설치 방법

Windows에서는 winget 명령어로 설치할 수 있습니다: winget install Cod-e-Codes.Marchat. macOS/Linux에서는 Homebrew 또는 Scoop을 사용할 수 있으며, Docker 이미지도 제공됩니다. 소스에서 빌드하려면 Go 1.25.13 이상이 필요합니다.

서버 시작

관리자 키를 생성하고 환경 변수로 설정한 후 서버를 실행합니다. 예를 들어, openssl rand -hex 32로 키를 생성하고 MARCHAT_ADMIN_KEY와 MARCHAT_USERS 환경 변수를 설정한 뒤 marchat-server를 실행합니다. 대화형 설정 모드(--interactive)도 지원됩니다.

클라이언트 연결

클라이언트는 marchat-client 명령으로 실행하며, 사용자 이름과 서버 주소를 지정하여 연결합니다. 관리자는 --admin 플래그와 관리자 키를 사용합니다.

활용 예시

자체 호스팅 환경에서 팀 커뮤니케이션 도구로 사용할 수 있습니다. 개발자들은 터미널에서 바로 채팅하며 코드 스니펫을 공유할 수 있습니다. 파일 공유 기능을 통해 문서나 이미지를 전송할 수 있으며, E2E 암호화를 활성화하면 보안이 중요한 대화를 보호할 수 있습니다.

지원 환경 및 요구사항

marchat은 Linux, macOS, Windows, Android/Termux에서 실행됩니다. 서버는 SQLite를 기본으로 사용하며, PostgreSQL 또는 MySQL을 선택할 수 있습니다. 소스 빌드 시 Go 1.25.13 이상이 필요합니다.

버전 및 업데이트

현재 버전은 v1.3.4이며, GitHub 릴리스 페이지에서 최신 버전을 확인할 수 있습니다. Windows에서는 winget을 통해 업데이트할 수 있습니다.

제한 사항 및 라이선스

E2E 암호화는 공유 대칭 키를 사용하므로, 키를 가진 모든 사용자가 메시지를 복호화할 수 있습니다. 이는 Signal과 같은 pairwise 키 교환 방식이 아닙니다. 플러그인 사용 시 해당 플러그인의 의존성을 확인해야 합니다. marchat은 MIT 라이선스로 배포됩니다.

시스템 요구사항

Windows 10 이상, macOS, Linux, Android/Termux · x64 · Go 1.25.13+ (소스 빌드 시)