Markdown Viewer

Legal

Privacy Policy

Last updated · July 24, 2026  ·  Applies to Markdown Viewer 1.0.x and this website

1. Overview

Markdown Viewer's core rendering runs on your device. Markdown parsing, HTML sanitization, syntax highlighting, math typesetting, Mermaid, Graphviz and Vega-Lite rendering use libraries bundled inside the extension package; no executable code is downloaded from a remote server. The extension offers three optional, user-controlled network features described below. A document can also explicitly reference external resources such as images or CSS URLs; loading them contacts the hosts named by that document.

The short version: we, the extension developer, do not receive your documents, general browser history or extension storage. There is no account, extension telemetry or Markdown Viewer backend. The extension still handles the open document, its URL and locally stored preferences on your device so it can provide the features described below. This public website separately uses region-aware Google Analytics controls described in section 6.

2. What we collect

CategoryCollected by the developerNotes
Extension analytics & telemetryNoThe browser extension contains no analytics or tracking code
Website analyticsRegion-awareConsent is required in the EEA, UK and Switzerland; visitors elsewhere can opt out at any time. Analytics never receives document content or extension storage
Your documentsNoProcessed locally for rendering; optional network features and document-referenced resources are disclosed below
Account dataNoNo accounts exist
Browsing historyNoNo general browsing history is sent to us. The extension stores up to 50 recently opened Markdown document URLs and titles locally for the user-visible Recent documents list
Crash reportsNoBugs reach us only if you email them

The extension is not directed at children. We do not sell user data or receive the locally handled data described on this page. Third parties are contacted only through an optional network feature or when an opened document explicitly references an external resource, as described in section 4.

3. Data stored on your device

The extension stores the following on your device only, using the browser's standard extension storage:

WhatWhereWhy
Settings (theme, fonts, layout, plugin toggles, shortcuts)chrome.storage.syncSo preferences persist. If you're signed into your browser, the browser itself may sync this between your own devices, and that sync is operated by your browser vendor, not us.
Annotations (highlights, underlines, comments)chrome.storage.localSo annotations reappear when you reopen the same document
Reading positions & saved searcheschrome.storage.localSo documents can resume where you stopped and saved search definitions can be reused
Folder access handles & recent documentsIndexedDB (local)So the folder sidebar and the user-cleared, 50-item Recent list survive a reload; never synced
Rendered diagram cacheIndexedDB (local)So unchanged Mermaid, Graphviz, PlantUML and Vega-Lite diagrams can reopen faster; entries remain local
Custom background imageIndexedDB (local)If chosen, the image is resized and compressed on your device, stored only in the extension's local database, and never synced or uploaded by us
Per-site notice dismissalschrome.storage.localSo dismissed banners stay dismissed

We have no way to read any of this unless you deliberately include it in a support message. The popup's Recent documents section has its own Clear action. Saved searches and annotations can be deleted where they are shown, reading positions have a dedicated Clear action in Settings, and a custom background can be removed in Appearance. Settings → Maintenance → Clear cache removes only disposable folder indexes and rendered diagram cache while keeping folder permissions, annotations, reading positions and custom backgrounds. Reset to defaults resets preferences and removes the selected custom background. Uninstalling the extension removes its remaining browser-managed storage.

4. Network access: optional features and document-referenced resources

Markdown Viewer provides three network-capable features:

  • PlantUML rendering (off by default). If you explicitly enable it and accept the consent prompt, the text of each PlantUML code block is sent to the rendering server you configure (default: the public server at plantuml.com, over HTTPS) and an image is returned. That third-party server sees the diagram source you chose to render, nothing else. Keep the feature off, or point it at your own server, if your diagrams are sensitive.
  • Link previews (off by default). If you explicitly enable them and accept the consent prompt, hovering an external link fetches that page once (without cookies or credentials) to show its title, description and icon. Results are cached in memory and discarded when the tab closes.
  • Remote document auto-refresh (off by default). If you enable it, the extension periodically re-fetches the document already open in your tab (or re-reads the local file) to detect changes. It contacts no other host.

Document-referenced external resources. Markdown or embedded HTML can point to remote images, CSS URLs or other media. When the document is rendered, the browser may request those resources from the hosts named in the document. Those hosts may receive the requested URL, your IP address, standard request metadata and any cookies the browser sends under its own settings. Remove external references or work offline if you do not want those requests.

Outside the three features above and resources explicitly referenced by the document you opened, the extension never "phones home": updates are delivered by your browser's own store mechanism.

5. Permissions, in plain words

  • Storage: save your settings and annotations, as described above.
  • Read data on websites: Markdown files can live anywhere (raw git hosts, wikis, cloud buckets), so the browser grants access broadly; the extension activates only on URLs or responses it can positively identify as Markdown/plain-text documents, and exits immediately on every other page without reading its content.
  • webRequest / declarativeNetRequest: used to recognize Markdown served with a text/markdown content type and to make the browser display (rather than download) such files. Observe-only; no request is blocked or altered beyond that one content-type correction.
  • Access to file URLs: optional and off by default; enable it in the browser's extension settings so local .md files render.

Markdown Viewer's use and transfer of information received from browser extension APIs complies with the applicable store policies, including the Chrome Web Store User Data Policy (including its Limited Use requirements) and the Microsoft Edge Add-ons Developer Policies.

6. Optional website analytics

This section applies only to markdownviewerextension.com, not to the browser extension. A same-origin Cloudflare Pages Function uses Cloudflare's request metadata to decide whether a visitor is in the European Economic Area, United Kingdom or Switzerland. It returns only a requiresConsent boolean to the page; our application does not store or return the country code or IP address. If the region cannot be determined, the site requires consent by default.

For visitors in those regions, Google Analytics is disabled and its script is not downloaded until they choose Allow analytics. Elsewhere, Analytics starts automatically unless the visitor has previously opted out. Any choice—granted or denied—is stored in the browser's local storage under mdv.analytics-consent.v1.

The website also stores your System, Light or Dark appearance choice locally under mdv.site-theme.v1. That preference stays in your browser and is not sent to us or to Google Analytics.

When enabled, the site loads Google Analytics 4 with measurement ID G-GQBH7VHVD6. Google may then receive the page URL and title, referring page, visit time, browser and device characteristics, language, screen size, an approximate location derived from the network connection, and a first-party client identifier. Google Analytics may set cookies named _ga and _ga_* to distinguish visits. We do not send document contents, extension data, account identifiers or custom user IDs.

Advertising storage, advertising user data and ad personalization remain denied. Google signals and ad-personalization signals are disabled. We use the resulting aggregate reports only to understand website traffic and improve these public pages; we do not sell the data or use it for advertising.

Visitors who see the regional prompt can decline there. Everyone can reopen Analytics preferences in the footer at any time. Opting out disables analytics, removes the site's Google Analytics cookies where the browser permits, and reloads the page without the Google tag. See Google's Privacy Policy for Google's own processing terms.

7. Changes

If a future version changes any of the above (for example, a new consent-gated network feature), this page will be updated before that version ships, with the "last updated" date revised. Material changes are also called out in the extension's built-in What's New notes.

8. Contact

Questions about privacy: support@markdownviewerextension.com · Support page