Open-source, AI-native knowledge base & Evernote alternative with native MCP. Zero-cost on Cloudflare or Docker.
See the codeAn open-source, AI-native knowledge base & portable Evernote alternative
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.
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, it not only lets AI agents retrieve and synthesize your knowledge, but also connects with your favorite productivity tools like Notion and Feishu. Publish anywhere with one-click formatting—100% self-hosted at zero cost, building an open and truly owned second brain.
The public demo resets every day at 3:00 AM (China Standard Time) and restores sample notes. Do not store private content there.
The iOS app requires an Apple ID from outside mainland China.
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.
Complete setup in 6 web steps:
edgeever and R2 edgeever-resources.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.EDGE_EVER_AUTH_PASSWORD.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.📖 For full step-by-step instructions and configuration details, see the Online Deployment Guide.
💡 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.
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, starts EdgeEver with Docker Compose, and schedules daily automatic updates.
See the Docker deployment guide for manual deployment and configuration.
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.
The Web Clipper is officially published for Chrome, Microsoft Edge, and Firefox. Install it from the store for your browser (Microsoft Edge users can install the Chrome Web Store version directly):
main branch deployment-only. Create a separate branch from the official upstream/main for synchronization, development, and pull requests; do not develop on or Sync fork the deployment main.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
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.
apps/mobile, with SQLite local storage and incremental sync.apps/ios (iOS 17+), with a packaged TipTap EditorBundle, GRDB local mirror/outbox, and Android-aligned shell chrome.apps/site, deployable to Cloudflare Pages.bun install
bun run dev
Local development signs in automatically; fresh databases use owner / edgeever-local-dev. Log out to test the login screen.
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
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.
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 also manage note templates and AI instructions, and connect with tools such as Notion databases and Feishu Bitable.
💡 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 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.
The instance owner can configure S3-compatible object storage under Settings → Advanced → OSS object storage. Changing storage does not migrate or affect existing attachments.
If you want to migrate notes from other platforms to EdgeEver, please refer to the following simple migration guides:
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.
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.
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.
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.
HTML
58.0%
TypeScript
25.9%
JavaScript
9.9%
Swift
3.5%
Open-source, AI-native knowledge base & Evernote alternative with native MCP. Zero-cost on Cloudflare or Docker.
See the codeAn open-source, AI-native knowledge base & portable Evernote alternative
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.
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, it not only lets AI agents retrieve and synthesize your knowledge, but also connects with your favorite productivity tools like Notion and Feishu. Publish anywhere with one-click formatting—100% self-hosted at zero cost, building an open and truly owned second brain.
The public demo resets every day at 3:00 AM (China Standard Time) and restores sample notes. Do not store private content there.
The iOS app requires an Apple ID from outside mainland China.
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.
Complete setup in 6 web steps:
edgeever and R2 edgeever-resources.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.EDGE_EVER_AUTH_PASSWORD.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.📖 For full step-by-step instructions and configuration details, see the Online Deployment Guide.
💡 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.
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, starts EdgeEver with Docker Compose, and schedules daily automatic updates.
See the Docker deployment guide for manual deployment and configuration.
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.
The Web Clipper is officially published for Chrome, Microsoft Edge, and Firefox. Install it from the store for your browser (Microsoft Edge users can install the Chrome Web Store version directly):
main branch deployment-only. Create a separate branch from the official upstream/main for synchronization, development, and pull requests; do not develop on or Sync fork the deployment main.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
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.
apps/mobile, with SQLite local storage and incremental sync.apps/ios (iOS 17+), with a packaged TipTap EditorBundle, GRDB local mirror/outbox, and Android-aligned shell chrome.apps/site, deployable to Cloudflare Pages.bun install
bun run dev
Local development signs in automatically; fresh databases use owner / edgeever-local-dev. Log out to test the login screen.
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
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.
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 also manage note templates and AI instructions, and connect with tools such as Notion databases and Feishu Bitable.
💡 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 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.
The instance owner can configure S3-compatible object storage under Settings → Advanced → OSS object storage. Changing storage does not migrate or affect existing attachments.
If you want to migrate notes from other platforms to EdgeEver, please refer to the following simple migration guides:
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.
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.
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.
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.
HTML
58.0%
TypeScript
25.9%
JavaScript
9.9%
Swift
3.5%