package.json 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687
  1. {
  2. "name": "open-webui",
  3. "version": "0.3.21",
  4. "private": true,
  5. "scripts": {
  6. "dev": "npm run pyodide:fetch && vite dev --host",
  7. "build": "npm run pyodide:fetch && vite build",
  8. "preview": "vite preview",
  9. "check": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json",
  10. "check:watch": "svelte-kit sync && svelte-check --tsconfig ./tsconfig.json --watch",
  11. "lint": "npm run lint:frontend ; npm run lint:types ; npm run lint:backend",
  12. "lint:frontend": "eslint . --fix",
  13. "lint:types": "npm run check",
  14. "lint:backend": "pylint backend/",
  15. "format": "prettier --plugin-search-dir --write \"**/*.{js,ts,svelte,css,md,html,json}\"",
  16. "format:backend": "black . --exclude \".venv/|/venv/\"",
  17. "i18n:parse": "i18next --config i18next-parser.config.ts && prettier --write \"src/lib/i18n/**/*.{js,json}\"",
  18. "cy:open": "cypress open",
  19. "test:frontend": "vitest --passWithNoTests",
  20. "pyodide:fetch": "node scripts/prepare-pyodide.js"
  21. },
  22. "devDependencies": {
  23. "@sveltejs/adapter-auto": "3.2.2",
  24. "@sveltejs/adapter-static": "^3.0.2",
  25. "@sveltejs/kit": "^2.5.20",
  26. "@sveltejs/vite-plugin-svelte": "^3.1.1",
  27. "@tailwindcss/typography": "^0.5.13",
  28. "@types/bun": "latest",
  29. "@typescript-eslint/eslint-plugin": "^6.17.0",
  30. "@typescript-eslint/parser": "^6.17.0",
  31. "autoprefixer": "^10.4.16",
  32. "cypress": "^13.8.1",
  33. "eslint": "^8.56.0",
  34. "eslint-config-prettier": "^9.1.0",
  35. "eslint-plugin-cypress": "^3.4.0",
  36. "eslint-plugin-svelte": "^2.43.0",
  37. "i18next-parser": "^9.0.1",
  38. "postcss": "^8.4.31",
  39. "prettier": "^3.3.3",
  40. "prettier-plugin-svelte": "^3.2.6",
  41. "svelte": "^4.2.18",
  42. "svelte-check": "^3.8.5",
  43. "svelte-confetti": "^1.3.2",
  44. "tailwindcss": "^3.3.3",
  45. "tslib": "^2.4.1",
  46. "typescript": "^5.5.4",
  47. "vite": "^5.3.5",
  48. "vitest": "^1.6.0"
  49. },
  50. "type": "module",
  51. "dependencies": {
  52. "@codemirror/lang-javascript": "^6.2.2",
  53. "@codemirror/lang-python": "^6.1.6",
  54. "@codemirror/theme-one-dark": "^6.1.2",
  55. "@pyscript/core": "^0.4.32",
  56. "@sveltejs/adapter-node": "^2.0.0",
  57. "async": "^3.2.5",
  58. "bits-ui": "^0.19.7",
  59. "codemirror": "^6.0.1",
  60. "crc-32": "^1.2.2",
  61. "dayjs": "^1.11.10",
  62. "dompurify": "^3.1.6",
  63. "eventsource-parser": "^1.1.2",
  64. "file-saver": "^2.0.5",
  65. "fuse.js": "^7.0.0",
  66. "highlight.js": "^11.9.0",
  67. "i18next": "^23.10.0",
  68. "i18next-browser-languagedetector": "^7.2.0",
  69. "i18next-resources-to-backend": "^1.2.0",
  70. "idb": "^7.1.1",
  71. "js-sha256": "^0.10.1",
  72. "katex": "^0.16.9",
  73. "marked": "^9.1.0",
  74. "mermaid": "^10.9.1",
  75. "pyodide": "^0.26.1",
  76. "socket.io-client": "^4.2.0",
  77. "sortablejs": "^1.15.2",
  78. "svelte-sonner": "^0.3.19",
  79. "tippy.js": "^6.3.7",
  80. "turndown": "^7.2.0",
  81. "uuid": "^9.0.1"
  82. },
  83. "engines": {
  84. "node": ">=18.13.0 <=21.x.x",
  85. "npm": ">=6.0.0"
  86. }
  87. }