{"_id":"@astracms/vue","_rev":"5-9b68b856205ceace231fee8c913984ad","name":"@astracms/vue","dist-tags":{"latest":"1.0.3"},"versions":{"0.1.0":{"name":"@astracms/vue","version":"0.1.0","keywords":["vue","vue3","composables","astracms","cms","headless-cms","blog"],"author":{"name":"AstraCMS"},"license":"MIT","_id":"@astracms/vue@0.1.0","maintainers":[{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"}],"homepage":"https://github.com/astracms/astracms#readme","bugs":{"url":"https://github.com/astracms/astracms/issues"},"dist":{"shasum":"dd280964a48c4c10880d04c8c72240063d19b591","tarball":"https://registry.npmjs.org/@astracms/vue/-/vue-0.1.0.tgz","fileCount":5,"integrity":"sha512-cHwYY/WyaG80A2gBhdmgUH9uprqRXA3px4pLBur+Gge0W3bv+VCOA3mUlEAs+n4PkPra5/pI+Hk7KX5dxJScnA==","signatures":[{"sig":"MEUCIQDgzS03vIBb5SCskVxcW34Qa7pExY1ye1sMuhkCtNVKLAIgWk/xICQbl/vikZThBraMdEAj5Tz3jXur/jyxYAfbPWE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45023},"main":"./dist/index.js","type":"module","_from":"file:astracms-vue-0.1.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"private":false,"scripts":{"dev":"tsup src/index.ts --format esm --dts --watch --external vue --external @astracms/core","build":"tsup src/index.ts --format esm --dts --external vue --external @astracms/core","typecheck":"tsc --noEmit"},"_npmUser":{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"},"_resolved":"/tmp/2fbe5fcabe86c63ab63d293e15004af2/astracms-vue-0.1.0.tgz","_integrity":"sha512-cHwYY/WyaG80A2gBhdmgUH9uprqRXA3px4pLBur+Gge0W3bv+VCOA3mUlEAs+n4PkPra5/pI+Hk7KX5dxJScnA==","repository":{"url":"git+https://github.com/astracms/astracms.git","type":"git","directory":"packages/vue"},"_npmVersion":"10.9.4","description":"Vue 3 composables for AstraCMS data fetching","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@astracms/core":"0.1.0"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.0","tsup":"^8.3.0","typescript":"^5.7.2"},"peerDependencies":{"vue":"^3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/vue_0.1.0_1765128507355_0.06786079780679377","host":"s3://npm-registry-packages-npm-production"}},"1.0.0":{"name":"@astracms/vue","version":"1.0.0","keywords":["vue","vue3","composables","astracms","cms","headless-cms","blog"],"author":{"name":"AstraCMS"},"license":"MIT","_id":"@astracms/vue@1.0.0","maintainers":[{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"}],"homepage":"https://github.com/astracms/astracms#readme","bugs":{"url":"https://github.com/astracms/astracms/issues"},"dist":{"shasum":"af23340b8d6e9d281798e9733ac24edb4e144d01","tarball":"https://registry.npmjs.org/@astracms/vue/-/vue-1.0.0.tgz","fileCount":5,"integrity":"sha512-XW9PBbRI3N8O0bbHH6mqYAcPXn58WFiplzlE8IMx6oee7jrbf8tppphwlbLDVGHCZJNvYdwu6LbvHTMOpIs1oQ==","signatures":[{"sig":"MEQCIBEH9OLqBv8QR/AkEWIt5cHA77V3lulQLkAM/Gk6Vl2FAiA2g6/3JJvXL8fwYQ2gwHYwE4CkZoGOtOtnl6ZYvEhjlg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":45023},"main":"./dist/index.js","type":"module","_from":"file:astracms-vue-1.0.0.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"private":false,"scripts":{"dev":"tsup src/index.ts --format esm --dts --watch --external vue --external @astracms/core","build":"tsup src/index.ts --format esm --dts --external vue --external @astracms/core","typecheck":"tsc --noEmit"},"_npmUser":{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"},"_resolved":"/tmp/392f056509150e394f460aa18851ee55/astracms-vue-1.0.0.tgz","_integrity":"sha512-XW9PBbRI3N8O0bbHH6mqYAcPXn58WFiplzlE8IMx6oee7jrbf8tppphwlbLDVGHCZJNvYdwu6LbvHTMOpIs1oQ==","repository":{"url":"git+https://github.com/astracms/astracms.git","type":"git","directory":"packages/vue"},"_npmVersion":"10.9.4","description":"Vue 3 composables for AstraCMS data fetching","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@astracms/core":"1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.0","tsup":"^8.3.0","typescript":"^5.7.2"},"peerDependencies":{"vue":"^3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/vue_1.0.0_1765514819123_0.034824327212649164","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@astracms/vue","version":"1.0.1","keywords":["vue","vue3","composables","astracms","cms","headless-cms","blog"],"author":{"name":"AstraCMS"},"license":"MIT","_id":"@astracms/vue@1.0.1","maintainers":[{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"}],"homepage":"https://github.com/astracms/astracms#readme","bugs":{"url":"https://github.com/astracms/astracms/issues"},"dist":{"shasum":"fbe8314d50beab5ed1939a9a64a872db7f83c460","tarball":"https://registry.npmjs.org/@astracms/vue/-/vue-1.0.1.tgz","fileCount":5,"integrity":"sha512-95RsdVyZxfjGAiiNHRyzkfOhJRllIB+WlG0nwpOKEg9gFg0VHNKVk7jVBKidkpsyL44vnREtmRAgnDeOBuRPPQ==","signatures":[{"sig":"MEUCIQCdFC5xt74xyojmCI1H+CKH8xrPGCv2MXQ6QNNEUuFO0gIgBVJ5YNSkrO0CD4+YLHmKHyLq8WA2+zwmip/jxP8YPB4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44993},"main":"./dist/index.js","type":"module","_from":"file:astracms-vue-1.0.1.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"private":false,"scripts":{"dev":"tsup src/index.ts --format esm --dts --watch --external vue --external @astracms/core","build":"tsup src/index.ts --format esm --dts --external vue --external @astracms/core","typecheck":"tsc --noEmit"},"_npmUser":{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"},"_resolved":"/tmp/1a6dcfd9358e0e58534145978545fbb3/astracms-vue-1.0.1.tgz","_integrity":"sha512-95RsdVyZxfjGAiiNHRyzkfOhJRllIB+WlG0nwpOKEg9gFg0VHNKVk7jVBKidkpsyL44vnREtmRAgnDeOBuRPPQ==","repository":{"url":"git+https://github.com/astracms/astracms.git","type":"git","directory":"packages/vue"},"_npmVersion":"10.9.4","description":"Vue 3 composables for AstraCMS data fetching","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@astracms/core":"1.0.0"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.0","tsup":"^8.3.0","typescript":"^5.7.2"},"peerDependencies":{"vue":"^3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/vue_1.0.1_1765515692374_0.5576319815880311","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@astracms/vue","version":"1.0.2","keywords":["vue","vue3","composables","astracms","cms","headless-cms","blog"],"author":{"name":"AstraCMS"},"license":"MIT","_id":"@astracms/vue@1.0.2","maintainers":[{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"}],"homepage":"https://github.com/astracms/astracms#readme","bugs":{"url":"https://github.com/astracms/astracms/issues"},"dist":{"shasum":"d5c384c8760afd0f954ef42f76f960c0557e629b","tarball":"https://registry.npmjs.org/@astracms/vue/-/vue-1.0.2.tgz","fileCount":5,"integrity":"sha512-sNoBhDtVS6whXMdYTU10lmxea6csx5xXQ/5NAmXzhaHA1P8EBdXL25jFizhF6OV36OqnqQpIyC8B7fV8iXCCQA==","signatures":[{"sig":"MEUCIEl+XX/bPOuGFQgppfFw11XOJUXWduT3YJt8ZjEOOVPEAiEAicJCAjCs6ULO7tw7TZWZSnhEcpJs5PVVaH2Pc7d59UQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":44993},"main":"./dist/index.js","type":"module","_from":"file:astracms-vue-1.0.2.tgz","types":"./dist/index.d.ts","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"private":false,"scripts":{"dev":"tsup src/index.ts --format esm --dts --watch --external vue --external @astracms/core","build":"tsup src/index.ts --format esm --dts --external vue --external @astracms/core","typecheck":"tsc --noEmit"},"_npmUser":{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"},"_resolved":"/tmp/2d67a714871d6382789b1766a9ea0d64/astracms-vue-1.0.2.tgz","_integrity":"sha512-sNoBhDtVS6whXMdYTU10lmxea6csx5xXQ/5NAmXzhaHA1P8EBdXL25jFizhF6OV36OqnqQpIyC8B7fV8iXCCQA==","repository":{"url":"git+https://github.com/astracms/astracms.git","type":"git","directory":"packages/vue"},"_npmVersion":"10.9.4","description":"Vue 3 composables for AstraCMS data fetching","directories":{},"_nodeVersion":"22.21.1","dependencies":{"@astracms/core":"1.0.2"},"_hasShrinkwrap":false,"devDependencies":{"vue":"^3.5.0","tsup":"^8.3.0","typescript":"^5.7.2"},"peerDependencies":{"vue":"^3.3.0"},"_npmOperationalInternal":{"tmp":"tmp/vue_1.0.2_1765567271009_0.005213414720821596","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@astracms/vue","version":"1.0.3","description":"Vue 3 composables for AstraCMS data fetching","type":"module","private":false,"exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js"}},"main":"./dist/index.js","types":"./dist/index.d.ts","keywords":["vue","vue3","composables","astracms","cms","headless-cms","blog"],"author":{"name":"AstraCMS"},"license":"MIT","homepage":"https://docs.astracms.dev","peerDependencies":{"vue":"^3.3.0"},"dependencies":{"@astracms/core":"1.0.3"},"devDependencies":{"tsup":"^8.3.0","typescript":"^5.7.2","vue":"^3.5.0"},"scripts":{"build":"tsup src/index.ts --format esm --dts --external vue --external @astracms/core","dev":"tsup src/index.ts --format esm --dts --watch --external vue --external @astracms/core","typecheck":"tsc --noEmit"},"_id":"@astracms/vue@1.0.3","_integrity":"sha512-KrpTbepP7vSABGRx7R/fy80pJEqmz3DU1Rs1fSu4xvfigVqWRYWZoty+SMeatCTRb2ogT05RFHANq2UnADjZQA==","_resolved":"/tmp/09a5e5adbc13ba646058ab9d0bc658d8/astracms-vue-1.0.3.tgz","_from":"file:astracms-vue-1.0.3.tgz","_nodeVersion":"22.21.1","_npmVersion":"10.9.4","dist":{"integrity":"sha512-KrpTbepP7vSABGRx7R/fy80pJEqmz3DU1Rs1fSu4xvfigVqWRYWZoty+SMeatCTRb2ogT05RFHANq2UnADjZQA==","shasum":"8d0dbdbdf892b31d53f70ff50c67c04c2064de36","tarball":"https://registry.npmjs.org/@astracms/vue/-/vue-1.0.3.tgz","fileCount":5,"unpackedSize":44911,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEYCIQDaz1sZu5ER9qJLSDuKbFnvpZsHimocUkVm/mt0t2i1eAIhAK1wntAWJ25J9LXzmfI2rF5tRe7ARMWySoe1FnAwCgG+"}]},"_npmUser":{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"},"directories":{},"maintainers":[{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vue_1.0.3_1765714214827_0.403564335746766"},"_hasShrinkwrap":false}},"time":{"created":"2025-12-07T17:28:27.226Z","modified":"2025-12-14T12:10:15.170Z","0.1.0":"2025-12-07T17:28:27.513Z","1.0.0":"2025-12-12T04:46:59.301Z","1.0.1":"2025-12-12T05:01:32.518Z","1.0.2":"2025-12-12T19:21:11.163Z","1.0.3":"2025-12-14T12:10:14.965Z"},"author":{"name":"AstraCMS"},"license":"MIT","homepage":"https://docs.astracms.dev","keywords":["vue","vue3","composables","astracms","cms","headless-cms","blog"],"description":"Vue 3 composables for AstraCMS data fetching","maintainers":[{"name":"kalana.kt","email":"e19198@eng.pdn.ac.lk"}],"readme":"# @astracms/vue\n\nVue 3 composables for AstraCMS data fetching.\n\n## Installation\n\n```bash\nnpm install @astracms/vue\n# or\npnpm add @astracms/vue\n```\n\n## Usage\n\n### Setup with Plugin\n\n```ts\n// main.ts\nimport { createApp } from 'vue';\nimport { createAstraCMSPlugin } from '@astracms/vue';\nimport App from './App.vue';\n\nconst app = createApp(App);\n\napp.use(createAstraCMSPlugin({\n  apiKey: import.meta.env.VITE_ASTRACMS_API_KEY,\n}));\n\napp.mount('#app');\n```\n\n### Or with Provide/Inject\n\n```vue\n<!-- App.vue -->\n<script setup>\nimport { provideAstraCMS } from '@astracms/vue';\n\nprovideAstraCMS({\n  apiKey: import.meta.env.VITE_ASTRACMS_API_KEY,\n});\n</script>\n```\n\n### Using Composables\n\n```vue\n<script setup>\nimport { usePosts, usePost, useSearch } from '@astracms/vue';\nimport { ref } from 'vue';\n\n// Fetch all posts\nconst { data: posts, loading, error } = usePosts();\n\n// With filters\nconst { data: techPosts } = usePosts({\n  categories: ['technology'],\n  format: 'html',\n});\n\n// Search with debounce\nconst query = ref('');\nconst { data: results } = useSearch(query);\n</script>\n\n<template>\n  <div v-if=\"loading\">Loading...</div>\n  <div v-else-if=\"error\">Error: {{ error.message }}</div>\n  <ul v-else>\n    <li v-for=\"post in posts\" :key=\"post.id\">\n      {{ post.title }}\n    </li>\n  </ul>\n</template>\n```\n\n## API\n\n### Plugin\n\n- `createAstraCMSPlugin(config)` - Vue plugin for global setup\n- `provideAstraCMS(config)` - Provide client to child components\n\n### Composables\n\nAll return `{ data, loading, error, refetch }`:\n\n- `usePosts(options?)` - Fetch posts with filtering\n- `usePost(slug, options?)` - Fetch single post (supports reactive slug)\n- `useCategories()` - Fetch all categories\n- `useTags()` - Fetch all tags\n- `useAuthors()` - Fetch all authors\n- `useSearch(query, options?)` - Search with debounce (supports ref)\n\n## License\n\nMIT\n","readmeFilename":"README.md"}