PromptBase
Close icon
Explore
General
Home
Marketplace
Apps
Create
Login
Sell
๐Ÿค– GPT

Google Extension Builder

Google Extension Builder gpt prompt mini thumbnail
3Heart icon
Favorites
64Eye icon
Views
TestedTick icon
TipsTick icon
๐Ÿš€ Ready to build the ultimate Google Chrome extension? ๐Ÿ› ๏ธ Our prompt offers a unique opportunity to generate top-notch, fully-functional extension codes! You'll get expert guidance on manifest files, background scripts, content scripts, popups, options pages, permissions, APIs, and more! ๐ŸŒ Say goodbye to security concerns and compatibility problems, and hello to exceptional user experience. Don't miss outโ€”grab this captivating prompt now! ๐Ÿ›’
...more
$3.99
Get prompt
After purchasing, you will gain access to the prompt file which you can use with GPT or the app builder. You'll receive 20 free generation credits with this purchase. By purchasing this prompt, you agree to our terms of service.
Over 1 month ago

Prompt Details

Model
Chat - GPT-4 (gpt-4)
Token size
268 ($0.00800 / call)
Example input
page refresher that can refresh a page every few seconds based on the interval provided.
Example output
In order to create a Google Chrome extension that refreshes a page every few seconds based on the interval provided, we'll follow the aspects you've mentioned. Below is the detailed and well-structured code: Manifest file (manifest.json): json Copy code { "manifest_version": 2, "name": "Page Refresher", "version": "1.0.0", "description": "Refreshes a page at a specified interval", "icons": { "48": "icon48.png", "128": "icon128.png" }, "permissions": [ "activeTab", "tabs", "storage" ], "browser_action": { "default_icon": "icon48.png", "default_popup": "popup.html" }, "options_page": "options.html", "background": { "scripts": ["background.js"], "persistent": false } } Background script (background.js): javascript Copy code chrome.runtime.onMessage.addListener((request, sender, sendResponse) => { if (request.action === "refreshPage") { chrome.tabs.query({ active: true, currentWindow: true }, (tabs) => { chrome.tabs.update(tabs[0].id, { url: tabs[0].url }); }); } }); Popup HTML file (popup.html): html Copy code <!DOCTYPE html> <html> <head> <title>Page Refresher</title> <link rel="stylesheet" href="popup.css" /> </head> <body> <h1>Page Refresher</h1> <p>Enter refresh interval (in seconds):</p> <input type="number" id="interval" min="1" /> <button id="start">Start</button> <button id="stop">Stop</button> <script src="popup.js"></script> </body> </html> Popup CSS file (popup.css): css Copy code body { font-family: Arial, sans-serif; width: 250px; padding: 20px; text-align: center; } input[type="number"] { width: 100%; margin-bottom: 10px; } button { width: 100%; margin-bottom: 10px; } Popup JavaScript file (popup.js): javascript Copy code const startButton = document.getElementById("start"); const stopButton = document.getElementById("stop"); const intervalInput = document.getElementById("interval"); let refreshInterval = null; startButton.addEventListener("click", () => { const interval = intervalInput.value; if (interval > 0) { refreshInterval = setInterval(() => { chrome.runtime.sendMessage({ action: "refreshPage" }); }, interval * 1000); } }); stopButton.addEventListener("click", () => { clearInterval(refreshInterval); }); Options HTML file (options.html): html Copy code <!DOCTYPE html> <html> <head> <title>Page Refresher Options</title> <link rel="stylesheet" href="options.css" /> </head> <body> <h1>Page Refresher Options</h1> <p>Default refresh interval (in seconds):</p> <input type="number" id="defaultInterval" min="1" /> <button id="save">Save</button> <script src="options.js"></script> </body> </html> Options CSS file (options.css): css Copy code body { font-family: Arial, sans-serif; width: 300px; padding: 20px; text-align: center; } input[type="number"] { width: 100%; margin-bottom: 10px; } button { width: 100%; } Options JavaScript file (options.js): javascript Copy code const saveButton = document.getElementById("save"); const defaultIntervalInput = document.getElementById("defaultInterval"); // Load the saved default interval and set the input value chrome.storage.sync.get("defaultInterval", (data) => { defaultIntervalInput.value = data.defaultInterval || ""; }); // Save the default interval to chrome.storage saveButton.addEventListener("click", () => { const defaultInterval = defaultIntervalInput.value; if (defaultInterval > 0) { chrome.storage.sync.set({ defaultInterval: defaultInterval }, () => { alert("Default interval saved!"); }); } else { alert("Invalid interval value!"); } }); After creating these files, put them in a folder along with the icons (icon48.png and icon128.png), and then follow these steps to load the extension: Open Chrome and go to chrome://extensions. Enable the "Developer mode" toggle in the top right corner. Click the "Load unpacked" button and select the folder containing the extension files. This extension should now be available in your Chrome browser. It includes a user-friendly popup interface to start and stop the refreshing action, and an options page to set the default refresh interval. The background script is responsible for reloading the page, while the content scripts are not needed in this case, as the extension doesn't need to interact with the DOM. The extension requests the necessary permissions and uses the relevant APIs for its functionality. Make sure to test the extension thoroughly and address any potential issues such as security concerns, performance bottlenecks, or compatibility problems.
Browse Marketplace