{ "name": "@mosaic/web", "version": "0.0.20", "private": true, "scripts": { "build": "next build", "dev": "next dev --turbopack --port 3000", "start": "next start", "lint": "eslint \"src/**/*.{ts,tsx}\"", "lint:fix": "eslint \"src/**/*.{ts,tsx}\" --fix", "typecheck": "tsc --noEmit", "clean": "rm -rf .next", "test": "vitest run", "test:watch": "vitest", "test:coverage": "vitest run --coverage" }, "dependencies": { "@dnd-kit/core": "^6.3.1", "@dnd-kit/sortable": "^9.0.0", "@dnd-kit/utilities": "^3.2.2", "@hello-pangea/dnd": "^18.0.1", "@mosaic/shared": "workspace:*", "@mosaic/ui": "workspace:*", "@tanstack/react-query": "^5.90.20", "@tiptap/extension-code-block-lowlight": "^3.20.0", "@tiptap/extension-link": "^3.20.0", "@tiptap/extension-placeholder": "^3.20.0", "@tiptap/extension-table": "^3.20.0", "@tiptap/extension-table-cell": "^3.20.0", "@tiptap/extension-table-header": "^3.20.0", "@tiptap/extension-table-row": "^3.20.0", "@tiptap/pm": "^3.20.0", "@tiptap/react": "^3.20.0", "@tiptap/starter-kit": "^3.20.0", "@types/dompurify": "^3.2.0", "@xterm/addon-fit": "^0.11.0", "@xterm/addon-web-links": "^0.12.0", "@xterm/xterm": "^6.0.0", "@xyflow/react": "^12.5.3", "better-auth": "^1.4.17", "date-fns": "^4.1.0", "dompurify": "^3.3.1", "elkjs": "^0.9.3", "lowlight": "^3.3.0", "lucide-react": "^0.563.0", "mermaid": "^11.4.1", "next": "^16.1.6", "react": "^19.0.0", "react-dom": "^19.0.0", "react-grid-layout": "^2.2.2", "recharts": "^3.7.0", "socket.io-client": "^4.8.3", "tiptap-markdown": "^0.9.0" }, "devDependencies": { "@mosaic/config": "workspace:*", "@testing-library/jest-dom": "^6.6.3", "@testing-library/react": "^16.2.0", "@testing-library/user-event": "^14.6.1", "@types/node": "^22.13.4", "@types/react": "^19.0.8", "@types/react-dom": "^19.0.3", "@types/react-grid-layout": "^2.1.0", "@vitejs/plugin-react": "^4.3.4", "@vitest/coverage-v8": "^3.2.4", "autoprefixer": "^10.4.24", "jsdom": "^26.0.0", "postcss": "^8.5.6", "tailwindcss": "^3.4.19", "typescript": "^5.8.2", "vitest": "^3.0.8" } }