Files
homarr/static-data/dependencies.json
T
Thomas Camlong e036cd86d8 perf: move dependencies to build-time static JSON, add build benchmark
- Move getDependenciesAsync filesystem scan to scripts/dump-dependencies.mts
  (runs at build time, outputs static-data/dependencies.json)
- About page now imports dependencies.json like other static data
  (eliminates runtime glob of all package.json files)
- Delete dead getDependenciesAsync + parseDependencyCatalogsAsync from
  package-reader.ts (only getPackageVersion remains)
- Add scripts/benchmarks/build-compare.sh for dev vs branch comparison
2026-08-08 08:58:54 +02:00

158 lines
4.8 KiB
JSON

{
"@auth/core": "^0.41.2",
"@auth/drizzle-adapter": "^1.11.2",
"@ctrl/deluge": "^8.0.0",
"@ctrl/qbittorrent": "^9.14.0",
"@ctrl/transmission": "^7.4.0",
"@dnd-kit/core": "^6.3.1",
"@dnd-kit/modifiers": "^9.0.0",
"@dnd-kit/sortable": "^10.0.0",
"@dnd-kit/utilities": "^3.2.2",
"@docusaurus/core": "^3.10.1",
"@docusaurus/faster": "^3.10.1",
"@docusaurus/plugin-content-docs": "^3.10.1",
"@docusaurus/plugin-sitemap": "^3.10.1",
"@docusaurus/preset-classic": "^3.10.1",
"@drizzle-team/brocli": "^0.12.0",
"@extractus/feed-extractor": "7.2.1",
"@gfazioli/mantine-onboarding-tour": "^4.0.6",
"@homarr/gridstack": "^1.12.0",
"@homarr/node-unifi": "^2.6.0",
"@immich/sdk": "^3.0.2",
"@jellyfin/sdk": "^0.13.0",
"@kubernetes/client-node": "^1.4.0",
"@mantine/charts": "^9.4.1",
"@mantine/colors-generator": "^9.4.1",
"@mantine/core": "^9.4.1",
"@mantine/dates": "^9.4.1",
"@mantine/dropzone": "^9.4.1",
"@mantine/form": "^9.4.1",
"@mantine/hooks": "^9.4.1",
"@mantine/modals": "^9.4.1",
"@mantine/notifications": "^9.4.1",
"@mantine/spotlight": "^9.4.1",
"@mantine/tiptap": "^9.4.1",
"@mdx-js/react": "^3.1.1",
"@modelcontextprotocol/sdk": "1.29.0",
"@nivo/line": "^0.99.0",
"@paralleldrive/cuid2": "^3.3.0",
"@scalar/api-reference-react": "^0.9.54",
"@signalwire/docusaurus-plugin-llms-txt": "^1.2.2",
"@t3-oss/env-nextjs": "^0.13.11",
"@tabler/icons-react": "^3.44.0",
"@tailwindcss/postcss": "^4.3.2",
"@tanstack/react-devtools": "^0.10.8",
"@tanstack/react-query": "^5.101.2",
"@tanstack/react-query-devtools": "^5.101.2",
"@tanstack/react-query-next-experimental": "^5.101.2",
"@testcontainers/mysql": "^12.0.4",
"@testcontainers/postgresql": "^12.0.4",
"@tiptap/extension-color": "3.27.3",
"@tiptap/extension-highlight": "3.27.3",
"@tiptap/extension-image": "3.27.3",
"@tiptap/extension-link": "^3.27.3",
"@tiptap/extension-placeholder": "^3.27.3",
"@tiptap/extension-table": "3.27.3",
"@tiptap/extension-table-cell": "3.27.3",
"@tiptap/extension-table-header": "3.27.3",
"@tiptap/extension-table-row": "3.27.3",
"@tiptap/extension-task-item": "3.27.3",
"@tiptap/extension-task-list": "3.27.3",
"@tiptap/extension-text-align": "3.27.3",
"@tiptap/extension-text-style": "3.27.3",
"@tiptap/extension-underline": "3.27.3",
"@tiptap/react": "^3.27.3",
"@tiptap/starter-kit": "^3.27.3",
"@trpc/client": "^11.18.0",
"@trpc/next": "^11.18.0",
"@trpc/react-query": "^11.18.0",
"@trpc/server": "^11.18.0",
"@trpc/tanstack-react-query": "^11.18.0",
"@xterm/addon-canvas": "^0.7.0",
"@xterm/addon-fit": "0.11.0",
"@xterm/xterm": "^6.0.0",
"adm-zip": "0.5.18",
"babel-plugin-react-compiler": "^1.0.0",
"bcrypt": "^6.0.0",
"better-sqlite3": "^12.11.1",
"chroma-js": "^3.2.0",
"clsx": "^2.1.1",
"cookie": "2.0.1",
"cookies": "^0.9.1",
"croner": "10.0.1",
"crypto-js": "^4.2.0",
"dayjs": "^1.11.21",
"deepmerge": "4.3.1",
"dns-caching": "^0.2.9",
"dockerode": "^5.0.1",
"docusaurus-plugin-image-zoom": "^3.0.1",
"dompurify": "^3.4.13",
"dotenv": "^17.4.2",
"drizzle-kit": "^0.31.10",
"drizzle-orm": "^0.45.2",
"drizzle-zod": "^0.8.3",
"fast-xml-parser": "^5.9.3",
"fastify": "^5.9.0",
"flag-icons": "^7.5.0",
"glob": "^13.0.6",
"ical.js": "^2.2.1",
"ioredis": "5.11.1",
"jotai": "^2.20.1",
"jsonpath-plus": "^10.4.0",
"jszip": "^3.10.1",
"ldapts": "8.1.8",
"leader-line-new": "^1.1.9",
"linkedom": "^0.18.13",
"lodash.clonedeep": "^4.5.0",
"lucide-react": "^1.24.0",
"mantine-datatable": "^9.3.1",
"mantine-react-table": "npm:mantine-react-table-open@9.0.3",
"maria2": "^0.4.1",
"mcp-handler": "^1.1.0",
"mysql2": "3.22.6",
"next": "16.3.0-preview.9",
"next-auth": "5.0.0-beta.31",
"next-intl": "4.13.1",
"octokit": "^5.0.5",
"pg": "^8.22.0",
"postcss": "^8.5.16",
"postcss-preset-mantine": "^1.18.0",
"posthog-docusaurus": "^2.0.5",
"posthog-js": "^1.399.1",
"posthog-node": "^5.40.0",
"prism-react-renderer": "^2.4.1",
"prismjs": "^1.30.0",
"proxmox-api": "1.1.1",
"random-word-slugs": "^0.1.7",
"react": "19.2.7",
"react-dom": "19.2.7",
"react-error-boundary": "^6.1.2",
"react-jsx-parser": "^2.4.1",
"react-markdown": "^10.1.0",
"react-quill-new": "^3.8.3",
"react-simple-code-editor": "^0.14.1",
"recharts": "^3.9.1",
"sass": "^1.101.0",
"semver-parser": "^4.2.1",
"sql.js": "^1.14.1",
"superjson": "2.2.6",
"svgson": "^5.3.1",
"swiper": "^14.0.5",
"tailwindcss": "^4.3.2",
"timezones-ical-library": "^2.2.1",
"trpc-to-mcp": "^1.3.2",
"trpc-to-openapi": "^3.3.0",
"tsdav": "^2.3.0",
"tsx": "4.20.4",
"undici": "7.28.0",
"use-deep-compare-effect": "^1.8.1",
"video.js": "^8.23.9",
"winston": "3.19.0",
"ws": "^8.21.0",
"xml2js": "^0.6.2",
"yaml": "2.9.0",
"zod": "^4.4.3",
"zod-form-data": "^3.0.2",
"zod-validation-error": "^5.0.0"
}