pwa-asset-generator
Version:
Automates PWA asset generation and image declaration. Automatically generates icon and splash screen images, favicons and mstile images. Updates manifest.json and index.html files with the generated images according to Web App Manifest specs and Apple Hum
123 lines (122 loc) • 4.72 kB
JSON
{
"name": "pwa-asset-generator",
"version": "8.0.4",
"description": "Automates PWA asset generation and image declaration. Automatically generates icon and splash screen images, favicons and mstile images. Updates manifest.json and index.html files with the generated images according to Web App Manifest specs and Apple Human Interface guidelines.",
"type": "module",
"main": "dist/main.js",
"types": "dist/main.d.ts",
"bin": {
"pwa-asset-generator": "bin/cli.js"
},
"scripts": {
"prepare": "husky",
"test": "vitest run",
"test:update": "npm run test:update:visuals && npm run test:update:snapshots",
"test:update:snapshots": "vitest run -u",
"test:update:visuals": "npm run visuals:input-svg && npm run visuals:input-png && npm run visuals:input-html && npm run visuals:input-html-dark && npm run visuals:output-transparent && npm run visuals:output-png",
"visuals:output-png": "rimraf ./src/__snapshots__/visual/output-png && node ./bin/cli.js ./static/logo.svg ./src/__snapshots__/visual/output-png -s false -t png -b coral",
"visuals:output-transparent": "rimraf ./src/__snapshots__/visual/output-transparent && node ./bin/cli.js ./static/logo.svg ./src/__snapshots__/visual/output-transparent -s false -b -t png transparent -o false",
"visuals:input-svg": "rimraf ./src/__snapshots__/visual/input-svg && node ./bin/cli.js ./static/logo.svg ./src/__snapshots__/visual/input-svg -s false -b coral",
"visuals:input-png": "rimraf ./src/__snapshots__/visual/input-png && node ./bin/cli.js ./static/logo.png ./src/__snapshots__/visual/input-png -s false -b coral -w",
"visuals:input-html": "rimraf ./src/__snapshots__/visual/input-html && node ./bin/cli.js ./static/logo.html ./src/__snapshots__/visual/input-html -s false",
"visuals:input-html-dark": "rimraf ./src/__snapshots__/visual/input-html-dark && node ./bin/cli.js ./static/logo.html ./src/__snapshots__/visual/input-html-dark -s false -d true",
"chromium": "cross-env PAG_TEST_MODE=1 node bin/install.js",
"update": "node bin/update-fallback-data.js",
"build": "rimraf ./dist && tsc && cp -R src/config/*.json dist/config/",
"start": "tsc -w",
"lint": "eslint .",
"lint:fix": "eslint . --fix",
"prettier": "prettier . --check",
"prettier:fix": "prettier . --write",
"semantic-release": "semantic-release"
},
"repository": {
"type": "git",
"url": "https://github.com/elegantapp/pwa-asset-generator.git"
},
"engines": {
"node": ">=18"
},
"keywords": [
"pwa",
"puppeteer",
"chromium",
"icon",
"launch-image",
"ios",
"android",
"splashscreen",
"splash-screen",
"image-generation",
"image",
"manifest",
"mobile",
"favicon",
"mstile",
"pwa-assets"
],
"author": "Önder Ceylan <onderceylan@gmail.com>",
"license": "MIT",
"bugs": {
"url": "https://github.com/elegantapp/pwa-asset-generator/issues"
},
"homepage": "https://github.com/elegantapp/pwa-asset-generator#readme",
"collective": {
"url": "https://opencollective.com/pwa-asset-generator"
},
"funding": {
"type": "opencollective",
"url": "https://opencollective.com/pwa-asset-generator"
},
"dependencies": {
"chalk": "^5.4.1",
"cheerio": "^1.0.0",
"chrome-launcher": "^1.1.2",
"find-process": "^1.4.10",
"lodash.uniqwith": "^4.5.0",
"meow": "^13.2.0",
"mime-types": "^3.0.1",
"pretty": "^2.0.0",
"puppeteer-core": "^24.4.0",
"slash": "^5.1.0"
},
"devDependencies": {
"@commitlint/cli": "^19.8.0",
"@commitlint/config-conventional": "^19.8.0",
"@eslint/js": "^9.23.0",
"@semantic-release/changelog": "^6.0.3",
"@semantic-release/commit-analyzer": "^13.0.1",
"@semantic-release/git": "^10.0.1",
"@semantic-release/github": "^11.0.1",
"@semantic-release/npm": "^12.0.1",
"@semantic-release/release-notes-generator": "^14.0.3",
"@types/find-process": "^1.2.2",
"@types/lodash.uniqwith": "^4.5.9",
"@types/mime-types": "^2.1.4",
"@types/node": "^22.13.11",
"@types/pngjs": "^6.0.5",
"@types/pretty": "^2.0.3",
"@typescript-eslint/eslint-plugin": "^8.27.0",
"@typescript-eslint/parser": "^8.27.0",
"cross-env": "^7.0.3",
"eslint": "^9.23.0",
"eslint-plugin-n": "^17.16.2",
"execa": "^9.5.2",
"globals": "^16.0.0",
"husky": "^9.1.7",
"jpeg-js": "^0.4.4",
"lint-staged": "^15.5.0",
"pixelmatch": "^7.1.0",
"prettier": "^3.5.3",
"rimraf": "^6.0.1",
"semantic-release": "^24.2.3",
"typescript": "^5.8.2",
"vitest": "^3.0.9"
},
"lint-staged": {
"**/*.{js,ts}": [
"eslint --fix",
"prettier --write"
]
}
}