프로젝트 소개

EdgeEver는 사랑받던 Evernote 스타일의 3분할 레이아웃을 되살리면서 개방형 데이터 아키텍처와 원활한 AI Agent 통합을 제공하여 완전한 소유권과 스마트한 생산성을 실현하는 현대적이고 오픈소스인 노트 및 지식 베이스 워크스페이스입니다. ## EdgeEver를 선택하는 이유 오랫동안 Evernote를 사용해 온 많은 사용자는 안정적이고 개방적이며 빠른 개인 지식 베이스를 원합니다. 기존 주류 솔루션은 모두 상충 관계를 제시합니다: - **Evernote**: 상업 광고로 비대해졌고, 데이터 내보내기가 번거로우며, 무료 요금제가 제한적이고, AI/MCP 기능 비용이 높습니다. - **Obsidian**: 핵심이 클로즈드 소스이고, 공식 동기화가 유료이며, 가벼운 캡처에는 무겁습니다. - **Memos & Stream Notes**: 소셜 타임라인 레이아웃은 구조화된 생산성과 다릅니다. - **SiYuan & 블록 기반 PKM**: 세분화된 블록 수준 아키텍처는 인지 부담을 더하고 진정한 제로 코스트 서버리스 계층이 없습니다. **EdgeEver는 이 공백을 채웁니다**: 동기화와 셀프 호스팅을 포함한 전체 스택이 오픈소스입니다. 3분할 레이아웃을 유지하고, 10,000개 이상의 노트에서도 매끄럽게 작동하며, 제로 코스트 배포가 가능한 네이티브 AI 에이전트를 제공합니다. ## 기능 - **원하는 방식으로 배포**: Cloudflare의 무료 서버리스 플랫폼에서 실행하거나 VPS, NAS, 홈 서버에서 Docker로 실행하세요. 개인 배포는 Cloudflare에서 약 150,000개의 짧은 노트와 50,000개의 이미지를 보관할 수 있으며, Docker는 필요에 따라 확장됩니다. - **개방형 데이터, 벤더 종속 없음**: 표준 SQLite를 기반으로 하며 완전한 REST API, MCP, CLI 접근을 제공합니다. - **무손실 ZIP 백업 및 이식성**: Markdown, Front Matter, 중첩 폴더, 상대 첨부 링크, 버전 기록을 포함한 깔끔한 아카이브로 전체 라이브러리를 내보낼 수 있습니다. - **네이티브 AI Agent 시너지**: Model Context Protocol (MCP)과의 깊은 통합을 통해 Claude Code, Codex, Antigravity, WorkBuddy 같은 AI Agent가 노트를 읽고, 정리하고, 요약하거나 Notion 및 Feishu Bitable과 동기화할 수 있습니다. - **자체 AI 모델 사용**: OpenAI, Anthropic 또는 Gemini 호환 서비스를 연결하여 스마트 요약, 핵심 포인트 추출, 교정, 번역, 텍스트 이어쓰기를 수행하세요. - **풍부한 Plugin API**: Plugin API로 EdgeEver를 확장하세요. - **무제한 다중 기기 동기화**: 상업적 기기 제한이나 페이월이 없습니다. 웹, PWA 또는 브라우저를 통해 PC, 태블릿, 모바일에서 동기화하세요. - **클래식 3분할 레이아웃 및 집중 모드**: 노트북 트리, 노트 목록, 넓은 편집기와 데스크톱 집중 모드를 제공합니다. - **가볍고 오래가는 데스크톱 성능**: 노트를 전환해도 이전 이미지와 문서가 메모리에 남지 않습니다. - **무제한 중첩 노트북**: 임의의 폴더 깊이로 지식을 정리하세요. - **뉴스레터 및 블로그용 원클릭 리치 복사**: 노트를 Substack, Medium, WordPress 또는 뉴스레터 편집기용 인라인 CSS가 포함된 서식 있는 텍스트로 변환하세요. - **원활한 이중 보기 편집기**: 데스크톱에서 리치 텍스트 편집과 Markdown 소스 코드 사이를 전환하세요. - **편리한 단일 노트 내보내기**: Markdown, HTML 또는 PDF로 내보내세요. - **네이티브 Mermaid 다이어그램 렌더링**: 순서도, 시퀀스 다이어그램, 마인드 맵을 노트에서 직접 렌더링하세요. - **시각적 다이어그램 노트**: 스마트 자동 레이아웃과 벡터 내보내기를 통해 노트에서 직접 마인드 맵, 순서도, 아키텍처 다이어그램을 스케치하세요. - **개정 기록**: 노트의 이전 버전을 검사하고 복원하세요. - **공개 노트 공유**: 선택적 자동 생성 접근 비밀번호와 함께 노트를 공개적으로 공유하세요. - **모바일에서 WeChat 기사 클리핑**: WeChat Official Account 기사에서 콘텐츠를 추출하세요. - **스마트 로컬 이미지 압축**: 클라이언트 측 WebP 압축으로 파일 크기를 50%-90% 줄입니다. - **범용 파일 첨부**: PDF, Office 문서, zip 파일, 오디오, 비디오를 첨부하고 미리 보세요. 청크 업로드는 최대 1 GiB 파일을 지원합니다. - **일괄 작업 및 유연한 정렬**: 여러 노트를 병합하거나 이동하고 드래그 앤 드롭으로 노트북 순서를 변경하세요. - **오프라인 초안 및 대기열**: 오프라인에서 초안을 작성하고 편집하세요. 다시 연결되면 변경 사항이 동기화됩니다. - **무차별 대입 로그인 보호**: 서버 측 계정 및 IP 기반 로그인 실패 제한. - **멀티 테넌트 계정 격리**: 엄격하게 분리된 공간으로 단일 인스턴스에서 여러 사용자 계정을 호스팅하세요. - **필요한 모든 곳에서**: Web, Android, macOS, Windows, Linux, iOS에서 사용 가능하며, Web Clipper는 Chrome, Edge, Firefox를 지원합니다. ## 배포 ### 옵션 A: AI Agent로 배포 (권장) AI Agent(Codex, Claude, Cursor, WorkBuddy, Antigravity 등)에 프롬프트를 복사하여 GitHub와 Cloudflare를 통해 EdgeEver를 완전히 배포하세요. 에이전트가 저장소를 포크하고, D1 및 R2 리소스를 생성하고, Worker를 생성하고, 관리자 비밀번호를 설정하고, 자동 업데이트를 활성화합니다. ### 옵션 B: 수동 온라인 배포 6개의 웹 단계로 설정을 완료하세요: 저장소 포크, Cloudflare 리소스 생성, 프로젝트 가져오기 및 구성, 관리자 비밀번호 선택, 빌드 및 검증, 자동 업데이트 활성화. ### 옵션 C: VPS 또는 NAS에서 Docker GitHub에서 호스팅되는 설치 프로그램을 사용하세요: ```sh curl -fsSL https://edgeever.org/install.sh | bash ``` 이 명령은 최신 이미지를 가져오고, 관리자 비밀번호를 생성하고, Docker Compose로 EdgeEver를 시작하고, 일일 자동 업데이트를 예약합니다. ## 다중 계정 로그인 단일 인스턴스는 다중 계정 로그인을 지원합니다. 인스턴스 관리자는 멤버 계정을 생성, 비활성화 또는 재설정할 수 있습니다. 각 멤버는 완전히 격리된 개인 워크스페이스를 받습니다. ## 브라우저 Web Clipper Web Clipper는 Chrome, Microsoft Edge, Firefox용으로 공식 게시되었습니다. ## 커뮤니티 및 피드백 - 버그, 기능 요청, 배포 문제: GitHub Issues - 코드 기여: Contribution Guide 읽기 - AI Agent 애플리케이션 및 자동화 워크플로에 대한 논의를 위해 EdgeEver Telegram 그룹에 참여하세요. ## 플러그인 및 테마 웹 및 데스크톱 앱은 공식 마켓플레이스, GitHub 또는 Manifest URL에서 설치할 수 있는 기능 플러그인과 사용자 정의 테마를 지원합니다. 개발자는 `@edgeever/plugin-api`를 사용하여 기능을 확장할 수 있습니다. ## 기술 스택 - Web, API, 공식 사이트, 공유 타입 패키지를 포함한 Bun 워크스페이스 모노레포. - 프론트엔드: Vite, React, React Router, TanStack Query, Tailwind CSS, shadcn/ui, Radix UI. - 편집기: Markdown 지원이 있는 TipTap / ProseMirror; PWA는 vite-plugin-pwa, Workbox, Dexie를 사용합니다. - Android 앱: SQLite 로컬 저장소와 증분 동기화를 갖춘 Expo + React Native. - iOS 앱: 네이티브 SwiftUI (iOS 17+), 패키징된 TipTap EditorBundle, GRDB 로컬 미러/아웃박스. - 네이티브 데스크톱 앱: 고성능 로컬 데이터 서비스를 위한 Electron + Rust 사이드카. - 웹 클리퍼: Manifest V3, Mozilla Readability, Turndown. - 백엔드: REST API와 Remote MCP를 갖춘 Hono/Zod 비즈니스 애플리케이션; Cloudflare는 Workers/D1/R2를 사용하고, Docker는 Bun/SQLite/로컬 파일 또는 S3를 사용합니다. - 공식 사이트: Cloudflare Pages에 배포 가능한 Astro 정적 사이트. ## 빠른 시작 ```sh bun install bun run dev ``` 로컬 개발은 자동으로 로그인되며, 새 데이터베이스는 `owner` / `edgeever-local-dev`를 사용합니다. ## 콘텐츠 형식 EdgeEver는 노트 콘텐츠를 세 가지 형태로 저장합니다: `content_json` (TipTap/ProseMirror 문서), `content_markdown` (API, Agent, 가져오기 및 내보내기 형식), `content_text` (검색, 요약, 인덱싱 텍스트). ## MCP Profile -> MCP 설정에서 API 토큰을 생성하여 AI Agent에 제공하세요. Agent는 계정 권한 내에서 지식 베이스를 안전하게 관리할 수 있으며, 전체 CRUD 기능을 갖춘 텍스트 노트와 다이어그램 노트를 지원하고 Notion 데이터베이스 및 Feishu Bitable과의 연결도 지원합니다. ## 이미지 압축 이미지 압축은 업로드 전에 Web 클라이언트에서 발생합니다. PNG, JPEG, WebP, AVIF 파일은 유리한 경우 WebP로 변환되며, 가장 긴 변은 2560px로 제한됩니다. ## 고급 객체 스토리지 인스턴스 소유자는 Settings -> Advanced -> OSS object storage에서 S3 호환 객체 스토리지를 구성할 수 있습니다. ## 마이그레이션 Evernote, flomo, Memos, Notion에 대한 마이그레이션 가이드가 제공됩니다. ## Docker 배포 Docker는 Cloudflare와 동일한 프론트엔드, API 라우트, 서비스, 인증, MCP 구현, 마이그레이션을 실행합니다. 컨테이너는 로컬 파일 또는 S3 호환 첨부 파일 스토리지와 함께 SQLite를 사용하며 `amd64`와 `arm64`를 지원합니다. ## 동기화 타이밍 Web, PWA, 데스크톱은 30초 동안 비활성 상태 후 메모 편집을 업로드하고, 표시 중에는 5분마다 원격 변경 사항을 확인합니다. 포커스와 수동 새로 고침은 즉시 유지됩니다. ## 감사의 글 EdgeEver의 노트 필기 제품 디자인은 Evernote와 같은 성숙한 노트 필기 도구의 공개적으로 이용 가능한 제품 경험에서 정보를 얻었습니다. 관련 기능은 EdgeEver가 독립적으로 설계하고 구현했습니다.