diff --git a/.npmrc b/.npmrc index ae90f7051..1b28e47ce 100644 --- a/.npmrc +++ b/.npmrc @@ -1 +1,2 @@ ignore-workspace-root-check=true +catalog-mode=prefer diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 0b9e0d06b..50bb8f97a 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -2,6 +2,114 @@ packages: - apps/** - packages/** +catalog: + # Core frameworks + typescript: ^5.9.2 + vue: ^3.5.13 + + # Build tools + '@nx/eslint': 21.4.1 + '@nx/playwright': 21.4.1 + '@nx/storybook': 21.4.1 + '@nx/vite': 21.4.1 + nx: 21.4.1 + tsx: ^4.15.6 + vite: ^5.4.19 + '@vitejs/plugin-vue': ^5.1.4 + 'vite-plugin-dts': ^4.5.4 + vue-tsc: ^3.0.7 + + # Testing + 'happy-dom': ^15.11.0 + jsdom: ^26.1.0 + '@pinia/testing': ^0.1.5 + '@playwright/test': ^1.52.0 + '@vitest/coverage-v8': ^3.2.4 + '@vitest/ui': ^3.0.0 + vitest: ^3.2.4 + '@vue/test-utils': ^2.4.6 + + # Linting & Formatting + '@eslint/js': ^9.35.0 + eslint: ^9.34.0 + 'eslint-config-prettier': ^10.1.8 + 'eslint-plugin-prettier': ^5.5.4 + 'eslint-plugin-storybook': ^9.1.6 + 'eslint-plugin-unused-imports': ^4.2.0 + 'eslint-plugin-vue': ^10.4.0 + globals: ^15.9.0 + '@intlify/eslint-plugin-vue-i18n': ^4.1.0 + prettier: ^3.3.2 + 'typescript-eslint': ^8.44.0 + 'vue-eslint-parser': ^10.2.0 + + # Vue ecosystem + '@sentry/vue': ^8.48.0 + '@vueuse/core': ^11.0.0 + '@vueuse/integrations': ^13.9.0 + 'vite-plugin-html': ^3.2.2 + 'vite-plugin-vue-devtools': ^7.7.6 + pinia: ^2.1.7 + 'vue-i18n': ^9.14.3 + 'vue-router': ^4.4.3 + vuefire: ^3.2.1 + + # PrimeVue UI framework + '@primeuix/forms': 0.0.2 + '@primeuix/styled': 0.3.2 + '@primeuix/utils': ^0.3.2 + '@primevue/core': ^4.2.5 + '@primevue/forms': ^4.2.5 + '@primevue/icons': 4.2.5 + '@primevue/themes': ^4.2.5 + primeicons: ^7.0.0 + primevue: ^4.2.5 + + # Tailwind CSS and design + '@iconify/json': ^2.2.380 + '@iconify-json/lucide': ^1.1.178 + '@iconify/tailwind': ^1.1.3 + '@tailwindcss/vite': ^4.1.12 + tailwindcss: ^4.1.12 + 'tailwindcss-primeui': ^0.6.1 + 'tw-animate-css': ^1.3.8 + 'unplugin-icons': ^0.22.0 + 'unplugin-vue-components': ^0.28.0 + + # Storybook + '@storybook/addon-docs': ^9.1.1 + storybook: ^9.1.6 + '@storybook/vue3': ^9.1.1 + '@storybook/vue3-vite': ^9.1.1 + + # Data and validation + algoliasearch: ^5.21.0 + firebase: ^11.6.0 + yjs: ^13.6.27 + zod: ^3.23.8 + 'zod-validation-error': ^3.3.0 + + # Dev tools + dotenv: ^16.4.5 + husky: ^9.0.11 + jiti: 2.4.2 + knip: ^5.62.0 + 'lint-staged': ^15.2.7 + + # Type definitions + '@types/fs-extra': ^11.0.4 + '@types/jsdom': ^21.1.7 + '@types/node': ^20.14.8 + '@types/semver': ^7.7.0 + '@types/three': ^0.169.0 + 'vue-component-type-helpers': ^3.0.7 + 'zod-to-json-schema': ^3.24.1 + + # i18n + '@alloc/quick-lru': ^5.2.0 + '@lobehub/i18n-cli': ^1.25.1 + '@trivago/prettier-plugin-sort-imports': ^5.2.0 + ignoredBuiltDependencies: - '@firebase/util' - protobufjs