Files
chakra-ui__chakra-ui/package.json
T
Segun Adebayo 0fe305592d perf(react): cache compiled recipes and memoize variant resolution
Recipe components (Button, Badge, Skeleton, etc.) previously recompiled
their recipe and re-resolved variant styles per instance/render, which
dominated render time in large lists and tables.

- Cache compiled recipes per system instance, keyed by recipe key
- Memoize cva/sva variant resolution so results are referentially stable
- Drop the per-instance structuredClone of recipe configs
- Fix recipe merging so it no longer throws or mutates source configs
- Use tsgo (@typescript/native-preview) for faster typecheck
2026-07-06 14:27:33 +02:00

120 lines
4.2 KiB
JSON

{
"name": "chakra-ui",
"private": true,
"type": "module",
"repository": {
"type": "git",
"url": "git+https://github.com/chakra-ui/chakra-ui.git"
},
"author": "Segun Adebayo <sage@adebayosegun.com>",
"license": "MIT",
"scripts": {
"prepare": "husky",
"local:sync": "tsx scripts/symlink.ts",
"local:revert": "tsx scripts/symlink.ts --revert",
"build:tokens": "chakra typegen packages/react/src/preset.ts",
"build:tokens-dev": "cross-env LOCAL=1 chakra typegen packages/react/src/preset.ts",
"build": "pnpm --filter=./packages/* build",
"build:fast": "pnpm --filter=./packages/* build:fast",
"dev": "pnpm --recursive --parallel --filter=./packages/* dev",
"postbuild": "pnpm build:tokens",
"typedocs": "pnpm www generate:types",
"typecheck": "tsgo --noEmit",
"test": "vitest",
"react": "pnpm --filter=@chakra-ui/react",
"www": "pnpm --filter=./apps/www",
"mcp": "pnpm --filter=./apps/mcp",
"panda": "pnpm --filter=./packages/panda-preset",
"lint": "eslint packages --ext .ts,.tsx --cache",
"format:check": "prettier --check packages --cache",
"format:write": "prettier --write packages --cache",
"clean:modules": "find . -name node_modules -type d -prune -exec rm -rf {} +",
"clean:storybook": "rm -rf node_modules/.cache/storybook",
"storybook": "storybook dev -p 6006",
"build:storybook": "pnpm build:fast && storybook build",
"serve:storybook": "pnpx serve storybook-static",
"clean": "pnpm -r --parallel exec rimraf dist *.log",
"slack": "tsx scripts/slack.ts",
"next:enter": "changeset pre enter next",
"next:exit": "changeset pre exit next",
"version": "changeset version",
"release": "changeset publish",
"version:dev": "changeset version --snapshot dev",
"release:dev": "changeset publish --tag dev"
},
"version": "2.0.0",
"dependencies": {
"@chakra-ui/cli": "workspace:*",
"@changesets/changelog-github": "0.7.0",
"@changesets/cli": "2.31.0",
"@changesets/get-release-plan": "4.0.16",
"@changesets/types": "6.1.0",
"@commitlint/cli": "20.5.3",
"@commitlint/config-conventional": "20.5.3",
"@emotion/react": "11.14.0",
"@eslint/compat": "^1.3.1",
"@eslint/eslintrc": "^3.3.1",
"@eslint/js": "^9.29.0",
"@octokit/rest": "^22.0.1",
"@rollup/plugin-alias": "6.0.0",
"@rollup/plugin-commonjs": "^29.0.0",
"@rollup/plugin-node-resolve": "16.0.3",
"@rollup/plugin-replace": "6.0.3",
"@storybook/addon-a11y": "10.4.2",
"@storybook/addon-themes": "10.4.2",
"@storybook/react-vite": "10.4.2",
"@testing-library/jest-dom": "6.9.1",
"@testing-library/react": "16.3.2",
"@testing-library/user-event": "14.6.1",
"@trivago/prettier-plugin-sort-imports": "6.0.2",
"@types/fs-extra": "11.0.4",
"@types/node": "24.13.1",
"@types/react": "19.2.17",
"@types/react-dom": "19.2.3",
"@typescript-eslint/eslint-plugin": "8.60.1",
"@typescript-eslint/parser": "8.60.1",
"@typescript/native-preview": "7.0.0-dev.20260705.1",
"consola": "^3.4.2",
"cross-env": "10.1.0",
"dotenv": "17.4.2",
"eslint": "9.39.4",
"eslint-config-prettier": "10.1.8",
"eslint-config-react": "1.1.7",
"eslint-plugin-import": "2.32.0",
"eslint-plugin-jsx-a11y": "6.10.2",
"eslint-plugin-prettier": "5.5.6",
"eslint-plugin-react": "7.37.5",
"eslint-plugin-react-hooks": "5.2.0",
"eslint-plugin-testing-library": "7.16.2",
"execa": "9.6.1",
"fast-glob": "3.3.3",
"find-packages": "10.0.4",
"find-up-simple": "1.0.1",
"fs-extra": "11.3.5",
"globals": "^17.0.0",
"husky": "9.1.7",
"jsdom": "26.1.0",
"lint-staged": "16.4.0",
"npm-run-all": "4.1.5",
"prettier": "3.8.3",
"react": "19.2.6",
"react-dom": "19.2.6",
"rimraf": "6.1.3",
"rollup": "4.61.1",
"rollup-plugin-esbuild": "6.2.1",
"rollup-plugin-preserve-directives": "0.4.0",
"storybook": "10.4.2",
"tsup": "8.5.1",
"tsx": "4.22.4",
"typescript": "5.9.3",
"vite": "8.0.16",
"vitest": "4.1.8",
"vitest-axe": "0.1.0",
"vitest-matchmedia-mock": "2.0.3"
},
"packageManager": "pnpm@11.10.0",
"engines": {
"node": ">=22.x"
}
}