Get browser extension(webextension) item meta from Chrome Web Store and Firefox add-ons.
This lib uses many fallback methods to improve stability and performance.
Shields.io | Badgen |
---|---|
Quality metadata badges for open source projects |
Fast badge generating service |
npm
npm add webextension-store-meta
yarn
yarn add webextension-store-meta
All stores share the same api.
const { ChromeWebStore } = require('webextension-store-meta/lib/chrome-web-store')
const chromeWebStore = await ChromeWebStore.load({
id: 'xxxxxxx',
qs: { hl: 'en' },
})
console.log(chromeWebStore.meta())
const { Amo } = require('webextension-store-meta/lib/amo')
const amo = await Amo.load({ id: 'xxxxxxx' })
console.log(amo.meta())
result = {
name: expect.any(String),
description: expect.any(String),
ratingValue: expect.any(Number),
ratingCount: expect.any(Number),
users: expect.any(Number),
price: expect.any(Number),
priceCurrency: expect.any(String),
version: expect.any(String),
url: expect.any(String),
image: expect.any(String),
operatingSystem: expect.any(String),
}
Get individual property:
const { Amo } = require('webextension-store-meta/lib/amo')
const amo = await Amo.load({ id: 'xxxxxxx' })
console.log(amo.name())
console.log(amo.ratingValue())
Load config:
- id
{string}
required - extension id. - qs
{string|object}
optional - querystring. - options
object
optional - undici.fetch options.
git clone https://github.com/awesome-webextension/webextension-store-meta.git
cd webextension-store-meta
pnpm i
pnpm test