mirror of
https://github.com/Comfy-Org/ComfyUI_frontend.git
synced 2026-01-26 19:09:52 +00:00
## Summary Using this tool, will generates dist/stats.html after build, we can see the parts that are excessively large when packaged. ```bash pnpm run build:analyze ``` <img width="2486" height="1780" alt="CleanShot 2025-10-15 at 17 25 17@2x" src="https://github.com/user-attachments/assets/fd3ff5c9-2e7a-44a0-8b9f-4d87664c848c" /> ┆Issue is synchronized with this [Notion page](https://www.notion.so/PR-6072-chore-rollup-plugin-visualizer-28d6d73d36508184800cf7a67141b782) by [Unito](https://www.unito.io)
174 lines
6.5 KiB
JSON
174 lines
6.5 KiB
JSON
{
|
|
"name": "@comfyorg/comfyui-frontend",
|
|
"private": true,
|
|
"version": "1.29.2",
|
|
"type": "module",
|
|
"repository": "https://github.com/Comfy-Org/ComfyUI_frontend",
|
|
"homepage": "https://comfy.org",
|
|
"description": "Official front-end implementation of ComfyUI",
|
|
"license": "GPL-3.0-only",
|
|
"scripts": {
|
|
"build:desktop": "nx build @comfyorg/desktop-ui",
|
|
"build-storybook": "storybook build",
|
|
"build:types": "nx build --config vite.types.config.mts && node scripts/prepare-types.js",
|
|
"build:analyze": "cross-env ANALYZE_BUNDLE=true pnpm build",
|
|
"build": "cross-env NODE_OPTIONS='--max-old-space-size=8192' pnpm typecheck && nx build",
|
|
"collect-i18n": "pnpm exec playwright test --config=playwright.i18n.config.ts",
|
|
"dev:desktop": "nx dev @comfyorg/desktop-ui",
|
|
"dev:electron": "nx serve --config vite.electron.config.mts",
|
|
"dev": "nx serve",
|
|
"devtools:pycheck": "python3 -m compileall -q tools/devtools",
|
|
"format:check:no-cache": "prettier --check './**/*.{js,ts,tsx,vue,mts}'",
|
|
"format:check": "prettier --check './**/*.{js,ts,tsx,vue,mts}' --cache",
|
|
"format:no-cache": "prettier --write './**/*.{js,ts,tsx,vue,mts}' --list-different",
|
|
"format": "prettier --write './**/*.{js,ts,tsx,vue,mts}' --cache --list-different",
|
|
"json-schema": "tsx scripts/generate-json-schema.ts",
|
|
"knip:no-cache": "knip",
|
|
"knip": "knip --cache",
|
|
"lint:fix:no-cache": "eslint src --fix",
|
|
"lint:fix": "eslint src --cache --fix",
|
|
"lint:no-cache": "eslint src",
|
|
"lint:unstaged:fix": "git diff --name-only HEAD | grep -E '\\.(js|ts|vue|mts)$' | xargs -r eslint --cache --fix",
|
|
"lint:unstaged": "git diff --name-only HEAD | grep -E '\\.(js|ts|vue|mts)$' | xargs -r eslint --cache",
|
|
"lint": "eslint src --cache",
|
|
"locale": "lobe-i18n locale",
|
|
"preinstall": "pnpm dlx only-allow pnpm",
|
|
"prepare": "husky || true && git config blame.ignoreRevsFile .git-blame-ignore-revs || true",
|
|
"preview": "nx preview",
|
|
"storybook": "nx storybook -p 6006",
|
|
"stylelint:fix": "stylelint --cache --fix '{apps,packages,src}/**/*.{css,vue}'",
|
|
"stylelint": "stylelint --cache '{apps,packages,src}/**/*.{css,vue}'",
|
|
"test:browser": "pnpm exec nx e2e",
|
|
"test:unit": "nx run test",
|
|
"typecheck": "vue-tsc --noEmit",
|
|
"zipdist": "node scripts/zipdist.js"
|
|
},
|
|
"devDependencies": {
|
|
"@eslint/js": "catalog:",
|
|
"@intlify/eslint-plugin-vue-i18n": "catalog:",
|
|
"@lobehub/i18n-cli": "catalog:",
|
|
"@nx/eslint": "catalog:",
|
|
"@nx/playwright": "catalog:",
|
|
"@nx/storybook": "catalog:",
|
|
"@nx/vite": "catalog:",
|
|
"@pinia/testing": "catalog:",
|
|
"@playwright/test": "catalog:",
|
|
"@storybook/addon-docs": "catalog:",
|
|
"@storybook/vue3": "catalog:",
|
|
"@storybook/vue3-vite": "catalog:",
|
|
"@tailwindcss/vite": "catalog:",
|
|
"@trivago/prettier-plugin-sort-imports": "catalog:",
|
|
"@types/eslint-plugin-tailwindcss": "catalog:",
|
|
"@types/fs-extra": "catalog:",
|
|
"@types/jsdom": "catalog:",
|
|
"@types/node": "catalog:",
|
|
"@types/semver": "catalog:",
|
|
"@types/three": "catalog:",
|
|
"@vitejs/plugin-vue": "catalog:",
|
|
"@vitest/coverage-v8": "catalog:",
|
|
"@vitest/ui": "catalog:",
|
|
"@vue/test-utils": "catalog:",
|
|
"cross-env": "catalog:",
|
|
"eslint": "catalog:",
|
|
"eslint-config-prettier": "catalog:",
|
|
"eslint-import-resolver-typescript": "catalog:",
|
|
"eslint-plugin-import-x": "catalog:",
|
|
"eslint-plugin-prettier": "catalog:",
|
|
"eslint-plugin-storybook": "catalog:",
|
|
"eslint-plugin-tailwindcss": "catalog:",
|
|
"eslint-plugin-unused-imports": "catalog:",
|
|
"eslint-plugin-vue": "catalog:",
|
|
"fs-extra": "^11.2.0",
|
|
"globals": "catalog:",
|
|
"happy-dom": "catalog:",
|
|
"husky": "catalog:",
|
|
"jiti": "catalog:",
|
|
"jsdom": "catalog:",
|
|
"knip": "catalog:",
|
|
"lint-staged": "catalog:",
|
|
"nx": "catalog:",
|
|
"postcss-html": "catalog:",
|
|
"prettier": "catalog:",
|
|
"rollup-plugin-visualizer": "catalog:",
|
|
"storybook": "catalog:",
|
|
"stylelint": "catalog:",
|
|
"tailwindcss": "catalog:",
|
|
"tailwindcss-primeui": "catalog:",
|
|
"tsx": "catalog:",
|
|
"tw-animate-css": "catalog:",
|
|
"typescript": "catalog:",
|
|
"typescript-eslint": "catalog:",
|
|
"unplugin-icons": "catalog:",
|
|
"unplugin-vue-components": "catalog:",
|
|
"uuid": "^11.1.0",
|
|
"vite": "catalog:",
|
|
"vite-plugin-dts": "catalog:",
|
|
"vite-plugin-html": "catalog:",
|
|
"vite-plugin-vue-devtools": "catalog:",
|
|
"vitest": "catalog:",
|
|
"vue-component-type-helpers": "catalog:",
|
|
"vue-eslint-parser": "catalog:",
|
|
"vue-tsc": "catalog:",
|
|
"zip-dir": "^2.0.0",
|
|
"zod-to-json-schema": "catalog:"
|
|
},
|
|
"dependencies": {
|
|
"@alloc/quick-lru": "catalog:",
|
|
"@atlaskit/pragmatic-drag-and-drop": "^1.3.1",
|
|
"@comfyorg/comfyui-electron-types": "0.4.73-0",
|
|
"@comfyorg/design-system": "workspace:*",
|
|
"@comfyorg/registry-types": "workspace:*",
|
|
"@comfyorg/tailwind-utils": "workspace:*",
|
|
"@iconify/json": "catalog:",
|
|
"@primeuix/forms": "catalog:",
|
|
"@primeuix/styled": "catalog:",
|
|
"@primeuix/utils": "catalog:",
|
|
"@primevue/core": "catalog:",
|
|
"@primevue/forms": "catalog:",
|
|
"@primevue/icons": "catalog:",
|
|
"@primevue/themes": "catalog:",
|
|
"@sentry/vue": "catalog:",
|
|
"@tiptap/core": "^2.10.4",
|
|
"@tiptap/extension-link": "^2.10.4",
|
|
"@tiptap/extension-table": "^2.10.4",
|
|
"@tiptap/extension-table-cell": "^2.10.4",
|
|
"@tiptap/extension-table-header": "^2.10.4",
|
|
"@tiptap/extension-table-row": "^2.10.4",
|
|
"@tiptap/starter-kit": "^2.10.4",
|
|
"@vueuse/core": "catalog:",
|
|
"@vueuse/integrations": "catalog:",
|
|
"@xterm/addon-fit": "^0.10.0",
|
|
"@xterm/addon-serialize": "^0.13.0",
|
|
"@xterm/xterm": "^5.5.0",
|
|
"algoliasearch": "catalog:",
|
|
"axios": "catalog:",
|
|
"chart.js": "^4.5.0",
|
|
"dompurify": "^3.2.5",
|
|
"dotenv": "catalog:",
|
|
"es-toolkit": "^1.39.9",
|
|
"extendable-media-recorder": "^9.2.27",
|
|
"extendable-media-recorder-wav-encoder": "^7.0.129",
|
|
"fast-glob": "^3.3.3",
|
|
"firebase": "catalog:",
|
|
"fuse.js": "^7.0.0",
|
|
"glob": "^11.0.3",
|
|
"jsondiffpatch": "^0.6.0",
|
|
"loglevel": "^1.9.2",
|
|
"marked": "^15.0.11",
|
|
"pinia": "catalog:",
|
|
"primeicons": "catalog:",
|
|
"primevue": "catalog:",
|
|
"reka-ui": "^2.5.0",
|
|
"semver": "^7.7.2",
|
|
"three": "^0.170.0",
|
|
"tiptap-markdown": "^0.8.10",
|
|
"vue": "catalog:",
|
|
"vue-i18n": "catalog:",
|
|
"vue-router": "catalog:",
|
|
"vuefire": "catalog:",
|
|
"yjs": "catalog:",
|
|
"zod": "catalog:",
|
|
"zod-validation-error": "catalog:"
|
|
}
|
|
}
|