mirror of
https://github.com/penpot/penpot.git
synced 2026-10-29 14:00:37 +00:00
Record manifest-default features without adding A/B selection. Keep scored builds free of the optional function-name profiling switch. Exercise CLI persistence, interruption, browser failure and legacy page interactions through separate diagnostics. Share readable reports and warn when offline comparisons include failed runs. Validate with 50 focused tests, browser and CLI fault checks, two full corpus workflow runs, and headed rectangle cases. Shadow graphics and sampling calibration remain open. AI-assisted-by: GPT-6
142 lines
6.2 KiB
JSON
142 lines
6.2 KiB
JSON
{
|
|
"name": "frontend",
|
|
"version": "1.0.0",
|
|
"license": "MPL-2.0",
|
|
"author": "Kaleidos INC Sucursal en España SL",
|
|
"private": true,
|
|
"packageManager": "pnpm@12.15.0+sha512.b3951d6d6ff4a9f13dc7cf56cd28d2b8eb37dbcc9c68e52e1e1191873ea9f82a017287ab50baadc5ccc494f036c67c0e47eb13608c2fa36f47711b61ea128e61",
|
|
"browserslist": [
|
|
"defaults"
|
|
],
|
|
"type": "module",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "https://github.com/penpot/penpot"
|
|
},
|
|
"scripts": {
|
|
"benchmark:renderer": "node scripts/renderer-benchmarks.js",
|
|
"test:renderer-benchmarks": "node --test scripts/renderer-benchmarks/tests/*.test.js",
|
|
"verify:renderer-benchmarks": "node scripts/renderer-benchmarks/verify.js",
|
|
"verify:renderer-benchmark-failures": "node scripts/renderer-benchmarks/verify-failures.js",
|
|
"verify:renderer-benchmark-cli": "node scripts/renderer-benchmarks/verify-cli.js",
|
|
"verify:renderer-playground": "node scripts/renderer-benchmarks/verify-pages.js",
|
|
"build:app:assets": "node ./scripts/build-app-assets.js",
|
|
"build:fonts-preview": "node ./scripts/build-fonts-preview.js",
|
|
"build:storybook": "(cd packages/ui && pnpm run build) && pnpm run build:storybook:assets && pnpm run build:storybook:cljs && storybook build",
|
|
"build:storybook:assets": "node ./scripts/build-storybook-assets.js",
|
|
"build:storybook:cljs": "clojure -M:dev:shadow-cljs compile storybook",
|
|
"build:wasm": "../render-wasm/build frontend",
|
|
"build:app:libs": "node ./scripts/build-libs.js",
|
|
"build:app:main": "clojure -M:dev:shadow-cljs release main worker",
|
|
"build:app:worker": "clojure -M:dev:shadow-cljs release worker",
|
|
"build:app": "pnpm run clear:shadow-cache && pnpm run build:app:main && pnpm run build:app:libs",
|
|
"check-fmt:clj": "cljfmt check --parallel=true src/ test/",
|
|
"check-fmt:js": "prettier -c src/**/*.stories.jsx -c playwright/**/*.js -c scripts/**/*.js -c text-editor/**/*.js",
|
|
"check-fmt:scss": "prettier -c resources/styles -c src/**/*.scss",
|
|
"fmt:clj": "cljfmt fix --parallel=true src/ test/",
|
|
"fmt:js": "prettier -c src/**/*.stories.jsx -c playwright/**/*.js -c scripts/**/*.js -c text-editor/**/*.js -w",
|
|
"fmt:scss": "prettier -c resources/styles -c src/**/*.scss -w",
|
|
"lint:clj": "clj-kondo --fail-level error --config-dir ../.clj-kondo --lint ../common/src src/",
|
|
"lint:js": "exit 0",
|
|
"lint:scss": "pnpm exec stylelint '{src,resources}/**/*.scss'",
|
|
"build:test": "pnpm run build:wasm && clojure -M:dev:shadow-cljs compile test",
|
|
"test": "pnpm run build:test && node target/tests/test.js",
|
|
"test:quiet": "node ./scripts/test-quiet.js",
|
|
"test:storybook": "vitest run --project=storybook",
|
|
"watch:test": "mkdir -p target/tests && concurrently \"clojure -M:dev:shadow-cljs watch test\" \"nodemon -C -d 2 -w target/tests --exec 'node target/tests/test.js'\"",
|
|
"test:e2e": "playwright test --project default",
|
|
"translations": "node ./scripts/translations.js",
|
|
"watch:app:assets": "node ./scripts/watch.js",
|
|
"watch:app:libs": "node ./scripts/build-libs.js --watch",
|
|
"watch:app:main": "clojure -M:dev:shadow-cljs watch main worker storybook",
|
|
"clear:shadow-cache": "rm -rf .shadow-cljs",
|
|
"clear:wasm": "../render-wasm/clean frontend",
|
|
"watch": "exit 0",
|
|
"watch:app": "pnpm run clear:shadow-cache && pnpm run clear:wasm && pnpm run build:wasm && concurrently --kill-others-on-fail \"pnpm run watch:app:assets\" \"pnpm run watch:app:main\" \"pnpm run watch:app:libs\"",
|
|
"watch:storybook": "pnpm run build:storybook:assets && concurrently --kill-others-on-fail \"storybook dev -p 3451 -h 0.0.0.0 --no-open\" \"node ./scripts/watch-storybook.js\"",
|
|
"postinstall": "(cd ../plugins/libs/plugins-runtime; pnpm install; pnpm run build) && (cd packages/ui && pnpm run build)"
|
|
},
|
|
"devDependencies": {
|
|
"@penpot/draft-js": "link:packages/draft-js",
|
|
"@penpot/mousetrap": "link:packages/mousetrap",
|
|
"@penpot/plugins-runtime": "link:../plugins/libs/plugins-runtime",
|
|
"@penpot/svgo": "penpot/svgo#3.3.0",
|
|
"@penpot/text-editor": "link:text-editor",
|
|
"@penpot/ua-parser": "penpot/ua-parser#1.0.0",
|
|
"@playwright/test": "1.63.0",
|
|
"@storybook/addon-docs": "10.6.1",
|
|
"@storybook/addon-themes": "10.6.1",
|
|
"@storybook/addon-vitest": "10.6.1",
|
|
"@storybook/react-vite": "10.6.1",
|
|
"@tokens-studio/sd-transforms": "2.0.3",
|
|
"@types/node": "^26.6.4",
|
|
"@vitest/browser": "5.0.3",
|
|
"@vitest/browser-playwright": "5.0.3",
|
|
"@vitest/coverage-v8": "5.0.3",
|
|
"@zip.js/zip.js": "2.8.34",
|
|
"autoprefixer": "^10.6.1",
|
|
"compression": "^1.8.2",
|
|
"concurrently": "^10.0.5",
|
|
"date-fns": "^4.4.0",
|
|
"esbuild": "^0.28.2",
|
|
"eventsource-parser": "^4.1.1",
|
|
"express": "^5.2.1",
|
|
"fancy-log": "^2.0.0",
|
|
"getopts": "^2.3.0",
|
|
"gettext-parser": "^9.1.1",
|
|
"highlight.js": "^11.12.0",
|
|
"js-beautify": "^2.0.3",
|
|
"jsdom": "^30.1.2",
|
|
"lodash": "^4.18.1",
|
|
"lodash.debounce": "^4.0.8",
|
|
"map-stream": "0.0.7",
|
|
"marked": "^18.1.0",
|
|
"mkdirp": "^3.0.1",
|
|
"mustache": "^4.2.0",
|
|
"nodemon": "^3.1.14",
|
|
"npm-run-all": "^4.1.5",
|
|
"opentype.js": "^2.0.0",
|
|
"p-limit": "^7.3.3",
|
|
"playwright": "1.63.0",
|
|
"postcss": "^8.5.29",
|
|
"postcss-clean": "^1.2.2",
|
|
"postcss-modules": "^9.0.1",
|
|
"postcss-scss": "^4.0.9",
|
|
"prettier": "3.9.9",
|
|
"pretty-time": "^1.1.0",
|
|
"prop-types": "^15.8.1",
|
|
"randomcolor": "^0.6.2",
|
|
"react": "19.3.0",
|
|
"react-dom": "19.3.0",
|
|
"react-error-boundary": "^6.1.6",
|
|
"react-virtualized": "^9.22.6",
|
|
"rimraf": "^6.1.3",
|
|
"rxjs": "8.0.0-alpha.14",
|
|
"sass": "^1.105.1",
|
|
"sass-embedded": "^1.105.1",
|
|
"sax": "^1.6.1",
|
|
"scheduler": "^0.28.0",
|
|
"source-map-support": "^0.5.21",
|
|
"storybook": "10.6.1",
|
|
"style-dictionary": "5.5.5",
|
|
"stylelint": "^17.16.0",
|
|
"stylelint-config-standard-scss": "^17.0.0",
|
|
"stylelint-plugin-logical-css": "^2.1.0",
|
|
"stylelint-scss": "^7.3.0",
|
|
"svg-sprite": "^2.0.4",
|
|
"tdigest": "^0.1.3",
|
|
"tinycolor2": "^1.6.0",
|
|
"typescript": "^6.0.3",
|
|
"vite": "^8.3.3",
|
|
"vitest": "^5.0.3",
|
|
"wait-on": "^9.5.1",
|
|
"watcher": "^2.3.1",
|
|
"workerpool": "^10.0.3",
|
|
"xregexp": "^5.1.3"
|
|
},
|
|
"dependencies": {
|
|
"@penpot/ui": "link:packages/ui",
|
|
"react-aria-components": "^1.21.1"
|
|
}
|
|
}
|