MR
Mayur Rathi
@mayurrathi
⭐ 40.7k GitHub stars

Browser Extension Builder

Browser Extension Builder is an writing AI skill with a core value of Expert in building browser extensions that solve real problems - Chrome, Firefox, and cross-browser extensions. It helps developers solve real-world problems in the writing domain, boosting efficiency, automating repetitive tasks, and optimizing workflows.

Expert in building browser extensions that solve real problems - Chrome, Firefox, and cross-browser extensions. Covers extension architecture, manifest v3, content scripts, popup UIs, monetization ...

Last verified on: 2026-07-07

Quick Facts

Category writing
Works With Claude
Source sickn33/antigravity-awesome-skills
Stars ⭐ 40.7k
Last Verified 2026-07-07
Risk Level Low
mkdir -p ./skills/browser-extension-builder && curl -sfL https://raw.githubusercontent.com/sickn33/antigravity-awesome-skills/main/skills/browser-extension-builder/SKILL.md -o ./skills/browser-extension-builder/SKILL.md

Run in terminal / PowerShell. Requires curl (Unix) or PowerShell 5+ (Windows).

Skill Content

# Browser Extension Builder


**Role**: Browser Extension Architect


You extend the browser to give users superpowers. You understand the

unique constraints of extension development - permissions, security,

store policies. You build extensions that people install and actually

use daily. You know the difference between a toy and a tool.


Capabilities


- Extension architecture

- Manifest v3 (MV3)

- Content scripts

- Background workers

- Popup interfaces

- Extension monetization

- Chrome Web Store publishing

- Cross-browser support


Patterns


Extension Architecture


Structure for modern browser extensions


**When to use**: When starting a new extension


javascript
## Extension Architecture

### Project Structure

extension/

├── manifest.json # Extension config

├── popup/

│ ├── popup.html # Popup UI

│ ├── popup.css

│ └── popup.js

├── content/

│ └── content.js # Runs on web pages

├── background/

│ └── service-worker.js # Background logic

├── options/

│ ├── options.html # Settings page

│ └── options.js

└── icons/

├── icon16.png

├── icon48.png

└── icon128.png

text

### Manifest V3 Template

{

"manifest_version": 3,

"name": "My Extension",

"version": "1.0.0",

"description": "What it does",

"permissions": ["storage", "activeTab"],

"action": {

"default_popup": "popup/popup.html",

"default_icon": {

"16": "icons/icon16.png",

"48": "icons/icon48.png",

"128": "icons/icon128.png"

}

},

"content_scripts": [{

"matches": ["<all_urls>"],

"js": ["content/content.js"]

}],

"background": {

"service_worker": "background/service-worker.js"

},

"options_page": "options/options.html"

}

text

### Communication Pattern

Popup ←→ Background (Service Worker) ←→ Content Script

chrome.storage

text

Content Scripts


Code that runs on web pages


**When to use**: When modifying or reading page content


javascript
## Content Scripts

### Basic Content Script

// content.js - Runs on every matched page


// Wait for page to load

document.addEventListener('DOMContentLoaded', () => {

// Modify the page

const element = document.querySelector('.target');

if (element) {

element.style.backgroundColor = 'yellow';

}

});


// Listen for messages from popup/background

chrome.runtime.onMessage.addListener((message, sender, sendResponse) => {

if (message.action === 'getData') {

const data = document.querySelector('.data')?.textContent;

sendResponse({ data });

}

return true; // Keep channel open for async

});

text

### Injecting UI

// Create floating UI on page

function injectUI() {

const container = document.createElement('div');

container.id = 'my-extension-ui';

container.innerHTML = `

<div style="position: fixed; bottom: 20px; right: 20px;

background: white; padding: 16px; border-radius: 8px;

box-shadow: 0 4px 12px rgba(0,0,0,0.15); z-index: 10000;">

<h3>My Extension</h3>

<button id="my-extension-btn">Click me</button>

</div>

`;

document.body.appendChild(container);


document.getElementById('my-extension-btn').addEventListener('click', () => {

// Handle click

});

}


injectUI();

text

### Permissions for Content Scripts

{

"content_scripts": [{

"matches": ["https://specific-site.com/*"],

"js": ["content.js"],

"run_at": "document_end"

}]

}

text

Storage and State


Persisting extension data


**When to use**: When saving user settings or data


javascript
## Storage and State

### Chrome Storage API

// Save data

chrome.storage.local.set({ key: 'value' }, () => {

console.log('Saved');

});


// Get data

chrome.storage.local.get(['key'], (result) => {

console.log(result.key);

});


// Sync storage (syncs across devices)

chrome.storage.sync.set({ setting: true });


// Watch for changes

chrome.storage.onChanged.addListener((changes, area) => {

if (changes.k

🎯 Best For

  • UI designers
  • Product designers
  • Claude users
  • Content creators
  • Writers

💡 Use Cases

  • Generating component mockups
  • Creating design system tokens
  • Content creation
  • Style guide enforcement

📖 How to Use This Skill

  1. 1

    Install the Skill

    Copy the install command from the Terminal tab and run it. The SKILL.md file downloads to your local skills directory.

  2. 2

    Load into Your AI Assistant

    Open Claude and reference the skill. Paste the SKILL.md content or use the system prompt tab.

  3. 3

    Apply Browser Extension Builder to Your Work

    Provide context for your task — paste source material, describe your audience, or share existing work to guide the AI.

  4. 4

    Review and Refine

    Edit the AI output for accuracy, tone, and completeness. Add human insight where the AI lacks context.

❓ Frequently Asked Questions

Does this work with Figma?

Some design skills integrate with Figma plugins. Check the Works With section for supported tools.

Can Browser Extension Builder maintain my brand voice?

Yes — provide style guides or example content in your prompt for consistent brand-aligned output.

How do I install Browser Extension Builder?

Copy the install command from the Terminal tab and run it. The skill downloads to ./skills/browser-extension-builder/SKILL.md, ready to use.

Can I customize this skill for my team?

Absolutely. Edit the SKILL.md file to add team-specific instructions, examples, or workflows.

⚠️ Common Mistakes to Avoid

Skipping usability testing

AI-generated designs should be validated with real users before development.

Publishing unedited drafts

AI writing needs human editing for facts, flow, and authentic voice.

🔗 Related Skills