Cloudsteading
self hosting

Self-host a note-taking app on Cloudflare

'Self-hosted notes' means three different jobs. EdgeEver is an Evernote-style notebook app (Worker, D1, R2). 888wiki is a Markdown, block and canvas workspace (Worker, KV, D1, R2, a daily cron). Granit is a terminal notes app whose Markdown vault can be published as a static site on Cloudflare Pages. We read EdgeEver's and 888wiki's pinned README and Wrangler config, and Granit's pinned publishing guide; we did not deploy any of them.

By Cloudsteading · Sources checked 2026-10-15 · Independent guide

If the term is new, start with what self-hosting is and where Cloudflare fits. People who search for a self-hosted note-taking app usually want one of three things, and most roundups mix them:

  • A notebook app with folders, a note list, an editor and a way to clip web pages, to replace a hosted notes service.
  • A writing workspace where plain Markdown can also become blocks, a canvas or a whiteboard.
  • A way to publish a folder of Markdown notes as a website you own.

We have reviewed one Cloudflare project for each. Each links to its project page with the pinned README and license. EdgeEver and 888wiki were reviewed through their pinned READMEs and Wrangler configs; Granit has no Wrangler config, so its Cloudflare scope comes from its pinned publishing guide. The comparison below is about what each project's own files declare, not about a deployment we ran.

CriterionEdgeEver888wikiGranit
JobNotebook app with clippingMarkdown, block and canvas workspacePublish Markdown notes as a static site
Where you editWeb, PWA, desktop and mobile appsWeb editorTerminal app, locally
Runs on Cloudflare asWorker with static assetsWorker with static assetsStatic files on Pages
Declared bindingsD1, R2KV (two), D1, R2None (no Wrangler config)
Scheduled jobNone declaredDaily cronNone
LicenseAGPL-3.0AGPL-3.0MIT
Pinned commit9918570034d3357f34f14
Catalog scopeNote editing, organization and web clippingMarkdown notes, blocks, canvases and note publishingStatic publication of Markdown notes
What we ranNothingNothingNothing

EdgeEver: the notebook app

The EdgeEver README calls it "an open-source, AI-native knowledge base & portable Evernote alternative" and describes a three-pane layout of notebook tree, note list and editor. Nested notebooks, revision history, offline drafts that sync after reconnecting, public note sharing with an optional password, and several accounts on one instance are all listed. It also lists a browser web clipper for Chrome, Edge and Firefox that sends clipped articles as Markdown straight to your instance, and an MCP endpoint for AI agents with its own API token.

What the config says about Cloudflare: the pinned wrangler.toml declares one Worker (built with a Bun script), a static-assets binding for the single-page app, a D1 database (DB) and an R2 bucket (RESOURCES). The database ID is an all-zero placeholder, so you create your own. Authentication comes from an EDGE_EVER_AUTH_PASSWORD secret you set after the first deploy.

Things to know before you start:

  • R2 needs a billing-enabled account. The README says so directly: even if usage stays inside the free R2 allowance (10 GB-month of Standard storage, 1 million Class A and 10 million Class B operations a month, checked 2026-10-15), you must activate R2 and add a payment method.
  • Capacity is the README's estimate, not ours. It says the free storage allowances hold roughly 150,000 short notes and 50,000 images. We did not test this, and the Worker's 10 ms CPU limit per invocation on the Free plan has not been benchmarked for this app.
  • The same app runs in Docker. The README offers a Docker install for a VPS or NAS. If you would rather not keep a card on file with Cloudflare, that is the route its authors document.
  • Migration paths exist on paper. The README links migration guides for Evernote, Notion, flomo and Memos, and the repository has an Evernote ENEX import script. We did not run any of them.
  • License. AGPL-3.0. See the AGPL license guide if you modify it and let others use your copy.

Our catalog scope for EdgeEver is note editing, organization and web clipping. It does not claim a workspace database, collaboration or full parity with the services it is compared to. The pages on Evernote and Notion alternatives hold the wider picture.

888wiki: Markdown first, with room to change shape

The 888wiki README describes "a Markdown-first knowledge workspace you can run in your own Cloudflare account" with four modes: Markdown (live preview, math, diagrams, citations), Block (editable blocks and slash commands), Canvas (cards with labelled relationships, exportable as .canvas, PNG or SVG) and Whiteboard (Excalidraw drawing). Notes can be shared publicly or behind a password, with a reading view that supports outlines, print and PDF export, and it can present a note as slides.

The pinned wrangler.toml is more involved than EdgeEver's:

  • Two KV namespaces (NOTES, SHARE), an R2 bucket for images (IMAGES) and a D1 database for note history (NOTE_HISTORY_DB). The IDs in the file are placeholders (demo).
  • A cron trigger that runs once a day, which the file describes as a cleanup job.
  • Three required secrets: SCN_SALT, SCN_SECRET and SCN_ADMIN_PW.
  • A Workers AI binding that is commented out. The file says AI falls back to Groq when no binding is configured, so AI writing and transcription depend on a separate provider unless you enable it.

Two limits matter on the Free plan. Workers KV allows 1,000 key writes a day (checked 2026-10-15), which can constrain frequent saves. We have not measured how many writes an edit causes, so measure KV operations, D1 usage and Worker CPU for your workload before relying on the Free plan. And the README says published audio and large attachments use an external service called 888box, so not everything stays in your Cloudflare account. Core text and image notes do.

It is AGPL-3.0, like EdgeEver. Our scope for it is Markdown note editing, block documents, visual canvases and public or password-protected publishing. We haven't verified its team database or administration features.

Granit: publish your notes, edit them elsewhere

Granit is a terminal app that stores notes as local Markdown files and can publish them as a static website. The README describes "a local-first knowledge and productivity workspace for the terminal". Your vault is a folder of plain Markdown files. The Cloudflare part is the publish command: granit publish build ~/Notes/Research generates a static site, and the pinned publishing guide lists Cloudflare Pages with npx wrangler pages deploy ./dist in its deploy table. It says every link is relative and every asset is local.

According to that guide, the generated site keeps wikilinks, backlinks, tag pages and a per-note outline, and is explicitly "inspired by Obsidian Publish". It trades the hosted service and live graph for static files you control.

Limits to know:

  • There is no hosted editor. You write in the terminal app on your own machine. If you want to edit notes in a browser or on a phone, choose one of the other two.
  • There is no Cloudflare request handler. The review found no Wrangler config. The Cloudflare scope is the static output only, which Cloudflare serves without invoking a Worker. Static asset requests are free and unlimited on Pages, but you still pay for your own build machine and any custom domain.
  • Sync is yours to solve. We found no private sync in the scope we reviewed. Keep the vault in Git or a folder sync tool you already trust.

Granit is MIT licensed (see the MIT license guide). The catalog compares it with Obsidian Publish, not with a hosted notebook or workspace.

Picking one

  • You want a Cloudflare-hosted notebook with a clipper and apps: EdgeEver. Check the R2 billing requirement first.
  • You want to write in Markdown and sometimes draw or build pages: 888wiki. Watch KV writes and decide whether you accept the external attachment service.
  • You already write Markdown locally and want a public site: Granit, deployed to Pages.

None of the three has been checked here for real-time collaboration, comment threads or database views, so if your team relies on those in a hosted workspace, treat all three as unproven for that job. We also did not test how any of them handles a large import, search over many thousands of notes, or backups, beyond what the READMEs state. If you want to run something on a server instead of Cloudflare, EdgeEver is the only one of the three whose README documents a Docker install.

For a different pattern on the same platform, see the self-hosted bookmark manager guide and the self-hosted RSS reader guide.

Checklist before you rely on one

  1. EdgeEver and 888wiki: deploy to a workers.dev address first, with your own D1, KV and R2 IDs, and apply every migration the README lists.
  2. EdgeEver and 888wiki: set the admin secrets as the README describes, then log out and check that an unauthenticated visitor cannot read your notes.
  3. Granit: build the site locally, open the generated files in dist and check that no private note was included, then deploy dist to Pages.
  4. Import a small set of real notes, not a thousand, and watch the usage page in the Cloudflare dashboard for a day.
  5. Decide on purpose which notes are shared publicly. Test a share link from a private window and confirm it can be switched off.
  6. Export a backup (EdgeEver's ZIP of Markdown files, or the Git history of a Granit vault) and restore it somewhere else before you trust it.
  7. Set Cloudflare billing notifications, and check the AGPL or MIT terms if you change the code.

Common questions

What is the best self-hosted note-taking app on Cloudflare?

It depends on the job. Of the three projects we have reviewed, EdgeEver is the closest to a notebook app with notebooks, a note list and an editor, plus a web clipper. 888wiki fits Markdown writing with block documents and canvases. Granit is a terminal app, and only its published static output runs on Cloudflare. We have not deployed or load-tested any of them, so this is a reading of their configs and READMEs.

Can I run a note-taking app for free on Cloudflare?

EdgeEver and 888wiki are both configured around Cloudflare services that have free allowances, so a small personal library may fit. We have not measured either. EdgeEver's own README says R2 needs a billing-enabled account even when usage stays free, and 888wiki's config uses Workers KV, which allows 1,000 writes a day on the Free plan. Optional AI features depend on the chosen provider's pricing and free allowances.

Is there a self-hosted Evernote alternative on Cloudflare?

EdgeEver describes itself as an open-source Evernote alternative and ships an Evernote migration guide and an ENEX import script. We reviewed it for note editing, organization and web clipping. We did not test the import, and we do not claim feature parity with Evernote.

Is there a self-hosted Notion alternative on Cloudflare?

Only for part of the job. 888wiki offers Markdown notes, block documents and visual canvases, and EdgeEver offers structured notes and table notes. Neither project has been verified here for team databases, permissions or collaboration, and our reviews do not claim it.

Can I publish my notes as a website on Cloudflare?

Yes, in two ways. 888wiki can share public or password-protected notes from its own Worker. Granit builds a static site from a Markdown folder with its publish command, and its documentation lists Cloudflare Pages as a deploy target. Granit's output has no editing, sync or live graph.

Which licenses do these note apps use?

EdgeEver and 888wiki are AGPL-3.0, which asks you to offer source to network users if you modify the software and run it for others. Granit is MIT.

Sources and review

Recommendations are Cloudsteading’s editorial assessment. Repository review establishes documented capabilities; it does not prove a fresh deployment or complete feature parity. Prices and platform limits can change.