{ "name": "jellybloom", "private": true, "version": "0.0.0", "type": "module", "scripts": { "dev": "vite", "build": "tsc -b && vite build", "lint": "eslint .", "test": "vitest run", "preview": "vite preview", "tauri": "tauri", "tauri:dev": "tauri dev", "tauri:build": "tauri build" }, "dependencies": { "@jellyfin/sdk": "^0.13.0", "@radix-ui/react-checkbox": "^1.3.3", "@radix-ui/react-dialog": "^1.1.15", "@radix-ui/react-dropdown-menu": "^2.1.16", "@radix-ui/react-select": "^2.2.6", "@radix-ui/react-tabs": "^1.1.13", "@radix-ui/react-toggle": "^1.1.10", "@radix-ui/react-tooltip": "^1.2.8", "@tabler/icons-react": "^3.42.0", "@tailwindcss/vite": "^4.2.4", "@tanstack/react-query": "^5.100.9", "@tanstack/react-virtual": "^3.13.24", "@tauri-apps/api": "^2.11.0", "@types/leaflet": "^1.9.21", "@vidstack/react": "^1.12.13", "embla-carousel-react": "^8.6.0", "framer-motion": "^12.38.0", "fuse.js": "^7.3.0", "hls.js": "^1.6.16", "leaflet": "^1.9.4", "libass-wasm": "^4.1.0", "lucide-react": "^1.14.0", "react": "^19.2.5", "react-dom": "^19.2.5", "react-leaflet": "^5.0.0", "react-router-dom": "^7.15.0", "simple-icons": "^16.18.1", "tailwindcss": "^4.2.4", "zustand": "^5.0.13" }, "devDependencies": { "@eslint/js": "^10.0.1", "@tauri-apps/cli": "^2.11.1", "@types/node": "^24.12.2", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", "@vitejs/plugin-react": "^6.0.1", "eslint": "^10.2.1", "eslint-plugin-react-hooks": "^7.1.1", "eslint-plugin-react-refresh": "^0.5.2", "globals": "^17.5.0", "png-to-ico": "^3.0.1", "puppeteer": "^25.0.4", "puppeteer-core": "^25.0.4", "sharp": "^0.34.5", "typescript": "~6.0.2", "typescript-eslint": "^8.58.2", "vite": "^8.0.10", "vitest": "^4.1.5" } }