30 Claude Prompts That Build Chrome Extensions
Describe the extension you want and Claude returns the full file set as artifacts: Manifest V3, popup HTML and JS, content scripts, and background service workers ready to load unpacked. Prompts for tab managers, page summarizers, blockers, note-takers, color pickers, and price trackers. Not "give me some code."
In short: This page contains 30 copy-paste ready prompts, organized into 6 categories with a description and pro tip for each. The first 15 prompts are free instantly โ no signup needed. Hand-curated and tested by the AI Academy team.
Productivity & Tab Tools
5 promptsOne-Click Tab Manager
1/30You are a senior Chrome extension engineer who ships clean Manifest V3 extensions. <context> I want a tab manager extension. Build the complete file set so I can paste each file, load the folder unpacked, and use it immediately. Each file is a self-contained artifact. </context> <inputs> - Extension name: [NAME] - Core actions I want: [E.G. LIST ALL TABS, SEARCH, CLOSE DUPLICATES, GROUP BY DOMAIN] - Default behavior on open: [E.G. SHOW CURRENT WINDOW TABS] - Visual style: [E.G. CLEAN LIGHT, COMPACT DARK] </inputs> <task> Build a Manifest V3 extension with: manifest.json (correct permissions for tabs), popup.html (a searchable list of open tabs with title and favicon), popup.js (uses chrome.tabs.query to list tabs, click to switch, close button per tab, a "close duplicates" action, and a live search filter), and popup.css. Wire every button to a real chrome.tabs call. </task> <constraints> - Manifest V3 only; request the minimum permissions and explain each one. - No external libraries; vanilla JS; works offline. - Handle empty states and errors gracefully; accessible buttons with labels. </constraints> <format> Return each file (manifest.json, popup.html, popup.js, popup.css) as a separate clearly-labeled artifact, then give 4 numbered steps to load it unpacked at chrome://extensions. </format>
Builds a complete Manifest V3 tab manager extension with search, switch, and close-duplicates as copy-paste artifacts ready to load unpacked.
Pro tip: Tell Claude exactly which tab actions you use daily; it will drop the rest and keep the popup fast and uncluttered.
Session Saver & Restore
2/30You are a Chrome extension engineer specializing in storage and session workflows. <context> I want an extension that saves all my open tabs as a named session and restores them later. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - What to save per session: [E.G. URLS AND TITLES OF CURRENT WINDOW] - Restore behavior: [E.G. OPEN IN A NEW WINDOW] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (tabs and storage permissions), popup.html (a "save current session" button with a name field and a list of saved sessions), popup.js (saves tab URLs to chrome.storage.local, lists sessions with restore and delete buttons, restores by opening the saved URLs), and popup.css. Persist sessions across browser restarts. </task> <constraints> - Manifest V3, chrome.storage.local for persistence; no servers, no external libraries. - Confirm before deleting a session; handle the no-sessions empty state. - Accessible labels and keyboard-usable buttons. </constraints> <format> Return each file as a separate labeled artifact, then explain the storage schema and how to add tab-count badges to each saved session. </format>
Produces a session saver extension that stores and restores named groups of tabs via chrome.storage as load-unpacked artifacts.
Pro tip: Ask Claude to add an auto-save-on-close session so you never lose a research window again.
Focus / Site Blocker
3/30You are a Chrome extension engineer who builds reliable site-blocking tools. <context> I want a productivity blocker that stops me visiting distracting sites during focus time. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Sites to block by default: [E.G. SOCIAL, NEWS DOMAINS] - Block mode: [E.G. ALWAYS ON / TIMED FOCUS SESSION] - Blocked-page message: [WHAT IT SHOULD SAY] </inputs> <task> Build a Manifest V3 extension with manifest.json (declarativeNetRequest plus storage), a rules approach or a content/background script that redirects blocked domains to a custom blocked.html page, a popup.html and popup.js to add or remove blocked sites and start a timed focus session, popup.css, and a styled blocked.html that shows the focus message and time remaining. </task> <constraints> - Manifest V3; prefer declarativeNetRequest for blocking and explain the rule format. - Editable blocklist stored in chrome.storage; timed mode auto-unblocks when time is up. - No external dependencies; clear, motivating blocked-page copy I can edit. </constraints> <format> Return each file as a separate labeled artifact, then explain how the blocking rules work and how to whitelist a single page within a blocked domain. </format>
Builds a focus site blocker with an editable blocklist, timed sessions, and a custom blocked page as load-unpacked artifacts.
Pro tip: Have Claude make the blocked-page message rotate through a few of your own reminders so the nudge stays effective.
Pomodoro Timer in the Toolbar
4/30You are a Chrome extension engineer who builds focused single-purpose tools. <context> I want a Pomodoro timer that lives in the toolbar and runs even when the popup is closed. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Work and break lengths: [E.G. 25 MIN WORK, 5 MIN BREAK] - On session end: [E.G. NOTIFICATION, COLOR CHANGE] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (alarms, notifications, storage), a background service worker that runs the timer using chrome.alarms and updates the toolbar badge text with minutes left, popup.html and popup.js to start, pause, reset, and switch between work and break, and popup.css. Fire a notification at the end of each interval. </task> <constraints> - Manifest V3 with a background service worker; timer survives the popup closing. - Use chrome.alarms (not setInterval) so it persists; badge shows live countdown. - No external libraries; settings saved in chrome.storage. </constraints> <format> Return each file as a separate labeled artifact, then explain why chrome.alarms is used over setInterval and how to add a daily completed-pomodoros counter. </format>
Creates a Pomodoro timer extension that counts down in the toolbar badge via a background service worker as load-unpacked artifacts.
Pro tip: Ask Claude to log each completed pomodoro to storage so you can later show a simple focus-streak stat in the popup.
Quick Bookmark Organizer
5/30You are a Chrome extension engineer who works with the bookmarks API. <context> I want a popup that lets me bookmark the current page into a chosen folder with one click and search my existing bookmarks. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Save flow I want: [E.G. PICK FOLDER + OPTIONAL TAG IN TITLE] - Search scope: [E.G. ALL BOOKMARKS BY TITLE AND URL] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (bookmarks and tabs permissions), popup.html (current page title and URL, a folder dropdown, a save button, and a live bookmark search box with results), popup.js (reads the active tab, lists bookmark folders via chrome.bookmarks, saves to the chosen folder, and filters bookmarks as I type), and popup.css. </task> <constraints> - Manifest V3; use chrome.bookmarks for folders, create, and search. - Show a brief success confirmation after saving; handle no-results in search. - No external libraries; accessible form controls with labels. </constraints> <format> Return each file as a separate labeled artifact, then explain the bookmark tree structure and how to add a "create new folder" option to the dropdown. </format>
Builds a bookmark organizer popup that saves the current page to a chosen folder and searches all bookmarks as load-unpacked artifacts.
Pro tip: Tell Claude how you mentally sort bookmarks; it can pre-select your most-used folder so saving is truly one click.
XML tags are just the start. Learn the full Claude workflow.
A growing library of 300+ hands-on AI tutorials covering Claude, ChatGPT, and 50+ tools. New tutorials added every week.
Reading & Content Tools
5 promptsPage Summarizer Popup
6/30You are a Chrome extension engineer who builds content-extraction tools. <context> I want an extension that extracts the main article text from the current page so I can read or copy a clean version. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - What to extract: [E.G. ARTICLE TITLE, AUTHOR, BODY TEXT, READING TIME] - Output actions: [E.G. SHOW IN POPUP, COPY TO CLIPBOARD] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab and scripting permissions), a content extraction step using chrome.scripting.executeScript that grabs the largest article-like text block plus heading and estimated reading time, popup.html that shows the cleaned text and a word count, popup.js that triggers extraction and a copy-to-clipboard button, and popup.css with a comfortable reading layout. </task> <constraints> - Manifest V3; inject via chrome.scripting on demand, not a persistent content script. - Strip nav, ads, and footers heuristically; show a fallback message if no article is found. - No external libraries; readable typography and a clear copy confirmation. </constraints> <format> Return each file as a separate labeled artifact, then explain the text-extraction heuristic and where I would plug in an AI summarization API call. </format>
Builds a page summarizer extension that extracts clean article text, word count, and reading time into the popup as load-unpacked artifacts.
Pro tip: Ask Claude to add a placeholder fetch to an LLM endpoint so you can later turn the cleaned text into a true summary.
Inline Dictionary Lookup
7/30You are a Chrome extension engineer who builds in-page helper tools. <context> I want to select any word on a page and instantly see its definition in a small tooltip. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Trigger: [E.G. SELECT TEXT THEN CLICK A SMALL ICON] - Definition source: [E.G. FREE DICTIONARY API ENDPOINT] - Tooltip style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab plus host permission for the dictionary API), a content script that detects a text selection, shows a floating lookup icon near it, fetches the definition on click, and renders a clean tooltip with the word, part of speech, and definition, plus a styles file injected by the content script. Dismiss the tooltip on outside click or Escape. </task> <constraints> - Manifest V3; content script injected on matching pages; minimal host permissions. - Position the tooltip so it never goes off-screen; handle no-definition-found. - No external libraries; keyboard-dismissible and accessible. </constraints> <format> Return each file as a separate labeled artifact, then explain how the tooltip is positioned and how to swap in a different dictionary API. </format>
Creates a dictionary lookup extension that shows definitions in a floating tooltip on text selection as load-unpacked artifacts.
Pro tip: Give Claude the exact dictionary API response shape so the parsing maps cleanly to the tooltip fields.
Reader-Mode Dark Toggle
8/30You are a Chrome extension engineer focused on readability and accessibility. <context> I want a one-click toggle that strips clutter from any article and switches it to a comfortable dark reading mode. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Reader styles: [E.G. FONT SIZE, MAX WIDTH, BACKGROUND COLOR] - Toggle trigger: [E.G. TOOLBAR CLICK / KEYBOARD SHORTCUT] - Default theme: [DARK / SEPIA] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, and a commands keyboard shortcut), a content script or injected script that hides non-article elements and applies a centered, readable, dark reader layout, a way to toggle it back off, and a reader styles file. Wire the toolbar action and the keyboard shortcut to the same toggle. </task> <constraints> - Manifest V3; inject styles on demand and cleanly remove them when toggled off. - Preserve links and images; remember the on/off state per tab. - No external libraries; respect prefers-reduced-motion and good contrast. </constraints> <format> Return each file as a separate labeled artifact, then explain how the toggle restores the original page and how to add a font-size stepper to the reader. </format>
Builds a reader-mode extension that declutters articles into a comfortable dark layout via a toolbar or shortcut toggle as load-unpacked artifacts.
Pro tip: Ask Claude to expose font and width controls in a tiny floating bar so you can tune the reader without leaving the page.
Highlight & Annotate Tool
9/30You are a Chrome extension engineer who builds annotation tools. <context> I want to highlight text on any page and have my highlights persist when I come back. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Highlight colors: [E.G. YELLOW, GREEN, PINK] - Persistence: [E.G. PER URL VIA STORAGE] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage), a content script that wraps selected text in a colored highlight on a small floating toolbar choice, saves highlights keyed by page URL to chrome.storage.local, and re-applies saved highlights when the page loads, plus a styles file. Add a clear-all-highlights action. </task> <constraints> - Manifest V3; re-apply highlights using stored text and offsets, with a graceful skip if not found. - Persist per URL; support removing a single highlight by clicking it. - No external libraries; accessible color buttons with labels. </constraints> <format> Return each file as a separate labeled artifact, then explain the highlight serialization approach and how to export all highlights for a page as Markdown. </format>
Produces a highlighter extension that colors and persists annotations per page via storage as load-unpacked artifacts.
Pro tip: Have Claude add a Markdown export so a page's highlights become instant notes you can paste anywhere.
Quick Note-Taker Sidebar
10/30You are a Chrome extension engineer who builds note-taking tools. <context> I want a popup notepad that saves a separate note for each website I visit. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Note scope: [E.G. PER DOMAIN / PER URL] - Extras: [E.G. AUTOSAVE, WORD COUNT, COPY ALL] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (tabs and storage permissions), popup.html (a textarea showing the note for the current site, an autosave indicator, a word count, and a copy button), popup.js (reads the active tab domain, loads and autosaves the matching note in chrome.storage.local as I type, and copies the note), and popup.css with a clean writing layout. </task> <constraints> - Manifest V3; autosave with a small debounce; one note per domain or URL as chosen. - Notes persist across restarts; show a subtle saved confirmation. - No external libraries; accessible textarea label and copy feedback. </constraints> <format> Return each file as a separate labeled artifact, then explain the per-site storage keying and how to add a list of all sites that have notes. </format>
Builds a per-site note-taker extension with autosave, word count, and copy via chrome.storage as load-unpacked artifacts.
Pro tip: Ask Claude for an all-notes index view so you can jump back to any site where you left yourself a note.
Page Customizer Tools
5 promptsUniversal Dark-Mode Toggle
11/30You are a Chrome extension engineer who builds page-styling tools. <context> I want a toggle that forces a dark theme on any website that does not have one. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Dark intensity: [E.G. SOFT GREY / TRUE BLACK] - Per-site memory: [E.G. REMEMBER ON/OFF PER DOMAIN] - Exclusions: [SITES TO NEVER DARKEN] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage), a content script that injects a CSS filter or stylesheet to invert and color-correct the page into dark mode while keeping images and videos normal, a popup.html and popup.js to toggle dark mode and manage the per-site preference and exclusion list, and popup.css. Remember each domain's state. </task> <constraints> - Manifest V3; apply and cleanly remove the dark styles on toggle. - Avoid inverting media (images, videos, canvases); persist per-domain choice. - No external libraries; readable popup controls with labels. </constraints> <format> Return each file as a separate labeled artifact, then explain the inversion technique and how to add a brightness slider to the popup. </format>
Builds a universal dark-mode extension that forces a dark theme on any site with per-domain memory as load-unpacked artifacts.
Pro tip: Tell Claude which sites already have great dark modes so it auto-skips them and never double-darkens.
Element Hider / Ad Cleaner
12/30You are a Chrome extension engineer who builds page-cleanup tools. <context> I want to click any cluttered element on a page and hide it permanently for that site. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Targets I usually hide: [E.G. STICKY BANNERS, SIDEBARS, COOKIE BARS] - Scope: [E.G. PER DOMAIN] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage), a content script that enters a pick mode where hovering highlights an element and clicking hides it, saves a CSS selector for the hidden element per domain to chrome.storage, and re-hides matching elements on future visits, plus a popup.html and popup.js to enter pick mode, list hidden elements, and unhide them, and popup.css. </task> <constraints> - Manifest V3; generate a stable selector for the clicked element; re-apply on load. - Per-domain rules; provide undo for the last hide and a clear-all option. - No external libraries; visible hover outline and an exit-pick-mode key. </constraints> <format> Return each file as a separate labeled artifact, then explain how selectors are generated and how to share a site's hide rules with someone else. </format>
Creates an element hider extension with click-to-hide pick mode and persistent per-site rules as load-unpacked artifacts.
Pro tip: Have Claude make pick mode show the selector it will save so you can confirm it targets only the clutter, not the content.
Color Picker / Eyedropper
13/30You are a Chrome extension engineer who builds tools for designers. <context> I want to pick any color from a page and copy its hex, RGB, and HSL values. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Pick method: [E.G. EYEDROPPER API / CLICK ANY PIXEL] - Formats to show: [HEX, RGB, HSL] - History: [E.G. LAST 8 PICKED COLORS] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab plus any needed permission), popup.html with a "pick color" button, a swatch preview, the hex, RGB, and HSL values each with a copy button, and a recent-colors history row, popup.js that uses the EyeDropper API when available with a graceful fallback message, converts between formats, copies values, and stores history in chrome.storage, and popup.css. </task> <constraints> - Manifest V3; use the native EyeDropper API where supported and degrade gracefully. - Accurate hex/RGB/HSL conversion; one-click copy with confirmation per format. - No external libraries; accessible color swatches and copy buttons. </constraints> <format> Return each file as a separate labeled artifact, then explain the color conversions and how to add a contrast-ratio check between two picked colors. </format>
Builds a color picker extension with the EyeDropper API, hex/RGB/HSL output, and a recent-colors history as load-unpacked artifacts.
Pro tip: Ask Claude to add a WCAG contrast check so picking two colors instantly tells you if the pair is accessible.
Font & Readability Tweaker
14/30You are a Chrome extension engineer who builds accessibility and reading tools. <context> I want a popup that overrides any page's font, size, line spacing, and width for easier reading. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Controls I want: [E.G. FONT FAMILY, SIZE, LINE HEIGHT, MAX WIDTH] - Presets: [E.G. DYSLEXIA-FRIENDLY, LARGE PRINT] - Scope: [E.G. CURRENT TAB OR PER DOMAIN] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage), a popup.html with sliders and dropdowns for font family, size, line height, and content width plus preset buttons, popup.js that injects CSS via chrome.scripting to apply the chosen typography live and saves the settings per domain, a reset button, and popup.css. </task> <constraints> - Manifest V3; apply styles live as controls change; persist per domain. - Include at least one readable preset and a clean reset to default. - No external libraries; labeled sliders and accessible controls. </constraints> <format> Return each file as a separate labeled artifact, then explain how settings are injected and how to add a global-default option that applies everywhere. </format>
Builds a readability tweaker extension that overrides page font, size, spacing, and width with savable presets as load-unpacked artifacts.
Pro tip: Give Claude your ideal reading setup as the default preset so every page snaps to your comfort with one click.
Find-and-Replace on Page
15/30You are a Chrome extension engineer who builds page-editing utilities. <context> I want to replace all instances of a word or phrase on the current page with another, useful for proofreading and demos. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Match options: [E.G. CASE-SENSITIVE, WHOLE WORD, REGEX] - Scope: [E.G. VISIBLE TEXT ONLY] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting), popup.html with a find field, a replace field, match-option checkboxes, a replace-all button, and a match count, popup.js that injects a script walking the page text nodes to count and replace matches without breaking the DOM, and popup.css. Show how many replacements were made. </task> <constraints> - Manifest V3; operate on text nodes only so scripts and tags stay intact. - Support case-sensitive and whole-word options; report the replacement count. - No external libraries; accessible inputs with labels and a clear result message. </constraints> <format> Return each file as a separate labeled artifact, then explain the text-node walking approach and how to add an undo that restores the original text. </format>
Creates a find-and-replace extension that swaps text across the page's text nodes with a live match count as load-unpacked artifacts.
Pro tip: Ask Claude to add a regex toggle so you can do bulk fixes like date or name reformatting in one pass.
Capture & Clipboard Tools
5 promptsVisible-Area Screenshot Tool
16/30You are a Chrome extension engineer who builds capture tools. <context> I want a one-click screenshot extension that captures the visible tab and lets me download it. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Capture type: [E.G. VISIBLE AREA / FULL PAGE] - File format: [PNG / JPEG] - Filename pattern: [E.G. SITE-DATE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab plus needed permissions), a background service worker or popup that uses chrome.tabs.captureVisibleTab to grab the screenshot, a popup.html that previews the capture with download and copy-to-clipboard buttons, popup.js wiring capture, preview, download with a smart filename, and clipboard copy, and popup.css. </task> <constraints> - Manifest V3; use chrome.tabs.captureVisibleTab; explain the permission needed. - Generate a sensible filename from the site and date; support PNG and JPEG. - No external libraries; preview is keyboard-dismissible and buttons are labeled. </constraints> <format> Return each file as a separate labeled artifact, then explain the capture flow and outline how full-page scroll-and-stitch capture would work. </format>
Builds a screenshot extension that captures the visible tab and offers download or clipboard copy as load-unpacked artifacts.
Pro tip: Tell Claude your preferred filename format so screenshots land sorted and named the way you actually file them.
Copy Page Links / Markdown
17/30You are a Chrome extension engineer who builds clipboard utilities. <context> I want to copy the current page as a Markdown link, or copy all links on the page as a clean list. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Copy formats: [E.G. MARKDOWN LINK, PLAIN URL, TITLE + URL] - Link list options: [E.G. UNIQUE ONLY, SAME-DOMAIN ONLY] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting), popup.html with buttons to copy the current page as a Markdown link, copy as title plus URL, and copy all page links as a Markdown list, popup.js that reads the active tab, injects a script to collect anchors, formats each requested output, and copies to the clipboard with a confirmation, and popup.css. </task> <constraints> - Manifest V3; clean and deduplicate links; skip empty or javascript: anchors. - Each copy action confirms success; offer unique-only and same-domain filters. - No external libraries; accessible buttons with clear labels. </constraints> <format> Return each file as a separate labeled artifact, then explain the link-collection logic and how to add a copy-as-CSV option. </format>
Produces a clipboard extension that copies the page as a Markdown link or exports all page links as a clean list as load-unpacked artifacts.
Pro tip: Have Claude add a same-domain filter so you can grab a site's internal links for a sitemap in one click.
QR Code for Current Page
18/30You are a Chrome extension engineer who builds small sharing utilities. <context> I want a popup that instantly turns the current page URL into a scannable QR code I can download. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - QR size and quiet zone: [DESCRIBE] - Extras: [E.G. CUSTOM TEXT INPUT, DOWNLOAD AS PNG] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab), popup.html that shows a QR code of the active tab URL plus an input to encode custom text instead, popup.js that reads the active tab and renders the QR code to a canvas using a small self-contained QR generation routine you include inline, with a download-as-PNG button, and popup.css. </task> <constraints> - Manifest V3; include the QR generation code inline so there is no external dependency. - Render to a canvas; export as a downloadable PNG; keep a clear quiet zone. - Accessible input and buttons; works fully offline. </constraints> <format> Return each file as a separate labeled artifact, then explain how the QR is generated and how to add error-correction-level selection. </format>
Builds a QR-code extension that encodes the current page URL or custom text to a downloadable PNG, fully offline, as load-unpacked artifacts.
Pro tip: Ask Claude to keep the QR generation routine inline and dependency-free so the extension passes review and works without a network.
Email & Phone Scraper
19/30You are a Chrome extension engineer who builds data-collection utilities for personal research. <context> I want to extract all visible email addresses and phone numbers from the current page into a copyable list. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - What to extract: [EMAILS, PHONE NUMBERS, OR BOTH] - Output: [E.G. DEDUPED LIST, COPY ALL, EXPORT CSV] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting), popup.html with a scan button, a deduped results list split into emails and phones with counts, and copy-all and export-CSV buttons, popup.js that injects a script to match emails and phone patterns in the page text, dedupes results, returns them to the popup, and handles copy and CSV export, and popup.css. </task> <constraints> - Manifest V3; match only visible page text; dedupe and count results. - Robust email and phone regexes with a clear empty-results message. - No external libraries; accessible buttons and a labeled results region. </constraints> <format> Return each file as a separate labeled artifact, then explain the matching patterns and how to add a filter that keeps only a chosen domain's emails. </format>
Creates a contact scraper extension that extracts and dedupes visible emails and phone numbers with CSV export as load-unpacked artifacts.
Pro tip: Give Claude an example of the phone format you care about so the regex prioritizes your region instead of over-matching numbers.
Selection-to-Search Right-Click
20/30You are a Chrome extension engineer who builds context-menu tools. <context> I want to right-click selected text and search it on a site I choose. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Search targets: [E.G. GOOGLE, A DOCS SITE, A SHOPPING SITE] - Open behavior: [E.G. NEW TAB / NEW WINDOW] - Manage targets: [E.G. ADD CUSTOM SEARCH URLS] </inputs> <task> Build a Manifest V3 extension with manifest.json (contextMenus, storage), a background service worker that registers a context-menu entry (with submenu items per configured search target) shown only when text is selected and opens the chosen search URL with the selection inserted, plus a popup.html and popup.js to add, edit, and remove search targets stored in chrome.storage, and popup.css. </task> <constraints> - Manifest V3 with a background service worker; rebuild menus when targets change. - URL-encode the selection; each target uses a %s placeholder pattern. - No external libraries; accessible options UI with labels. </constraints> <format> Return each file as a separate labeled artifact, then explain how the context menu is built from stored targets and how to add a default-target keyboard shortcut. </format>
Builds a right-click search extension with configurable context-menu targets that search selected text as load-unpacked artifacts.
Pro tip: Add the niche sites you search most as targets so a quick right-click beats opening a new tab and typing the URL.
Monitoring & Shopping Tools
5 promptsPrice-Drop Tracker
21/30You are a Chrome extension engineer who builds monitoring tools. <context> I want to track a product's price on a page and get notified when it drops. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - How to find the price: [E.G. CLICK THE PRICE ELEMENT TO SELECT IT] - Check frequency: [E.G. EVERY FEW HOURS] - Notify on: [E.G. ANY DROP / BELOW A TARGET] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage, alarms, notifications), a content/inject flow to let me click the price element and store its selector and the product URL, a background service worker that uses chrome.alarms to re-open or fetch the page periodically, parse the current price, compare to the saved one, and fire a notification on a drop, plus a popup.html and popup.js listing tracked products with current price, target, and remove buttons, and popup.css. </task> <constraints> - Manifest V3; persist tracked items and price history in chrome.storage. - Parse prices robustly (currency symbols, commas); handle a missing element. - No external libraries; accessible product list and clear notification copy. </constraints> <format> Return each file as a separate labeled artifact, then explain the price-parsing and scheduling approach and how to show a small price-history sparkline per product. </format>
Builds a price-drop tracker extension that watches a chosen price element and notifies on drops via alarms as load-unpacked artifacts.
Pro tip: Have Claude store a short price history per item so you can confirm a 'sale' is real and not just a reset to normal.
Page-Change Watcher
22/30You are a Chrome extension engineer who builds change-detection tools. <context> I want to monitor a section of a page (like a job board or a stock status) and alert me when it changes. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - What to watch: [E.G. CLICK AN AREA TO SELECT IT] - Check interval: [E.G. EVERY 30 MIN] - Alert style: [E.G. NOTIFICATION + BADGE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage, alarms, notifications), a flow to click and store a selector plus the watched page URL, a background service worker using chrome.alarms to periodically read that element's text, hash and compare it to the stored value, and notify plus badge on a change, and a popup.html and popup.js listing watched items with last-checked time and remove buttons, and popup.css. </task> <constraints> - Manifest V3; store the last-seen content hash per watch in chrome.storage. - Notify only on real change; show last-checked timestamps; handle a removed element. - No external libraries; accessible list and a clear toggle to pause a watch. </constraints> <format> Return each file as a separate labeled artifact, then explain the change-detection hashing and how to add a diff preview of what changed. </format>
Creates a page-change watcher extension that monitors a selected element and alerts on changes via alarms as load-unpacked artifacts.
Pro tip: Tell Claude to watch only the inner text of the element, not its HTML, so cosmetic markup changes don't trigger false alerts.
Coupon Field Helper
23/30You are a Chrome extension engineer who builds checkout helper tools. <context> I want a popup that stores my known coupon codes per store and lets me copy one straight into the checkout field. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Stored per: [E.G. DOMAIN] - Fields per code: [E.G. CODE, NOTE, EXPIRY] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (tabs, storage), popup.html that shows saved coupon codes for the current store with copy buttons, an add-code form (code, note, optional expiry), and a delete action, popup.js that reads the active tab domain, loads and saves codes in chrome.storage.local, copies a code to the clipboard with confirmation, and flags expired codes, and popup.css. </task> <constraints> - Manifest V3; codes grouped by domain; mark expired codes visually. - Copy with a clear confirmation; confirm before deleting a code. - No external libraries; accessible form and list controls. </constraints> <format> Return each file as a separate labeled artifact, then explain the per-store storage model and how to add a one-click auto-fill into a detected coupon input. </format>
Builds a coupon helper extension that stores codes per store and copies them to checkout with expiry flags as load-unpacked artifacts.
Pro tip: Ask Claude to add auto-fill into a detected promo-code field so you skip the copy-paste step entirely.
Word & Reading-Time Counter
24/30You are a Chrome extension engineer who builds writer-focused tools. <context> I want a popup that reports the word count, character count, and estimated reading time of the current page or my selected text. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Count scope: [E.G. WHOLE PAGE OR SELECTION] - Reading speed: [E.G. 200 WPM] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting), popup.html showing word count, character count (with and without spaces), sentence count, and estimated reading time, plus a toggle for whole-page versus current selection, popup.js that injects a script to grab the visible text or the selection and computes the stats, and popup.css. Update instantly when the scope toggle changes. </task> <constraints> - Manifest V3; count visible text or the current selection as chosen. - Configurable reading speed; ignore script and style text in the count. - No external libraries; accessible toggle and a clean stats layout. </constraints> <format> Return each file as a separate labeled artifact, then explain the counting method and how to add a keyword-density mini-report. </format>
Produces a word-count extension reporting words, characters, sentences, and reading time for a page or selection as load-unpacked artifacts.
Pro tip: Set your true reading speed in the inputs so the time estimate matches how you actually read, not a generic average.
Tab Audio Muter & Cleaner
25/30You are a Chrome extension engineer who builds tab-management tools. <context> I want a popup that lists which tabs are playing audio so I can mute or close noisy and idle tabs fast. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Actions I want: [E.G. MUTE/UNMUTE, CLOSE, JUMP TO TAB] - Bulk actions: [E.G. MUTE ALL AUDIBLE, CLOSE INACTIVE] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (tabs permission), popup.html listing audible tabs first with a speaker indicator, plus per-tab mute, unmute, switch, and close buttons and bulk "mute all audible" and "close other tabs" actions, popup.js using chrome.tabs.query and chrome.tabs.update to read audible state and toggle mute, switch, and close, and popup.css. </task> <constraints> - Manifest V3; surface audible tabs clearly; confirm before closing tabs. - Live indicator of muted versus playing state; handle the no-audible-tabs case. - No external libraries; accessible buttons and a scannable tab list. </constraints> <format> Return each file as a separate labeled artifact, then explain the audible-tab detection and how to add an auto-mute-on-open default for new tabs. </format>
Builds a tab audio manager extension that lists, mutes, and closes noisy tabs with bulk actions as load-unpacked artifacts.
Pro tip: Ask Claude to sort audible tabs to the top so silencing the one making noise is always the first thing you see.
Most people use 10% of Claude. Tutorials unlock the rest.
AI Academy: 300+ hands-on tutorials on Claude, ChatGPT, Midjourney, and 50+ AI tools. New tutorials added every week.
New-Tab & Workflow Tools
5 promptsCustom New-Tab Dashboard
26/30You are a Chrome extension engineer who builds new-tab override pages. <context> I want to replace the default new-tab page with my own dashboard of clock, quick links, and a focus note. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Widgets I want: [E.G. CLOCK, GREETING, QUICK LINKS, TODAY'S NOTE] - Quick links: [SITES TO PIN] - Visual style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json that overrides the new-tab page via chrome_url_overrides, a newtab.html with a live clock and greeting, an editable quick-links grid, and a single focus-note field, newtab.js that updates the clock, loads and saves links and the note in chrome.storage, and supports adding and removing links, and newtab.css with a calm, centered layout. </task> <constraints> - Manifest V3; override newtab via chrome_url_overrides; everything persists in chrome.storage. - No external libraries; works fully offline; accessible link editing controls. - Clean, low-distraction layout with good contrast. </constraints> <format> Return each file as a separate labeled artifact, then explain the override setup and how to add a rotating background or daily quote. </format>
Builds a new-tab override extension with a clock, editable quick links, and a focus note as load-unpacked artifacts.
Pro tip: Tell Claude the five sites you open every morning so the quick-links grid is useful from the very first new tab.
Keyboard-Shortcut Launcher
27/30You are a Chrome extension engineer who builds command-palette tools. <context> I want a keyboard-triggered command palette to jump to my saved sites and run quick actions. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Open shortcut: [E.G. CTRL+SHIFT+SPACE] - Commands I want: [E.G. OPEN SAVED SITES, SEARCH A SITE, COPY URL] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (commands shortcut, tabs, scripting, storage), a content script that injects a centered command-palette overlay on the shortcut, with a fuzzy-filtered list of saved commands and sites, keyboard navigation, and Enter to run, plus a popup.html and popup.js to manage the command and site list in chrome.storage, and palette and popup CSS. </task> <constraints> - Manifest V3; open via the commands API; full keyboard navigation and Escape to close. - Fuzzy filter as I type; commands and sites stored in chrome.storage. - No external libraries; accessible overlay with focus trapping. </constraints> <format> Return each file as a separate labeled artifact, then explain the overlay injection and keyboard handling and how to add per-command icons. </format>
Creates a command-palette extension that opens on a shortcut to launch saved sites and actions as load-unpacked artifacts.
Pro tip: Have Claude rank recently used commands to the top so your most common jumps need just the shortcut and Enter.
Auto Form-Filler
28/30You are a Chrome extension engineer who builds form-automation tools. <context> I want to save sets of profile data and fill matching form fields on any page with one click. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Profiles to store: [E.G. PERSONAL, WORK] - Fields per profile: [E.G. NAME, EMAIL, PHONE, ADDRESS] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage), a popup.html to create and edit named profiles of field-value pairs and a fill button, popup.js that saves profiles to chrome.storage and injects a script to match common fields by name, id, autocomplete, and label and fill them from the chosen profile, plus a content fill routine, and popup.css. </task> <constraints> - Manifest V3; match fields heuristically and skip ones it cannot confidently map. - Profiles stored locally; report how many fields were filled. - No external libraries; accessible profile editor and clear fill feedback. </constraints> <format> Return each file as a separate labeled artifact, then explain the field-matching strategy and how to add a pick-this-field-to-map mode for tricky forms. </format>
Builds an auto form-filler extension that stores profiles and maps them to page fields heuristically as load-unpacked artifacts.
Pro tip: Ask Claude for a manual map mode so you can teach it odd field names once and reuse them on that site forever.
Reading-List Saver
29/30You are a Chrome extension engineer who builds save-for-later tools. <context> I want to save the current page to a reading list and mark items read, replacing scattered open tabs. Build the full file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Saved fields: [E.G. TITLE, URL, FAVICON, SAVED DATE] - Organization: [E.G. UNREAD AND READ TABS, SEARCH] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (tabs, storage), popup.html with a "save this page" button and a list of saved items split into unread and read with open, mark-read, and delete actions plus a search box, popup.js that reads the active tab, saves items to chrome.storage.local, toggles read state, opens, deletes, and filters the list, and popup.css with a clean reading-list layout. </task> <constraints> - Manifest V3; persist the list across restarts; dedupe by URL. - Search filters live; show empty states for both unread and read. - No external libraries; accessible list controls and a clear save confirmation. </constraints> <format> Return each file as a separate labeled artifact, then explain the storage model and how to add export of the unread list as Markdown. </format>
Produces a reading-list extension that saves pages, splits unread and read, and searches saved items as load-unpacked artifacts.
Pro tip: Have Claude auto-clear items older than a set number of days so the list stays a queue, not a graveyard.
Quick Currency & Unit Converter
30/30You are a Chrome extension engineer who builds small utility tools. <context> I want a popup that converts currencies and common units fast, and converts a number I have selected on the page. Build the complete file set as self-contained artifacts I can load unpacked. </context> <inputs> - Extension name: [NAME] - Conversions I need: [E.G. CURRENCY, LENGTH, WEIGHT, TEMPERATURE] - Currency rates source: [E.G. STATIC TABLE OR AN API ENDPOINT I PROVIDE] - Style: [DESCRIBE] </inputs> <task> Build a Manifest V3 extension with manifest.json (activeTab, scripting, storage, plus host permission only if an API is used), popup.html with a from-value input, from and to unit dropdowns grouped by type, a live result, and a "convert selection" button, popup.js that performs unit math, handles currency via a static table or a provided endpoint, reads selected page text as the input, and copies the result, and popup.css. </task> <constraints> - Manifest V3; convert instantly as inputs change; currency works offline with a static table fallback. - Parse a selected number from the page; copy the result with confirmation. - No external libraries; accessible dropdowns and inputs with labels. </constraints> <format> Return each file as a separate labeled artifact, then explain the conversion logic and how to wire a live exchange-rate API with caching. </format>
Builds a converter extension for currencies and units that can convert a selected number from the page as load-unpacked artifacts.
Pro tip: Tell Claude the three conversions you do most so those default in the dropdowns and you skip the scrolling.
Frequently Asked Questions
Prompts are the starting line. Tutorials are the finish.
A growing library of 300+ hands-on tutorials on ChatGPT, Claude, Midjourney, and 50+ AI tools. New tutorials added every week.
7-day free trial. Cancel anytime.