mirror of
https://github.com/Significant-Gravitas/AutoGPT.git
synced 2026-01-06 22:03:59 -05:00
## 🧢 Overview This PR migrates the AutoGPT Platform frontend from [yarn 1](https://classic.yarnpkg.com/lang/en/) to [pnpm](https://pnpm.io/) using **corepack** for automatic package manager management. **yarn1** is not longer maintained and a bit old, moving to **pnpm** we get: - ⚡ Significantly faster install times, - 💾 Better disk space efficiency, - 🛠️ Better community support and maintenance, - 💆🏽♂️ Config swap very easy ## 🏗️ Changes ### Package Management Migration - updated [corepack](https://github.com/nodejs/corepack) to use [pnpm](https://pnpm.io/) - Deleted `yarn.lock` and generated new `pnpm-lock.yaml` - Updated `.gitignore` ### Documentation Updates - `frontend/README.md`: - added comprehensive tech stack overview with links - updated all commands to use pnpm - added corepack setup instructions - and included migration disclaimer for yarn users - `backend/README.md`: - Updated installation instructions to use pnpm with corepack - `AGENTS.md`: - Updated testing commands from yarn to pnpm ### CI/CD & Infrastructure - **GitHub Workflows** : - updated all jobs to use pnpm with corepack enable - cleaned FE Playwright test workflow to avoid Sentry noise - **Dockerfile**: - updated to use pnpm with corepack, changed lock file reference, and updated cache mount path ### 📋 Checklist #### For code changes: - [x] I have clearly listed my changes in the PR description - [x] I have made a test plan - [x] I have tested my changes according to the test plan: **Test Plan:** > assuming you are on the `frontend` folder - [x] Clean installation works: `rm -rf node_modules && corepack enable && pnpm install` - [x] Development server starts correctly: `pnpm dev` - [x] Build process works: `pnpm build` - [x] Linting and formatting work: `pnpm lint` and `pnpm format` - [x] Type checking works: `pnpm type-check` - [x] Tests run successfully: `pnpm test` - [x] Storybook starts correctly: `pnpm storybook` - [x] Docker build succeeds with new pnpm configuration - [x] GitHub Actions workflow passes with pnpm commands #### For configuration changes: - [x] `.env.example` is updated or already compatible with my changes - [x] `docker-compose.yml` is updated or already compatible with my changes - [x] I have included a list of my configuration changes in the PR description (under **Changes**)
131 lines
4.3 KiB
JSON
131 lines
4.3 KiB
JSON
{
|
|
"name": "frontend",
|
|
"version": "0.3.4",
|
|
"private": true,
|
|
"scripts": {
|
|
"dev": "next dev",
|
|
"dev:test": "NODE_ENV=test && next dev",
|
|
"build": "SKIP_STORYBOOK_TESTS=true next build",
|
|
"start": "next start",
|
|
"lint": "next lint && prettier --check .",
|
|
"format": "prettier --write .",
|
|
"type-check": "tsc --noEmit",
|
|
"test": "playwright test",
|
|
"test-ui": "playwright test --ui",
|
|
"gentests": "playwright codegen http://localhost:3000",
|
|
"storybook": "storybook dev -p 6006",
|
|
"build-storybook": "storybook build",
|
|
"test-storybook": "test-storybook",
|
|
"test-storybook:ci": "concurrently -k -s first -n \"SB,TEST\" -c \"magenta,blue\" \"pnpm run build-storybook -- --quiet && npx http-server storybook-static --port 6006 --silent\" \"wait-on tcp:6006 && pnpm run test-storybook\""
|
|
},
|
|
"browserslist": [
|
|
"defaults"
|
|
],
|
|
"dependencies": {
|
|
"@faker-js/faker": "^9.8.0",
|
|
"@hookform/resolvers": "^3.10.0",
|
|
"@next/third-parties": "^15.3.2",
|
|
"@radix-ui/react-alert-dialog": "^1.1.13",
|
|
"@radix-ui/react-avatar": "^1.1.9",
|
|
"@radix-ui/react-checkbox": "^1.3.1",
|
|
"@radix-ui/react-collapsible": "^1.1.10",
|
|
"@radix-ui/react-context-menu": "^2.2.14",
|
|
"@radix-ui/react-dialog": "^1.1.2",
|
|
"@radix-ui/react-dropdown-menu": "^2.1.14",
|
|
"@radix-ui/react-icons": "^1.3.2",
|
|
"@radix-ui/react-label": "^2.1.6",
|
|
"@radix-ui/react-popover": "^1.1.13",
|
|
"@radix-ui/react-radio-group": "^1.3.6",
|
|
"@radix-ui/react-scroll-area": "^1.2.8",
|
|
"@radix-ui/react-select": "^2.2.4",
|
|
"@radix-ui/react-separator": "^1.1.6",
|
|
"@radix-ui/react-slot": "^1.1.0",
|
|
"@radix-ui/react-switch": "^1.2.4",
|
|
"@radix-ui/react-tabs": "^1.1.11",
|
|
"@radix-ui/react-toast": "^1.2.13",
|
|
"@radix-ui/react-tooltip": "^1.2.6",
|
|
"@sentry/nextjs": "^9",
|
|
"@supabase/ssr": "^0.6.1",
|
|
"@supabase/supabase-js": "^2.49.4",
|
|
"@tanstack/react-table": "^8.21.3",
|
|
"@types/jaro-winkler": "^0.2.4",
|
|
"@xyflow/react": "12.6.4",
|
|
"ajv": "^8.17.1",
|
|
"boring-avatars": "^1.11.2",
|
|
"class-variance-authority": "^0.7.1",
|
|
"clsx": "^2.1.1",
|
|
"cmdk": "1.1.1",
|
|
"cookie": "1.0.2",
|
|
"date-fns": "^4.1.0",
|
|
"dotenv": "^16.5.0",
|
|
"elliptic": "6.6.1",
|
|
"embla-carousel-react": "^8.6.0",
|
|
"framer-motion": "^12.12.1",
|
|
"geist": "^1.4.2",
|
|
"jaro-winkler": "^0.2.8",
|
|
"launchdarkly-react-client-sdk": "^3.7.0",
|
|
"lodash.debounce": "^4.0.8",
|
|
"lucide-react": "^0.510.0",
|
|
"moment": "^2.30.1",
|
|
"next": "^14.2.26",
|
|
"next-themes": "^0.4.6",
|
|
"party-js": "^2.2.0",
|
|
"react": "^18",
|
|
"react-day-picker": "^9.7.0",
|
|
"react-dom": "^18",
|
|
"react-drag-drop-files": "^2.4.0",
|
|
"react-hook-form": "^7.56.3",
|
|
"react-icons": "^5.5.0",
|
|
"react-markdown": "^9.0.3",
|
|
"react-modal": "^3.16.3",
|
|
"react-shepherd": "^6.1.8",
|
|
"recharts": "^2.15.3",
|
|
"shepherd.js": "^14.5.0",
|
|
"tailwind-merge": "^2.6.0",
|
|
"tailwindcss-animate": "^1.0.7",
|
|
"uuid": "^11.1.0",
|
|
"zod": "^3.24.4"
|
|
},
|
|
"devDependencies": {
|
|
"@chromatic-com/storybook": "^3.2.4",
|
|
"@playwright/test": "^1.50.1",
|
|
"@storybook/addon-a11y": "^8.5.3",
|
|
"@storybook/addon-essentials": "^8.5.3",
|
|
"@storybook/addon-interactions": "^8.5.3",
|
|
"@storybook/addon-links": "^8.5.3",
|
|
"@storybook/addon-onboarding": "^8.5.3",
|
|
"@storybook/blocks": "^8.5.3",
|
|
"@storybook/nextjs": "^8.5.3",
|
|
"@storybook/react": "^8.3.5",
|
|
"@storybook/test": "^8.3.5",
|
|
"@storybook/test-runner": "^0.21.0",
|
|
"@types/canvas-confetti": "^1.9.0",
|
|
"@types/lodash": "^4.17.13",
|
|
"@types/negotiator": "^0.6.3",
|
|
"@types/node": "^22.13.0",
|
|
"@types/react": "^18",
|
|
"@types/react-dom": "^18",
|
|
"@types/react-modal": "^3.16.3",
|
|
"axe-playwright": "^2.0.3",
|
|
"chromatic": "^11.25.2",
|
|
"concurrently": "^9.1.2",
|
|
"eslint": "^8",
|
|
"eslint-config-next": "15.1.6",
|
|
"eslint-plugin-storybook": "^0.11.2",
|
|
"msw": "^2.7.0",
|
|
"msw-storybook-addon": "^2.0.3",
|
|
"postcss": "^8",
|
|
"prettier": "^3.3.3",
|
|
"prettier-plugin-tailwindcss": "^0.6.11",
|
|
"storybook": "^8.5.3",
|
|
"tailwindcss": "^3.4.17",
|
|
"typescript": "^5"
|
|
},
|
|
"msw": {
|
|
"workerDirectory": [
|
|
"public"
|
|
]
|
|
},
|
|
"packageManager": "pnpm@10.11.1+sha256.211e9990148495c9fc30b7e58396f7eeda83d9243eb75407ea4f8650fb161f7c"
|
|
}
|