{ "name": "memos", "private": true, "packageManager": "pnpm@11.0.1", "engines": { "node": ">=24" }, "scripts": { "dev": "vite", "build": "vite build", "release": "vite build --mode release --outDir=../server/router/frontend/dist --emptyOutDir", "lint": "tsc --noEmit --skipLibCheck && biome check src tests", "lint:fix": "biome check --write src tests", "format": "biome format --write src tests", "test": "vitest run", "test:watch": "vitest", "test:coverage": "vitest run --coverage" }, "dependencies": { "@base-ui/react": "^1.7.0", "@codemirror/autocomplete": "^6.20.3", "@codemirror/commands": "^6.11.0", "@codemirror/lang-markdown": "^6.5.2", "@codemirror/language": "^6.12.4", "@codemirror/state": "^6.7.2", "@codemirror/view": "^6.43.10", "@connectrpc/connect": "^2.1.1", "@connectrpc/connect-web": "^2.1.1", "@github/relative-time-element": "^5.0.0", "@lezer/highlight": "^1.2.3", "@lezer/markdown": "^1.7.2", "@tailwindcss/vite": "^4.2.4", "@tanstack/react-query": "^5.100.9", "@tanstack/react-query-devtools": "^5.100.9", "class-variance-authority": "^0.7.1", "clsx": "^2.1.1", "copy-to-clipboard": "^4.0.2", "dayjs": "^1.11.20", "exifr": "^7.1.3", "highlight.js": "^11.11.1", "html-to-image": "^1.11.13", "i18next": "^26.3.6", "katex": "^0.16.45", "leaflet": "^1.9.4", "leaflet.markercluster": "^1.5.3", "lodash-es": "^4.18.1", "lucide-react": "^1.34.0", "mdast-util-from-markdown": "^2.0.3", "mdast-util-gfm": "^3.1.0", "mermaid": "^11.14.0", "micromark-extension-gfm": "^3.0.0", "micromark-util-decode-string": "^2.0.1", "micromark-util-normalize-identifier": "^2.0.1", "react": "^19.2.6", "react-dom": "^19.2.6", "react-hot-toast": "^2.6.0", "react-i18next": "^17.0.11", "react-leaflet": "^5.0.0", "react-leaflet-cluster": "^4.1.3", "react-markdown": "^10.1.0", "react-router-dom": "^7.15.0", "rehype-katex": "^7.0.1", "rehype-raw": "^7.0.0", "rehype-sanitize": "^6.0.0", "remark-breaks": "^4.0.0", "remark-gfm": "^4.0.1", "remark-math": "^6.0.0", "remark-parse": "^11.0.0", "remark-rehype": "^11.1.2", "tailwind-merge": "^3.5.0", "tailwindcss": "^4.2.4", "unified": "^11.0.5", "unist-util-visit": "^5.1.0", "uuid": "^11.1.0" }, "devDependencies": { "@babel/core": "7.29.0", "@biomejs/biome": "^2.4.14", "@bufbuild/protobuf": "^2.12.0", "@rolldown/plugin-babel": "0.2.3", "@testing-library/jest-dom": "^6.9.1", "@testing-library/react": "^16.3.2", "@types/babel__core": "7.20.5", "@types/hast": "^3.0.4", "@types/leaflet": "^1.9.21", "@types/lodash-es": "^4.17.12", "@types/mdast": "^4.0.4", "@types/node": "^24.12.2", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", "@types/unist": "^3.0.3", "@vitejs/plugin-react": "^6.0.1", "babel-plugin-react-compiler": "1.0.0", "jsdom": "^29.1.1", "tw-animate-css": "^1.4.0", "typescript": "^7.0.2", "vite": "^8.0.11", "vitest": "^4.1.5" } }