{ "name": "atomizer-dashboard-frontend", "private": true, "version": "1.0.0", "type": "module", "scripts": { "dev": "vite", "build": "tsc && vite build", "lint": "eslint . --ext ts,tsx --report-unused-disable-directives --max-warnings 0", "preview": "vite preview", "test": "vitest", "test:ui": "vitest --ui", "test:coverage": "vitest --coverage", "test:e2e": "playwright test", "test:e2e:ui": "playwright test --ui" }, "dependencies": { "@monaco-editor/react": "^4.7.0", "@nivo/core": "^0.99.0", "@nivo/parallel-coordinates": "^0.99.0", "@react-three/drei": "^10.7.7", "@react-three/fiber": "^9.4.0", "@tanstack/react-query": "^5.90.10", "@types/react-syntax-highlighter": "^15.5.13", "@types/three": "^0.181.0", "@xterm/addon-fit": "^0.10.0", "@xterm/addon-web-links": "^0.11.0", "clsx": "^2.1.1", "katex": "^0.16.25", "lucide-react": "^0.554.0", "react": "^18.2.0", "react-dom": "^18.2.0", "react-markdown": "^10.1.0", "react-router-dom": "^6.20.0", "react-syntax-highlighter": "^16.1.0", "react-use-websocket": "^4.13.0", "reactflow": "^11.11.4", "recharts": "^2.10.3", "rehype-katex": "^7.0.1", "remark-gfm": "^4.0.1", "remark-math": "^6.0.0", "tailwind-merge": "^3.4.0", "three": "^0.181.2", "xterm": "^5.3.0", "zustand": "^5.0.10" }, "devDependencies": { "@playwright/test": "^1.57.0", "@testing-library/dom": "^10.4.1", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@testing-library/user-event": "^14.6.1", "@types/react": "^18.2.43", "@types/react-dom": "^18.2.17", "@typescript-eslint/eslint-plugin": "^6.14.0", "@typescript-eslint/parser": "^6.14.0", "@vitejs/plugin-react": "^4.2.1", "@vitest/coverage-v8": "^4.0.17", "@vitest/ui": "^4.0.17", "autoprefixer": "^10.4.16", "eslint": "^8.55.0", "eslint-plugin-react-hooks": "^4.6.0", "eslint-plugin-react-refresh": "^0.4.5", "jsdom": "^27.4.0", "postcss": "^8.4.32", "tailwindcss": "^3.3.6", "typescript": "^5.2.2", "vite": "^5.0.8", "vitest": "^4.0.17" } }