본문으로 건너뛰기
Enclave
커뮤니티와 기여

함께 엔클레이브를 더 좋게 만들어요

엔클레이브는 MIT 라이선스로 완전히 오픈소스이며, 아주 작은 팀과 사용자들이 천천히 키워 왔습니다. 캐릭터 설정을 공유하고 싶든, 버그를 제보하고 싶든, PR을 보내고 싶든 — 여기엔 당신이 참여할 자리가 있습니다.

네 가지 참여 방법

  • 캐릭터 만들고 세계관 이야기하기

    앱에서 만든 캐릭터, 고민해 낸 세계관 설정, 재미있는 사용법 — 모두 공유할 가치가 있습니다. GitHub Discussions에 올려 다른 플레이어·개발자와 이야기해 보세요. 많은 기능의 영감이 바로 여기서 나왔습니다.

  • 문제 제보하기

    버그나 어색한 경험을 만났다면 GitHub Issues에 재현 단계와 환경 정보(OS, 브라우저, 셀프 호스팅/클라우드)를 적어 올려 주세요. 명확한 이슈 하나는 수정 하나만큼 가치 있습니다.

  • 버그 수정과 기능 개발

    저장소를 포크하고 브랜치를 만들어 pnpm build가 통과하는지 확인한 뒤, 변경 내용을 설명하는 PR을 보내 주세요. 커밋 메시지에는 시맨틱 접두사(feat: / fix: / docs: 등)를 사용합니다. 작은 수정부터 시작하는 것도 훌륭합니다.

  • 번역과 문서

    엔클레이브는 한·중·영·일 4개 언어를 지원하며 모든 문구는 packages/i18n의 catalogs에서 관리됩니다. README와 개발 문서도 4개 언어 버전이 있습니다. 번역 한 곳을 고치거나 문서 한 단락을 보태는 것도 어엿한 기여입니다.

개발자: 3단계로 로컬 환경 실행

  1. 환경 준비

    Node.js ≥ 18, pnpm 8.15.4(corepack enable로 버전 고정 권장). 데이터베이스는 내장 SQLite라 추가 설치가 필요 없습니다.

  2. 의존성 설치

    클론 후 pnpm install로 워크스페이스 패키지를 설치합니다. api는 자체 npm 락 파일을 가지며 pnpm 워크스페이스 밖에 있으므로 별도로 cd api && npm install이 필요합니다.

  3. 설정하고 실행

    api/.env.example을 api/.env로 복사하고 모델 API 키를 최소 하나 입력하세요. 그다음 pnpm dev:api로 백엔드(:3000), pnpm dev:app으로 프런트엔드(:5180)를 시작합니다. 주의: pnpm dev를 그대로 실행하지 마세요 — 그건 멀티테넌트 클라우드 모드용 명령입니다. 셀프 호스팅/로컬 개발은 dev:api + dev:app을 사용합니다.

전체 포트 목록, 로그 위치, Android 연동 디버깅 안내는 저장소의 DEVELOPMENT.md를 참고하세요.

저장소 구조 한눈에 보기

단일 모노레포입니다. apps/app은 메인 앱(기능 모듈 단위 구성 — 채팅, 모멘트, 게임, 펫, 지식 베이스, 일정 등), api는 NestJS 백엔드, apps/site는 이 공식 사이트, packages에는 공유 계약과 다국어 리소스가 있습니다. 프런트엔드 수정은 대부분 apps/app의 feature 디렉터리 하나만 건드리면 됩니다.

교체 가능한 모델 레이어(BYOK)

AI 모델 연결은 교체 가능합니다. OpenAI, Claude, Gemini, DeepSeek 같은 클라우드 모델은 자신의 API 키로, 혹은 로컬 Ollama / vLLM을 지정해 완전 오프라인으로 돌릴 수 있습니다. 각 모델의 연결 방법은 '모델 연동' 페이지를 참고하세요.

여기서 시작하세요

어디서 시작할지 모르겠다면 먼저 Discussions에서 인사하고 하고 싶은 일을 들려주세요. 또는 Issues를 둘러보며 이해할 수 있는 작은 문제를 찾아보세요. 기여 규칙 전문은 CONTRIBUTING.md에 있습니다.

함께 만들기 · Enclave