Chrome Extension Manifest Generator
Build a complete, valid manifest.json for Chrome/Edge extensions (Manifest V3 or V2) with a searchable permission picker, a live install-warning preview that mirrors Chrome's consent dialog, validation, and a one-click runnable starter-project ZIP.
About this ToolHow it works, benefits & use casesTap to collapse
Hand-writing a manifest.json means memorising which keys belong to Manifest V3, which permissions trip Chrome's install dialog, and which fields the Web Store silently truncates. This generator turns all of that into a form. Toggle features — toolbar popup, background service worker, side panel, DevTools page, new-tab override, options page, omnibox keyword — and the manifest rebuilds live in the output panel. A searchable permission picker groups every Chrome permission by area, color-codes each by risk, and feeds an install-warning preview that reproduces the exact consent dialog users see: host patterns collapse to "Read and change your data on…", broad access becomes "…on all websites", and overlapping warnings are deduped like the real thing. Inline validation flags Web-Store blockers and best-practice issues, and when the manifest is clean you can download a runnable unpacked extension — manifest plus stub popup, service worker, content scripts, options, and icon notes — as a ZIP.
How to Use
- 1Pick Manifest V3 (the current standard) or V2, or click a starter template such as Popup action, Content script, Side panel, New tab page, DevTools panel, or Context menu.
- 2Fill in Basics (name, version, description) and flip on the Features you need — the manifest.json panel updates as you type.
- 3Search and toggle permissions in the picker, then list host match patterns one per line; watch the Install permission preview show exactly what Chrome will warn users about.
- 4Add content scripts, keyboard shortcuts, and web-accessible resources with the Add buttons, and open Advanced & metadata for short name, CSP, incognito mode, and cross-browser notes.
- 5Check the Validation card — fix any red errors, review amber warnings — then copy the JSON or click "Download starter project" to get a runnable ZIP.
Key Benefits
- Live manifest.json output that rebuilds as you toggle features and permissions
- Install-warning preview mirrors Chrome's real consent dialog, including host-pattern phrasing and warning dedupe
- Searchable, risk-color-coded permission catalog grouped by area (tabs, storage, network, browser data, identity, and more)
- Validation that catches Web-Store blockers like missing version and invalid V3 permissions, plus best-practice warnings
- Switches every key correctly between Manifest V3 and V2 (action vs browser_action, service_worker vs background scripts, host folding)
- One-click ZIP of a runnable unpacked extension with stub popup, background, content script, options, and DevTools files
- Cross-browser notes for Firefox and Edge, plus a shareable URL that captures the whole manifest
Common Use Cases
- Bootstrapping a new Chrome or Edge extension without copying boilerplate from old projects
- Auditing how scary your permission set looks before publishing — tuning permissions until the install dialog reads cleanly
- Migrating a Manifest V2 extension to V3 and seeing which keys change
- Generating a loadable scaffold to test an idea in chrome://extensions in seconds
- Teaching how Chrome permissions map to user-facing consent warnings
- Producing a correct AppIcon-ready manifest skeleton to hand to a teammate via a single link
Copy, download, share, or pipe to another tool
{
"manifest_version": 3,
"name": "Popup Extension",
"version": "1.0.0",
"description": "A Chrome extension built with consolelog.tools",
"icons": {
"16": "icons/icon16.png",
"32": "icons/icon32.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
},
"action": {
"default_popup": "popup.html",
"default_title": "Open popup",
"default_icon": {
"16": "icons/icon16.png",
"32": "icons/icon32.png",
"48": "icons/icon48.png",
"128": "icons/icon128.png"
}
},
"permissions": [
"storage",
"activeTab"
]
}Install permission preview
No warning prompt. Chrome installs this extension without a permission dialog.
Validation — all clear
This manifest passes every check — ready to load and publish.
Manifest version
Start from a template
Basics
46/132 chars shown in the store
Features
Permissions (2)
Tabs & windows
Storage & state
User interface
Scripting & content
Network
Browser data
Device & system
Identity & power
One match pattern per line. Drives the install-warning preview.
Content scripts (0)
No content scripts. Add one to inject JS/CSS into matching pages.
Keyboard shortcuts (0)
No commands. Add a shortcut to trigger the action or a custom event.
Web-accessible resources (0)
No web-accessible resources. Add files that pages are allowed to load.
Advanced & metadata
Cross-browser (Firefox / Edge)
- Add `browser_specific_settings: { "gecko": { "id": "[email protected]" } }` so Firefox/AMO can identify the add-on.
- Edge runs Chromium manifests unchanged; publish the same package to the Edge Add-ons store.
See the consent dialog before your users do
Every permission you add is mapped to the exact warning Chrome shows at install time — host patterns become “Read and change your data on…”, broad access collapses to “…on all websites”, and overlapping warnings are deduped just like the real dialog. Tune permissions until the preview reads how you want, validate against the store rules, then download a runnable unpacked extension you can load straight into chrome://extensions.
Was this tool helpful?
Share Your Experience
Help others discover this tool!
Related guide
Related tools
- PWA Manifest GeneratorBuild an installable web app manifest with a live installability audit, maskable icons, shortcuts, and iOS head tags
- JSON FormatterFormat and validate JSON with syntax highlighting
- Changelog GeneratorGenerate changelog from Git commit history
- Component Name GeneratorTurn a description into ranked, kind-aware component names with a file scaffold and a name validator (casing, collisions, clarity)
- Heroku Procfile GeneratorBuild a Heroku Procfile and matching app.json — process types, env vars, addons, dyno formation — plus a Procfile parser and audit
- Markdown TOC GeneratorGenerate table of contents for Markdown
It is the single required file at the root of every Chrome extension: a JSON document that tells the browser what the extension is called, what version it is, and what it is allowed to do. Chrome reads it at install time to build the permission consent dialog, wire up your popup, background service worker, and content scripts, and decide which APIs your code may call. If manifest.json is missing or malformed, the extension will not load at all — chrome://extensions reports the parse error and stops.
Only three fields are strictly required: {"manifest_version": 3, "name": "My Extension", "version": "1.0"}. That already loads in chrome://extensions. In practice you also want description and icons (the Web Store listing uses both), and then one key per capability — action for a toolbar popup, background.service_worker for event handling, content_scripts to inject code into pages, and permissions/host_permissions for API and site access. This generator starts from that minimal core and only adds keys for features you actually toggle on.

