Clearly Reader - Your reader mode solution

Clearly Reader - Your reader mode solution

A browser extension with reader mode for optimal experience. Features copy, translate, speech, and PDF and Markdown export.

Merlin
Additional files are visible only to premium users

manifest.json


{
  "update_url": "https://clients2.google.com/service/update2/crx",
  "manifest_version": 3,
  "name": "__MSG_pkgName__",
  "version": "3.0.4",
  "description": "__MSG_pkgDescription__",
  "default_locale": "en",
  "commands": {
    "_execute_action": {
      "suggested_key": {
        "mac": "Alt+R",
        "windows": "Alt+R",
        "chromeos": "Alt+R",
        "linux": "Alt+R"
      }
    }
  },
  "action": {
    "default_title": "Active Clearly (Alt/Option+R)",
    "default_icon": {
      "16": "assets/icons/disable/ic_16.png",
      "32": "assets/icons/disable/ic_32.png",
      "48": "assets/icons/disable/ic_48.png",
      "128": "assets/icons/disable/ic_128.png"
    }
  },
  "background": {
    "service_worker": "background.js",
    "type": "module"
  },
  "icons": {
    "16": "assets/icons/readable/ic_16.png",
    "32": "assets/icons/readable/ic_32.png",
    "48": "assets/icons/readable/ic_48.png",
    "128": "assets/icons/readable/ic_128.png"
  },
  "content_security_policy": {
    "extension_pages": "script-src 'self' http://localhost:5200 http://localhost:4000; object-src 'self'; connect-src *; style-src * 'unsafe-inline' 'self' blob:; font-src *; img-src * data: blob:; frame-src *; media-src *; child-src *; manifest-src *; frame-ancestors *;"
  },
  "content_scripts": [
    {
      "all_frames": false,
      "js": [
        "content-script/import-index.js"
      ],
      "matches": [
        "*://*/*"
      ],
      "exclude_matches": [
        "*://app.clearlyreader.com/*",
        "*://localhost:*/*"
      ],
      "run_at": "document_idle"
    }
  ],
  "host_permissions": [
    "*://*/*"
  ],
  "permissions": [
    "contextMenus",
    "storage",
    "activeTab",
    "tts",
    "fontSettings"
  ],
  "offline_enabled": true,
  "web_accessible_resources": [
    {
      "resources": [
        "assets/*.*",
        "assets/**/*.*",
        "pages/**/*.*",
        "content-script/index.js"
      ],
      "matches": [
        "*://*/*"
      ]
    },
    {
      "resources": [
        "chunks/*-*.js",
        "content-script/index.js"
      ],
      "matches": [
        "*://*/*"
      ]
    }
  ]
}