gitmyhub

mdread

JavaScript ★ 18 updated 22d ago

A quiet reading room for your markdown — local-first, privacy-first reader. Drop a file or folder, read, edit, download. No backend. Live: https://mdread.app

A browser-based Markdown reader and editor that runs fully offline with no server, no account, and no data leaving your device.

JavaScriptViteES modulesProgressive Web AppCloudflare Workerssetup: easycomplexity 1/5

mdread is a browser-based reader and editor for Markdown files. It runs entirely in your browser with no server, no account, and no data leaving your device. You can drop a single file or an entire folder onto the page, read the content in a formatted view, make edits, and save or download the result. The live version is at mdread.app and it is open source under the MIT license.

The reading experience is designed for long documents. It uses your operating system's built-in serif typeface rather than loading any web fonts, includes a table of contents with scroll tracking, and lets you switch between day, sepia, and night themes. You can also adjust text size, line width, and typeface style. The app can be installed as a progressive web app, meaning it works with no internet connection once the shell is cached in your browser.

Editing is built into the same interface with three views: read-only, split, and full editor. On Chrome and Edge, the app uses a browser feature called the File System Access API to write changes directly back to the original file on your disk. In other browsers, edited files are downloaded as new copies instead. Searching across an open folder, keyboard shortcuts for common actions, and remembering your last folder and reading position are all included.

Deployment is handled through Cloudflare. A one-click button clones the repository into your own GitHub account and deploys it automatically. From the command line, running npm install and then npm run deploy publishes the built app to a free Cloudflare Workers URL. No backend is needed because the app is entirely static HTML, JavaScript, and CSS built with Vite and plain ES modules.

There is no analytics and no external network request at runtime, which means the privacy guarantee is structural, not just a policy.

Where it fits