{ "name": "instaarchive-viewer", "private": true, "version": "1.6.2", "type": "module", "scripts": { "dev": "vite --port=3000 --host=0.0.0.0", "build": "vite build && npm run build:server", "build:server": "tsc server.ts --esModuleInterop --module ESNext --target ES2022 --moduleResolution bundler --outDir dist-server", "preview": "vite preview", "server": "tsx server.ts", "clean": "rm -rf dist", "lint": "tsc --noEmit", "test": "vitest run", "test:watch": "vitest", "jd2": "tsx scripts/jd2-sync.ts" }, "dependencies": { "@tailwindcss/vite": "^4.1.14", "@vitejs/plugin-react": "^5.0.4", "clsx": "^2.1.1", "date-fns": "^4.1.0", "dotenv": "^17.2.3", "express": "^4.21.2", "idb-keyval": "^6.2.2", "lucide-react": "^0.546.0", "motion": "^12.23.24", "react": "^19.0.0", "react-dom": "^19.0.0", "tailwind-merge": "^3.5.0", "tsx": "^4.21.0", "vite": "^6.2.0", "xz-decompress": "^0.2.3" }, "devDependencies": { "@types/express": "^4.17.21", "@types/node": "^22.14.0", "@types/react": "^19.2.18", "@types/react-dom": "^19.2.4", "autoprefixer": "^10.4.21", "tailwindcss": "^4.1.14", "typescript": "~5.8.2", "vite": "^6.2.0", "vite-plugin-pwa": "^1.2.0", "vitest": "^3.2.7" } }