While developing my first chrome extension, I had difficulty locating an article that covered the complete ideation, development, and launch of chrome extensions. Here is an all-in-one guide to help people who want to build Chrome extensions through the process.
This should save you time reading and combining information from multiple articles.
One of the best things about building add-ons is how easy it is to start. Extensions are usually easier for new coders than mobile apps or websites offering the same functionality and value.
As a beginner, my first "live project" was a Chrome extension that I came up with, built, and put out into the world in two weeks.
The graph below shows that Chrome dominates rival browsers in market share. It is a good idea to make your browser extension compatible with Chrome so that as many people can use it. When your extension is ready, all Chrome users can get it from the Chrome Web Store.
Why not just make it work on every browser? It's conceivable, but you should only use one at first, and Chrome seems to be your best option. Also, it's important to know that extensions can be changed to work in different browsers, but the codebase can't be copied in its entirety and may need a lot of changes.
If your app uses a lot of APIs that only work in one browser, it would be hard to make it work in another browser. Not all browsers may have a similar API with similar features that you can use, and even if they do, the API functions may look a little different.
While extensions are fantastic, not all product ideas are best suited to this platform. To make complicated, multi-purpose software, browser extensions are not the way. Instead, extensions should be easy to use and focus on solving a specific problem or doing one thing well. Google says in the Chrome Web Store Submission process that "an extension must have a single, narrow, and easy-to-understand purpose."
For instance, my extension makes moving around on long web pages easier. All it does is automatically scroll to and highlight keywords and phrases based on the user's search query and the Google search description so that users can quickly find the important parts of a webpage.
These are some key types of extensions from the perspective of a developer:
1. New tab extensions: personalize new tab pages for aesthetic reasons, provide relevant information to each tab, or include features like note-taking. Example: Momentum
2. Extensions that only work on certain websites can only be used on those websites. RateFlix is an app that adds Rotten Tomatoes ratings to your Netflix library.
3. They can be used on most or all websites. Dark Reader is an app that lets you change to dark mode and change how websites you visit look.
If you're a new developer who doesn't know much about making Chrome extensions, you can get ideas from the code of other similar extensions. After adding an extension to your browser, you can inspect the code by saving it to your desktop.
In the search bar, type "chrome:/extensions."
Switch to developer mode, find the extension, and copy the ID
Go to your file explorer and look for a folder with the ID in its name. You can also do a manual search with the following list (may differ) - C: Usersuser>AppDataLocalGoogleChromeUser DataDefaultExtensionsID>.
All files with the extension should be in the folder, and a code editor like Visual Studio Code can be used to look at the files. You shouldn't copy large chunks of code, though (after all, it is not your intellectual property). If you want to copy, check Github to see if the person has made their code public. Also, many extensions reduce the size of their files to save space. If you want to read the code in these files, you can "unminify" them online. I looked at the code for other extensions to learn more about how similar Chrome extensions work.