package.json 4.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. {
  2. "name": "open-webui",
  3. "version": "0.6.15",
  4. "private": true,
  5. "scripts": {
  6. "dev": "npm run pyodide:fetch && vite dev --host",
  7. "dev:5050": "npm run pyodide:fetch && vite dev --port 5050",
  8. "build": "npm run pyodide:fetch && vite build",
  9. "build:watch": "npm run pyodide:fetch && vite build --watch",
  10. "preview": "vite preview",
  11. "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
  12. "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
  13. "lint": "npm run lint:frontend ; npm run lint:types ; npm run lint:backend",
  14. "lint:frontend": "eslint . --fix",
  15. "lint:types": "npm run check",
  16. "lint:backend": "pylint backend/",
  17. "format": "prettier --plugin-search-dir --write \"**/*.{js,ts,svelte,css,md,html,json}\"",
  18. "format:backend": "black . --exclude \".venv/|/venv/\"",
  19. "i18n:parse": "i18next --config i18next-parser.config.ts && prettier --write \"src/lib/i18n/**/*.{js,json}\"",
  20. "cy:open": "cypress open",
  21. "test:frontend": "vitest --passWithNoTests",
  22. "pyodide:fetch": "node scripts/prepare-pyodide.js"
  23. },
  24. "devDependencies": {
  25. "@sveltejs/adapter-auto": "3.2.2",
  26. "@sveltejs/adapter-static": "^3.0.2",
  27. "@sveltejs/kit": "^2.5.20",
  28. "@sveltejs/vite-plugin-svelte": "^3.1.1",
  29. "@tailwindcss/container-queries": "^0.1.1",
  30. "@tailwindcss/postcss": "^4.0.0",
  31. "@tailwindcss/typography": "^0.5.13",
  32. "@typescript-eslint/eslint-plugin": "^8.31.1",
  33. "@typescript-eslint/parser": "^8.31.1",
  34. "cypress": "^13.15.0",
  35. "eslint": "^8.56.0",
  36. "eslint-config-prettier": "^9.1.0",
  37. "eslint-plugin-cypress": "^3.4.0",
  38. "eslint-plugin-svelte": "^2.43.0",
  39. "i18next-parser": "^9.0.1",
  40. "postcss": "^8.4.31",
  41. "prettier": "^3.3.3",
  42. "prettier-plugin-svelte": "^3.2.6",
  43. "sass-embedded": "^1.81.0",
  44. "svelte": "^4.2.18",
  45. "svelte-check": "^3.8.5",
  46. "svelte-confetti": "^1.3.2",
  47. "tailwindcss": "^4.0.0",
  48. "tslib": "^2.4.1",
  49. "typescript": "^5.5.4",
  50. "vite": "^5.4.14",
  51. "vitest": "^1.6.1"
  52. },
  53. "type": "module",
  54. "dependencies": {
  55. "@azure/msal-browser": "^4.5.0",
  56. "@codemirror/lang-javascript": "^6.2.2",
  57. "@codemirror/lang-python": "^6.1.6",
  58. "@codemirror/language-data": "^6.5.1",
  59. "@codemirror/theme-one-dark": "^6.1.2",
  60. "@huggingface/transformers": "^3.0.0",
  61. "@mediapipe/tasks-vision": "^0.10.17",
  62. "@pyscript/core": "^0.4.32",
  63. "@sveltejs/adapter-node": "^2.0.0",
  64. "@sveltejs/svelte-virtual-list": "^3.0.1",
  65. "@tiptap/core": "^2.11.9",
  66. "@tiptap/extension-code-block-lowlight": "^2.11.9",
  67. "@tiptap/extension-highlight": "^2.10.0",
  68. "@tiptap/extension-placeholder": "^2.10.0",
  69. "@tiptap/extension-table": "^2.12.0",
  70. "@tiptap/extension-table-cell": "^2.12.0",
  71. "@tiptap/extension-table-header": "^2.12.0",
  72. "@tiptap/extension-table-row": "^2.12.0",
  73. "@tiptap/extension-typography": "^2.10.0",
  74. "@tiptap/pm": "^2.11.7",
  75. "@tiptap/starter-kit": "^2.10.0",
  76. "@xyflow/svelte": "^0.1.19",
  77. "async": "^3.2.5",
  78. "bits-ui": "^0.21.15",
  79. "codemirror": "^6.0.1",
  80. "codemirror-lang-elixir": "^4.0.0",
  81. "codemirror-lang-hcl": "^0.1.0",
  82. "crc-32": "^1.2.2",
  83. "dayjs": "^1.11.10",
  84. "dompurify": "^3.2.5",
  85. "eventsource-parser": "^1.1.2",
  86. "file-saver": "^2.0.5",
  87. "focus-trap": "^7.6.4",
  88. "fuse.js": "^7.0.0",
  89. "highlight.js": "^11.9.0",
  90. "html-entities": "^2.5.3",
  91. "html2canvas-pro": "^1.5.8",
  92. "i18next": "^23.10.0",
  93. "i18next-browser-languagedetector": "^7.2.0",
  94. "i18next-resources-to-backend": "^1.2.0",
  95. "idb": "^7.1.1",
  96. "js-sha256": "^0.10.1",
  97. "jspdf": "^3.0.0",
  98. "katex": "^0.16.22",
  99. "kokoro-js": "^1.1.1",
  100. "marked": "^9.1.0",
  101. "mermaid": "^11.6.0",
  102. "paneforge": "^0.0.6",
  103. "panzoom": "^9.4.3",
  104. "prosemirror-commands": "^1.6.0",
  105. "prosemirror-example-setup": "^1.2.3",
  106. "prosemirror-history": "^1.4.1",
  107. "prosemirror-keymap": "^1.2.2",
  108. "prosemirror-markdown": "^1.13.1",
  109. "prosemirror-model": "^1.23.0",
  110. "prosemirror-schema-basic": "^1.2.3",
  111. "prosemirror-schema-list": "^1.5.1",
  112. "prosemirror-state": "^1.4.3",
  113. "prosemirror-tables": "^1.7.1",
  114. "prosemirror-view": "^1.34.3",
  115. "pyodide": "^0.27.3",
  116. "socket.io-client": "^4.2.0",
  117. "sortablejs": "^1.15.2",
  118. "svelte-sonner": "^0.3.19",
  119. "tippy.js": "^6.3.7",
  120. "turndown": "^7.2.0",
  121. "turndown-plugin-gfm": "^1.0.2",
  122. "undici": "^7.3.0",
  123. "uuid": "^9.0.1",
  124. "vite-plugin-static-copy": "^2.2.0",
  125. "yaml": "^2.7.1"
  126. },
  127. "engines": {
  128. "node": ">=18.13.0 <=22.x.x",
  129. "npm": ">=6.0.0"
  130. }
  131. }