Haxy 위의 Haxy - 프로젝트 메타데이터를 Git 저장소에 보관하는 코드 협업 플랫폼
요약
Haxy는 프로젝트 메타데이터를 Git 저장소에 보관하는 코드 협업 플랫폼입니다. TUI 기반으로 개발되어 터미널과 웹 양쪽에 렌더링이 가능하며, Git의 데이터베이스 부하 문제를 해결하기 위해 이벤트 로그를 인덱싱된 구체화 뷰로 처리합니다. 이는 GitHub나 GitLab 같은 기존 서비스가 겪는 성능 저하 문제에 대한 대안을 제시합니다.
핵심 포인트
- Git 메타데이터 저장 방식의 혁신적인 접근
- TUI 기반으로 터미널과 웹 모두 지원
- 이벤트 로그를 인덱싱하여 검색 효율성 개선
- 대규모 코드 호스팅 서비스의 성능 문제를 해결하려는 시도
Haxy가 얼마나 바이브 코딩으로 만들어졌는지 알고 싶음. 커밋에는 정보가 없고 기여 안내 파일도 없는데, 개발자는 YouTube에서 자신이 쓰는 로컬 모델을 꽤 공개적으로 이야기함. 첫인상은 좋았고 설계 방향이 뚜렷한 점도 마음에 들지만, 그 외에는 정보가 부족한 게 아쉬움. README에 적힌 그대로 빌드가 쉬운 점은 정말 좋았음. 어느 정도는 Zig 덕분이기도 할 듯함.
디자이너와 웹 개발자가 절실해 보임. Git에 이벤트를 저장하는 방식은 흥미로워서 내 구현체와 연동해 볼 수도 있겠음. 다만 아직 문서가 전혀 없고 이벤트 예제도 실제로 작동하는 상태가 아닌 듯해서 망설여짐. 특히 연합된 다른 서버의 사용자와 소통하려 할 때 토론 인증이 어떻게 작동하는지 모르겠음.
주 인터페이스는 TUI이고, 같은 TUI 코드로 터미널과 웹/HTML 양쪽에 렌더링할 수 있도록 만들어져 있음.
여백이나 테두리 등을 다듬어야 한다는 데는 동의하지만, 프로젝트의 실제로 혁신적인 부분을 개발하기 위해 일단 작동하게 만든 MVP라고 봄. 가장 피상적이고 덜 흥미로운 부분을 두고 깔보는 듯한 태도라서 답글을 남김.
개발자가 보고 있다면 점진적 기능 축소(graceful degradation) 를 살펴보길 권함. 현재는 JavaScript를 끄면 링크된 페이지를 스크롤할 수 없음.
SSH로도 접속할 수 있고, 내가 이해하기로는 SSH가 주 인터페이스임. ssh try.haxy.net
Git의 문제 중 하나는 거의 모든 명령이 디스크 입출력을 다수 발생시킨다는 것임. git show whatever도 입출력 한 번으로 끝나지 않음. 다수의 사용자를 위한 코드 호스팅 서비스를 운영하면 성능 저하와 장애로 이어질 수 있음. 이슈 같은 Git 외의 데이터까지 Git에서 읽어 오면 더 심해지며, 전체 이슈가 약 5만 개인 Kubernetes 규모의 프로젝트라면 특히 그럴 것임. Haxy는 이 문제를 어떻게 처리하나요? 허점을 잡아내려는 질문은 아님. 지난 2년 정도 새 코드 호스팅 서비스가 계속 등장하지만, GitHub와 GitLab 등이 규모를 키우며 겪은 고생에서 배우거나 미리 대비하려는 곳은 드물어 보여서 Haxy는 다른지 궁금함.
특수 브랜치인 haxy/events는 이벤트 로그일 뿐임. 이슈 트래커를 볼 때마다 직접 읽을 필요는 없음. 이벤트를 처리해 적절히 인덱싱된 구체화 뷰(materialized view) 로 만들기 때문에 이슈, 패치, 토론을 효율적으로 탐색하고 검색할 수 있음.
제대로 이해했다면 Git용 Fossil 같은 것인가요? Fossil이 모든 것을 SQLite 파일에 저장하듯, 모든 것을 Git 메타데이터에 저장하는 구조로 보임.
Fossil 사용자로서 “우리 능력의 일부를 흉내 내려면 저렇게까지 해야 한다”는 밈을 올리고 싶지만, 여기서도 꽤 괜찮은 작업이 진행 중인 듯함.
AI 자동 생성 콘텐츠
본 콘텐츠는 RSS: GeekNews (한국어)의 원문을 AI가 자동으로 요약·번역·분석한 것입니다. 원 저작권은 원저작자에게 있으며, 정확한 내용은 반드시 원문을 확인해 주세요.
원문 바로가기