WavE Image Downloader is a browser extension, created for the talk "El poder de las Web Extensions", that showcase an image grid for the active tab webpage and allows you to select and download them.
This Web Extension was built using vitesse-webext
template by @antfu.
Adds a dynamic name
at the header of the Popup by creating an option with the useWebExtensionStorage
composable.
An image grid showcasing the images from the webpage at the activeTab with a select functionality.
webextension-polyfill
- WebExtension browser API Polyfill with typeswebext-bridge
- effortlessly communication between contextsunplugin-auto-import
- Directly usebrowser
and Vue Composition API without importingunplugin-vue-components
- components auto importunplugin-icons
- icons as components- VueUse - collection of useful composition APIs
- UnoCSS - the instant on-demand Atomic CSS engine
src
- main source.contentScript
- scripts and components to be injected ascontent_script
background
- scripts for background.components
- auto-imported Vue components that are shared in popup and options page.styles
- styles shared in popup and options pageassets
- assets used in Vue componentsmanifest.ts
- manifest for the extension.
extension
- extension package root.assets
- static assets (mainly formanifest.json
).dist
- built files, also serve stub entry for Vite on development.
scripts
- development and bundling helper scripts.
pnpm dev
Then load extension in browser with the extension/
folder.
For Firefox developers, you can run the following command instead:
pnpm start:firefox
While Vite handles HMR automatically in the most of the case, Extensions Reloader is still recommended for cleaner hard reloading.
To build the extension, run
pnpm build
And then pack files under extension
, you can upload extension.crx
or extension.xpi
to appropriate extension store.
Official documentation at Chrome for Developers: Get Started with Web Extensions.
Stay updated by checking What's new in Chrome extensions from time to time.
“Browser extension development, simplified”.
Vite starter Web Extensions templates: Vue 3, React, ...
Web Extensions superframework (agnostic): WXT.
Build a Chrome Extension – Course for Beginners by freeCodeCamp.org.