{ "name": "blog", "type": "module", "version": "0.0.1", "scripts": { "dev": "astro dev", "start": "astro dev", "build": "astro build", "preview": "astro preview", "lint": "eslint", "astro": "astro", "prepare": "husky", "gen-type": "openapi-typescript http://localhost:4000/openapi-3.0.json -o ./src/types/saturday.d.ts", "active": "openapi-ts -f openapi-ts.active.config.ts" }, "dependencies": { "@astrojs/react": "^3.6.3", "@astrojs/rss": "^4.0.11", "@astrojs/tailwind": "^5.1.5", "@astrojs/vue": "^4.5.3", "@fullcalendar/core": "^6.1.17", "@fullcalendar/daygrid": "^6.1.17", "@fullcalendar/icalendar": "^6.1.17", "@fullcalendar/react": "^6.1.17", "@headlessui/vue": "^1.7.23", "@heroui/react": "2.7.6", "@internationalized/date": "^3.8.1", "@logto/browser": "^2.2.18", "@react-stately/data": "^3.13.0", "@stylistic/eslint-plugin": "^2.13.0", "astro": "^4.16.18", "dayjs": "^1.11.13", "framer-motion": "^11.18.2", "ical.js": "^1.5.0", "md5": "^2.3.0", "openapi-fetch": "^0.12.5", "qrcode": "^1.5.4", "react": "^18.3.1", "react-dom": "^18.3.1", "rehype": "^13.0.2", "rehype-slug": "^6.0.0", "remark-toc": "^9.0.0", "sharp": "^0.33.5", "tailwindcss": "^3.4.17", "unist-util-visit": "^5.0.0", "uuid": "10.0.0", "vue": "^3.5.13" }, "devDependencies": { "@astrojs/markdown-remark": "^5.3.0", "@cspell/eslint-plugin": "^8.19.2", "@eslint/js": "^9.25.1", "@hey-api/openapi-ts": "^0.53.12", "@types/eslint__js": "^8.42.3", "@types/md5": "^2.3.5", "@types/qrcode": "^1.5.5", "@types/react": "^18.3.20", "@types/react-dom": "^18.3.6", "@types/uuid": "10.0.0", "eslint": "^8.57.1", "eslint-import-resolver-typescript": "^3.10.1", "eslint-plugin-astro": "^1.3.1", "eslint-plugin-import": "^2.31.0", "globals": "^15.15.0", "husky": "^9.1.7", "lint-staged": "^15.5.1", "openapi-typescript": "^7.6.1", "typescript": "^5.8.3", "typescript-eslint": "8.7.0" }, "lint-staged": { "*.{js,jsx,mjs,ts,tsx,mts,astro}": "eslint --fix" }, "volta": { "node": "20.17.0" } }