{ "name": "strand", "private": true, "type": "module", "scripts": { "dev": "vite dev --port 3000", "build": "vite build", "preview": "vite preview", "test": "vitest run", "lint": "eslint --fix", "format": "prettier", "check": "prettier --write . && eslint --fix" }, "dependencies": { "@atproto/oauth-client-browser": "^0.3.40", "@fontsource-variable/hanken-grotesk": "^5.2.8", "@fontsource/amiri": "^5.2.8", "@fontsource/maple-mono": "^5.2.6", "@tailwindcss/vite": "^4.0.6", "@tanstack/react-devtools": "^0.7.0", "@tanstack/react-query": "^5.66.5", "@tanstack/react-query-devtools": "^5.84.2", "@tanstack/react-router": "^1.132.0", "@tanstack/react-router-devtools": "^1.132.0", "@tanstack/react-router-ssr-query": "^1.131.7", "@tanstack/react-start": "^1.132.0", "@tanstack/router-plugin": "^1.132.0", "lucide-react": "^0.561.0", "motion": "^12.34.0", "nitro": "latest", "react": "^19.2.0", "react-dom": "^19.2.0", "tailwindcss": "^4.0.6", "tw-shimmer": "^0.4.7", "vite-tsconfig-paths": "^6.0.2", "zod": "^4.3.6" }, "devDependencies": { "@tanstack/devtools-vite": "^0.3.11", "@tanstack/eslint-config": "^0.4.0", "@testing-library/dom": "^10.4.0", "@testing-library/react": "^16.2.0", "@types/node": "^22.10.2", "@types/react": "^19.2.0", "@types/react-dom": "^19.2.0", "@typescript-eslint/parser": "^8.56.1", "@typescript-eslint/utils": "^8.56.1", "@vitejs/plugin-react": "^5.0.4", "babel-plugin-react-compiler": "^1.0.0", "eslint": "^10.0.2", "jsdom": "^27.0.0", "prettier": "^3.5.3", "prettier-plugin-tailwindcss": "^0.7.2", "typescript": "^5.7.2", "vite": "^7.1.7", "vitest": "^3.0.5", "web-vitals": "^5.1.0" } }