package.json 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061
  1. {
  2. "name": "ntfy",
  3. "version": "1.0.0",
  4. "private": true,
  5. "scripts": {
  6. "start": "NODE_OPTIONS=\"--enable-source-maps\" vite",
  7. "build": "vite build",
  8. "serve": "vite preview",
  9. "format": "prettier . --write",
  10. "format:check": "prettier . --check",
  11. "lint": "eslint --report-unused-disable-directives --ext .js,.jsx ./src/"
  12. },
  13. "dependencies": {
  14. "@emotion/react": "^11.11.0",
  15. "@emotion/styled": "^11.11.0",
  16. "@mui/icons-material": "^5.4.2",
  17. "@mui/material": "latest",
  18. "dexie": "^3.2.1",
  19. "dexie-react-hooks": "^1.1.1",
  20. "humanize-duration": "^3.27.3",
  21. "i18next": "^21.6.14",
  22. "i18next-browser-languagedetector": "^6.1.4",
  23. "i18next-http-backend": "^1.4.0",
  24. "js-base64": "^3.7.2",
  25. "react": "latest",
  26. "react-dom": "latest",
  27. "react-i18next": "^11.16.2",
  28. "react-infinite-scroll-component": "^6.1.0",
  29. "react-router-dom": "^6.2.2",
  30. "stacktrace-gps": "^3.0.4",
  31. "stacktrace-js": "^2.0.2"
  32. },
  33. "devDependencies": {
  34. "@vitejs/plugin-react": "^4.0.0",
  35. "eslint": "^8.41.0",
  36. "eslint-config-airbnb": "^19.0.4",
  37. "eslint-config-prettier": "^8.8.0",
  38. "eslint-plugin-import": "^2.27.5",
  39. "eslint-plugin-jsx-a11y": "^6.7.1",
  40. "eslint-plugin-react": "^7.32.2",
  41. "eslint-plugin-react-hooks": "^4.6.0",
  42. "prettier": "^2.8.8",
  43. "vite": "^4.3.9",
  44. "vite-plugin-pwa": "^0.15.0"
  45. },
  46. "browserslist": {
  47. "production": [
  48. ">0.2%",
  49. "not dead",
  50. "not op_mini all"
  51. ],
  52. "development": [
  53. "last 1 chrome version",
  54. "last 1 firefox version",
  55. "last 1 safari version"
  56. ]
  57. },
  58. "prettier": {
  59. "printWidth": 140
  60. }
  61. }