edgeever README

The project's README from github.com/tianma-if/edgeever. As one markdown file: README.md.

EdgeEver logo EdgeEver

An open-source, AI-native knowledge base & portable Evernote alternative

GitHub Stars GitHub Forks Docker Pulls Product Hunt Featured|HelloGitHub Sponsor on Afdian

简体中文 | 繁體中文 | English | 日本語

💬 Telegram Group  |  🌐 Live Demo  |  📱 Client Downloads

EdgeEver is a modern, open-source notes and knowledge base workspace. It revives the beloved Evernote-style three-pane layout while offering an open data architecture and seamless AI Agent integration for complete ownership and smart productivity.

💡 Serverless & 100% Free Forever EdgeEver can run within Cloudflare's free quotas with no server purchase or VPS maintenance. Users who prefer a VPS, NAS, or home server can deploy the same application with Docker.

⭐ If EdgeEver is useful to you, consider giving it a Star. Your support helps more people discover the project.

Why EdgeEver

Many long-time Evernote users simply want a reliable, open, and fast personal knowledge base. However, existing mainstream solutions all present tradeoffs:

EdgeEver fills this gap: The entire stack is open source, including sync and self-hosting. It keeps the three-pane layout you know, stays silky-smooth and lightweight even with 10,000+ notes, and ships native AI agents with zero-cost deployment.

💡 Recommended Workflow: Capture inspiration seamlessly across all devices and organize deeply in the classic three-pane view. Powered by native MCP and ACP, external agents can retrieve and organize your notes seamlessly, while the desktop app lets you collaborate deeply with local AI agents on your machine. Publish anywhere with one-click formatting—100% self-hosted at zero cost, building an open and truly owned second brain.

Online Demo

The public demo resets every day at 3:00 AM (China Standard Time) and restores sample notes. Do not store private content there.

Client Downloads

Download EdgeEver for macOS   Download EdgeEver for Windows   Download the EdgeEver Linux x86_64 AppImage Preview   Download EdgeEver for Android from Google Play   Download EdgeEver for iOS from the App Store

The iOS app requires an Apple ID from outside mainland China.

Features

Deployment

Cloudflare is the recommended zero-server deployment. Docker is available for users who prefer a VPS, NAS, or home server.

For Cloudflare, choose either of the following online deployment options:

Copy the prompt below directly into an AI Agent (such as Codex, Claude, Cursor, WorkBuddy, Antigravity, OpenClaw, Hermes Agent, etc.). During execution, if access to GitHub or Cloudflare is required, review the requested permissions and follow the prompts to authorize access.

Deploy EdgeEver entirely through GitHub and Cloudflare:
1. Fork https://github.com/tianma-if/edgeever.
2. Create D1 `edgeever` and R2 `edgeever-resources` in Cloudflare.
3. In Workers & Pages, create a Worker named `edgeever` from the Fork's `main` branch.
   Use the repository root, keep Cloudflare's default Workers Builds deploy command,
   and ensure its API token can read and edit D1. Select Save and Deploy.
4. After the Worker is created, add the user's chosen password as the runtime Secret
   `EDGE_EVER_AUTH_PASSWORD` (preferably at least 32 characters).
   The username defaults to `admin`.
   If the user specifies another, set `EDGE_EVER_AUTH_USERNAME` as a Workers Builds
   variable before the next build.
5. Run the build again, verify `/api/health` and `/api/openapi.json`, then log in
   with that administrator username and password.
6. Enable and manually run the GitHub Actions workflow named `Update deployed EdgeEver`
   once so the Fork can automatically receive future stable releases and fixes.

Detailed requirements: AI Agent Cloudflare Deployment.

Option B: Manual Online Deployment

Complete setup in 6 web steps:

  1. Fork the Repository: Click Fork at the top right of GitHub to fork EdgeEver into your personal account.
  2. Create Cloudflare Resources: Create D1 edgeever and R2 edgeever-resources.
  3. Import & Configure the Project: Create a Worker named edgeever from the Fork's main branch in Cloudflare Workers & Pages. Use the repository root and keep Cloudflare's default Workers Builds deploy command, which runs in Cloudflare. Ensure its API token can read and edit D1. The deploy command creates the bindings; do not edit Fork files.
  4. Choose the Administrator Password: Choose an administrator password, preferably at least 32 characters. Once the Worker is created, save it as the runtime Secret EDGE_EVER_AUTH_PASSWORD.
  5. Build & Verify: Save and Deploy creates the Worker and starts a build. If it fails because the administrator Secret is missing, add the runtime Secret from step 4 and retry. The username defaults to admin; to use another, set the EDGE_EVER_AUTH_USERNAME Workers Builds variable before retrying. Once deployed, confirm /api/health returns 200, then log in with the configured username and password.
  6. Enable Automatic Updates: Open the Fork's Actions tab, click I understand my workflows, go ahead and enable them, then manually run Update deployed EdgeEver once so the Fork can automatically receive future stable releases and fixes.

📖 For full step-by-step instructions and configuration details, see the Online Deployment Guide.

💡 Custom Domain & Access: After deployment, you can directly use the default *.workers.dev domain assigned by Cloudflare, or attach your own custom domain in the Worker settings under Settings → Domains & Routes.

💡 Cloudflare R2 Activation: Although Cloudflare R2 offers a generous free storage allowance that note-taking workloads remain completely within, you must first activate an R2 subscription and add a payment method. Cloudflare officially supports UnionPay, Visa, Mastercard, and other cards, as well as PayPal, Apple Pay, Google Pay, and other payment methods.

Option C: Docker on a VPS or NAS

Use the GitHub-hosted installer and the official GHCR image:

curl -fsSL https://edgeever.org/install.sh | bash

The command pulls the latest image, generates an administrator password, and starts EdgeEver with Docker Compose.

See the Docker deployment guide for manual deployment and configuration.

After installation, updates run automatically each day by default. To update manually, run ~/edgeever/update.sh on the deployment server.


Multi-Account Login

Once deployed, a single instance supports multi-account login.

The instance administrator can create, disable, or reset member accounts in Profile -> User accounts. Each member gets a fully isolated personal workspace, including notebooks, notes, attachments, Trash, import/export, and MCP tokens.

Browser Web Clipper

Install EdgeEver Web Clipper for Google Chrome   Install EdgeEver Web Clipper for Microsoft Edge   Install EdgeEver Web Clipper for Firefox

Community and Feedback

Telegram Community

Welcome to the EdgeEver community. Join us to discuss the EdgeEver experience, real-world AI Agent applications, cost-effective or free AI resources, and automation workflows.

👉 Join the EdgeEver Telegram group

Plugins and Themes

Web and desktop apps support functional plugins and custom themes, installable from the official marketplace, GitHub, or a Manifest URL, with seamless sync across your workspace. Developers can extend capabilities using @edgeever/plugin-api; see the plugin development guide and marketplace submission policy.

Tech Stack

Quick Start

bun install
bun run dev

Local development signs in automatically; fresh databases use owner / edgeever-local-dev. Log out to test the login screen.

Project Structure

apps/web          Vite + React frontend, PWA, offline drafts, and sync queue
apps/extension    Chrome/Edge/Firefox Manifest V3 web clipper
apps/api          Cloudflare Worker + Hono API, MCP endpoint
apps/mobile       Expo + React Native Android app
apps/ios          Native SwiftUI iOS app (TipTap EditorBundle, GRDB)
apps/desktop      Electron desktop shell, preload bridge, and native packaging
apps/site         Astro official website, deployable independently
packages/client   Shared API client for web and mobile apps
packages/shared   Shared types, Zod schemas, TipTap / Markdown conversion
crates/desktop-sidecar
                   Rust sidecar for local SQLite, offline data, backups, and resources
scripts           Wrangler wrapper, password hash, CLI, MCP stdio bridge, Evernote ENEX import
migrations        Shared append-only D1/SQLite database migrations
docs              Architecture, migration, and deployment docs
.github/workflows CI for web, mobile, iOS, desktop packaging, deployment, and releases
wrangler.toml     Cloudflare Workers, Assets, D1, R2 configuration

Content Formats

EdgeEver stores note content in three forms:

content_json      TipTap/ProseMirror document, the editor source of truth
content_markdown  API, Agent, import, and export format
content_text      Search, summary, and indexing text

Open Profile -> Import and export to export or import an EdgeEver ZIP. Its notes/ directory is directly readable and portable as Markdown, while its structured data supports complete recovery between EdgeEver instances. Import preserves unrelated target data and overwrites records with matching EdgeEver IDs.

MCP

Create an API token in Profile -> MCP settings and give it to your AI Agent. The Agent can then securely manage your knowledge base within your account permissions. It supports both text notes and diagram notes (including mind maps, flowcharts, and architecture diagrams) with full CRUD capabilities. The Agent can create a structured table note from a field plan, edit its fields, and read, add, update, or delete its records. The Agent can also manage note templates and AI instructions.

💡 Inspiration: Make AI your true knowledge orchestrator and creative co-pilot—instantly turn concepts into interactive mind maps and architecture diagrams, while supplying private context to your AI Agents. Paired with EdgeEver’s powerful rich-text editing and elegant typography, AI-assisted content becomes beautifully structured, polished, and publication-ready knowledge assets.

Image Compression

Image compression happens in the Web client before upload and is controlled by the Compress note images setting. When enabled, PNG, JPEG, WebP, and AVIF files are converted to WebP when beneficial, with the longest edge limited to 2560px. If compression does not reduce size, the original file is kept.

EdgeEver avoids Worker-side image processing to reduce compute and image-processing quota usage. REST API and MCP upload paths store the file content provided by the client without additional server-side compression.

Advanced Object Storage

The instance owner can configure S3-compatible object storage under Settings → Advanced → OSS object storage. Changing storage does not migrate or affect existing attachments.

Migration

If you want to migrate notes from other platforms to EdgeEver, please refer to the following simple migration guides:

Docker Deployment

Docker runs the same frontend, API routes, services, authentication, MCP implementation, and migrations as Cloudflare. The container uses SQLite with local files or S3-compatible attachment storage and supports amd64 and arm64. See Deploy EdgeEver with Docker and Self-hosting and Docker architecture.

Sync Timing

Web, PWA, and desktop upload memo edits after 30 seconds of inactivity and check for remote changes every 5 minutes while visible; focus and manual refresh remain immediate. Adjust DEFERRED_MEMO_SYNC_DELAY_MS and BACKGROUND_WORKSPACE_REFRESH_INTERVAL_MS in apps/web/src/lib/workspace-refresh.ts.

Acknowledgements

Trademark and Brand Use

The EdgeEver name, logo, and other brand identifiers distinguish the official project. Forks and modified versions may state that they are based on EdgeEver, but must not imply official status or mislead users. The open-source license does not grant trademark rights; other uses require prior written permission from the project maintainers.

Disclaimer

EdgeEver is an independent open-source note-taking application developed and maintained by individuals and the community. It is not affiliated with, authorized, sponsored, or endorsed by Evernote Corporation or its affiliates.

EdgeEver is self-hosted software. Except for official demo instances, project maintainers do not host, control, or review user content. Content stored or displayed by an instance is the responsibility of its users or operators and does not represent the maintainers' views.

edgeever (tianma-if/edgeever)

Searching Database…

Что это?EdgeEver — опенсорсная база знаний и приложение для заметок с ИИ в основе, сделанное как переносимая альтернатива Evernote, с классическим трёхпанельным интерфейсом и нативной интеграцией ИИ/MCP-агентов.
Это настольное приложение, веб-приложение или и то и другое?И то и другое: это самохостящееся веб-/серверное приложение с нативными клиентами для Web, Android, macOS, Windows, Linux и iOS плюс браузерное расширение Web Clipper.
Как развернуть EdgeEver?Бесплатно разверните на Cloudflare (сделайте форк репозитория, создайте базу D1 и бакет R2, импортируйте проект как Worker, задайте секрет с паролем администратора и разверните) или запустите через Docker на VPS/NAS, используя официальный образ GHCR и приложенный скрипт установки.
Нужен ли аккаунт Cloudflare или VPS для запуска?Нужен либо бесплатный аккаунт Cloudflare (для серверлесс-развёртывания с D1 и R2), либо Docker на VPS, NAS или домашнем сервере; других аккаунтов для самохостинга не требуется.
Есть ли нюансы у бесплатного развёртывания на Cloudflare?Нужно активировать подписку R2 и добавить способ оплаты, даже если использование остаётся в бесплатных лимитах, а приложению iOS требуется Apple ID, зарегистрированный вне материкового Китая.
Мои данные остаются под моим контролем?Да, заметки хранятся в стандартной SQLite с полным доступом через REST API, MCP и CLI, а Web Clipper отправляет сохранённый контент прямо в ваш самохостящийся экземпляр без сторонних посредников.
Как EdgeEver подключается к ИИ-агентам вроде Claude Code?Встроена нативная поддержка Model Context Protocol (MCP), чтобы внешние агенты могли читать, упорядочивать и резюмировать заметки; настольное приложение подключается к локальным агентам (Codex, Antigravity, Claude Code, WorkBuddy) по Agent Client Protocol (ACP) для совместного письма.
Можно ли делать резервные копии или экспортировать заметки?Да, можно экспортировать всю библиотеку в ZIP-архив без потерь — с Markdown, Front Matter, вложенными папками, вложениями и историей версий, — либо экспортировать отдельную заметку в Markdown, HTML или PDF.
Сколько данных вмещает одно развёртывание?Развёртывание на бесплатном тарифе Cloudflare вмещает примерно 150 000 коротких заметок и 50 000 изображений, а развёртывание на Docker масштабирует хранилище по мере необходимости, поддерживая миллионы заметок.
Можно ли рисовать диаграммы внутри заметок?Да, в EdgeEver есть нативный рендеринг Mermaid плюс визуальный редактор диаграмм на основе структурного IR, так что и встроенный ассистент, и внешние ИИ-агенты могут генерировать и дорабатывать блок-схемы и майнд-карты по промпту.
Creator
tianma-if
Size
153.3 MB
Stars
2.3K
Age
3mo
Commits · 90 Days