package.json 2.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. {
  2. "name": "open-webui",
  3. "version": "0.3.6",
  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": "^2.0.0",
  24. "@sveltejs/adapter-static": "^2.0.3",
  25. "@sveltejs/kit": "^1.30.0",
  26. "@tailwindcss/typography": "^0.5.10",
  27. "@types/bun": "latest",
  28. "@typescript-eslint/eslint-plugin": "^6.17.0",
  29. "@typescript-eslint/parser": "^6.17.0",
  30. "autoprefixer": "^10.4.16",
  31. "cypress": "^13.8.1",
  32. "eslint": "^8.56.0",
  33. "eslint-config-prettier": "^8.5.0",
  34. "eslint-plugin-cypress": "^3.0.2",
  35. "eslint-plugin-svelte": "^2.30.0",
  36. "i18next-parser": "^8.13.0",
  37. "postcss": "^8.4.31",
  38. "prettier": "^2.8.0",
  39. "prettier-plugin-svelte": "^2.10.1",
  40. "svelte": "^4.0.5",
  41. "svelte-check": "^3.4.3",
  42. "svelte-confetti": "^1.3.2",
  43. "tailwindcss": "^3.3.3",
  44. "tslib": "^2.4.1",
  45. "typescript": "^5.0.0",
  46. "vite": "^4.4.2",
  47. "vitest": "^1.6.0"
  48. },
  49. "type": "module",
  50. "dependencies": {
  51. "@codemirror/lang-javascript": "^6.2.2",
  52. "@codemirror/lang-python": "^6.1.6",
  53. "@codemirror/theme-one-dark": "^6.1.2",
  54. "@pyscript/core": "^0.4.32",
  55. "@sveltejs/adapter-node": "^1.3.1",
  56. "async": "^3.2.5",
  57. "bits-ui": "^0.19.7",
  58. "codemirror": "^6.0.1",
  59. "crc-32": "^1.2.2",
  60. "dayjs": "^1.11.10",
  61. "eventsource-parser": "^1.1.2",
  62. "file-saver": "^2.0.5",
  63. "highlight.js": "^11.9.0",
  64. "i18next": "^23.10.0",
  65. "i18next-browser-languagedetector": "^7.2.0",
  66. "i18next-resources-to-backend": "^1.2.0",
  67. "idb": "^7.1.1",
  68. "js-sha256": "^0.10.1",
  69. "katex": "^0.16.9",
  70. "marked": "^9.1.0",
  71. "mermaid": "^10.9.1",
  72. "pyodide": "^0.26.1",
  73. "socket.io-client": "^4.2.0",
  74. "sortablejs": "^1.15.2",
  75. "svelte-sonner": "^0.3.19",
  76. "tippy.js": "^6.3.7",
  77. "turndown": "^7.2.0",
  78. "uuid": "^9.0.1"
  79. }
  80. }