{"_id":"@abijs/vite","name":"@abijs/vite","dist-tags":{"latest":"0.0.0"},"versions":{"0.0.0":{"name":"@abijs/vite","type":"module","license":"MIT","version":"0.0.0","description":"A Vite.js plugin for integrating the Abi.js framework with modern frontend tooling.","author":{"name":"Sigui Kessé Emmanuel","email":"siguici@proton.me"},"repository":{"type":"git","url":"git+https://github.com/abi-js/abi.git","directory":"packages/@abijs-vite"},"homepage":"https://abi.js.org","publishConfig":{"access":"public"},"bugs":{"url":"https://github.com/abi-js/abi/issues"},"types":"./dist/index.d.ts","main":"./dist/index.cjs","module":"./dist/index.js","exports":{".":{"types":"./dist/index.d.ts","import":"./dist/index.js","require":"./dist/index.cjs","default":"./dist/index.js"},"./package.json":"./package.json"},"keywords":["abi","abijs","abi.js","abi-vite","vite","vitejs","vite-plugin"],"engines":{"node":"^18.0.0 || ^20.0.0 || >=22.0.0"},"peerDependencies":{"vite":"^5.0.0 || ^6.0.0"},"devDependencies":{"@types/bun":"^1.2.19","@types/node":"^24.1.0","rollup":"^4.45.1","tsup":"^8.5.0","typescript":"^5.8.3","vite":"^7.0.6","vitest":"^3.2.4"},"dependencies":{"picocolors":"^1.1.1","vite-plugin-full-reload":"^1.2.0"},"scripts":{"check":"tsc --noEmit","build":"tsup-node --env.NODE_ENV production && cp src/index.html dist/","start":"tsup-node --env.NODE_ENV development --watch","test":"vitest --run --passWithNoTests"},"_id":"@abijs/vite@0.0.0","_integrity":"sha512-qsuCbSjGfiZRa8CG+imLHw9NxDtwh1tV4LRDgvuXBK7YKu8TBeWrQ1OQmEsYCGIA35bGSI6KA2OmoXy5iRouPw==","_resolved":"/tmp/829f3a0e6d5fa8da242a406bd0b820b0/abijs-vite-0.0.0.tgz","_from":"file:abijs-vite-0.0.0.tgz","_nodeVersion":"22.17.1","_npmVersion":"10.9.2","dist":{"integrity":"sha512-qsuCbSjGfiZRa8CG+imLHw9NxDtwh1tV4LRDgvuXBK7YKu8TBeWrQ1OQmEsYCGIA35bGSI6KA2OmoXy5iRouPw==","shasum":"005a4fba229e031279bfbd7913847365d6296045","tarball":"https://registry.npmjs.org/@abijs/vite/-/vite-0.0.0.tgz","fileCount":8,"unpackedSize":33697,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCID2lozgV9dXRF1X7kAY7qO7sG6bONfZ7RORTLnWOe9OLAiEA4L95/ONX+cK+V4KgoCKFK0q9SshQNV0gHPI3Izt4C/0="}]},"_npmUser":{"name":"siguici","email":"siguici@proton.me"},"directories":{},"maintainers":[{"name":"siguici","email":"siguici@proton.me"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/vite_0.0.0_1753469596582_0.33798556652270606"},"_hasShrinkwrap":false}},"time":{"created":"2025-07-25T18:53:16.507Z","0.0.0":"2025-07-25T18:53:16.743Z","modified":"2025-07-25T18:53:17.014Z"},"maintainers":[{"name":"siguici","email":"siguici@proton.me"}],"description":"A Vite.js plugin for integrating the Abi.js framework with modern frontend tooling.","homepage":"https://abi.js.org","keywords":["abi","abijs","abi.js","abi-vite","vite","vitejs","vite-plugin"],"repository":{"type":"git","url":"git+https://github.com/abi-js/abi.git","directory":"packages/@abijs-vite"},"author":{"name":"Sigui Kessé Emmanuel","email":"siguici@proton.me"},"bugs":{"url":"https://github.com/abi-js/abi/issues"},"license":"MIT","readme":"# Abi's Vite Plugin 🔥\n\n**Abi's Vite Plugin** is a [Vite.js](https://vitejs.dev/) plugin\ndesigned to enhance the development experience\nof projects built with the [Abi.js framework](https://abi.js.org/).\n\n## ✨ Features\n\n- 🔄 Seamless integration of Abi with Vite.\n- ⚡ Hot Module Replacement (HMR) support.\n- 🚀 Efficient build process optimized for Abi projects.\n\n## 📦 Installation\n\nUsing npm:\n\n```sh\nnpm install @abijs/vite --save-dev\n```\n\nUsing pnpm:\n\n```sh\npnpm add @abijs/vite --save-dev\n```\n\nUsing yarn:\n\n```sh\nyarn add @abijs/vite --dev\n```\n\nUsing Bun:\n\n```sh\nbun add @abijs/vite --dev\n```\n\nUsing Deno:\n\n```sh\ndeno add npm:@abijs/vite\n```\n\n## ⚙️ Usage\n\nAdd `@abijs/vite` to your `vite.config.js` or `vite.config.ts`:\n\n```js\nimport { defineConfig } from 'vite';\nimport abi from '@abijs/vite';\n\nexport default defineConfig({\n  plugins: [abi('src/assets/main.js')],\n});\n```\n\n## 🔧 Configuration\n\nThe plugin requires you to specify the entry points of your application.\nThese can be JavaScript or CSS files, as well as preprocessed language elements\nlike TypeScript, JSX, TSX, Sass, etc. You can provide a string, an array of entries,\nor a configuration object as specified below:\n\n```ts\ninterface PluginConfig {\n  /** The path or paths of the entry points to compile. */\n  input: InputOption;\n\n  /** V's public directory. @default 'public' */\n  publicDirectory?: string;\n\n  /** The public subdirectory where compiled assets should be written. @default 'build' */\n  buildDirectory?: string;\n\n  /** The path to the \"hot\" file. @default `${publicDirectory}/hot` */\n  hotFile?: string;\n\n  /** The path of the SSR entry point. */\n  ssr?: InputOption;\n\n  /** The directory where the SSR bundle should be written. @default 'ssr' */\n  ssrOutputDirectory?: string;\n\n  /** Configuration for full page refresh on file changes. @default false */\n  refresh?: boolean | string | string[] | RefreshConfig | RefreshConfig[];\n\n  /** Transform the code while serving. */\n  transformOnServe?: (code: string, url: DevServerUrl) => string;\n}\n\ninterface RefreshConfig {\n  paths: string[];\n  config?: FullReloadConfig;\n}\n```\n\nExample usage:\n\n```js\nabi({\n  input: ['src/design/global.css', 'src/logic/main.js'],\n  publicDirectory: 'static',\n  buildDirectory: 'dist',\n  hotFile: 'static/hot',\n  ssr: 'src/ssr.ts',\n  ssrOutputDirectory: 'server',\n  refresh: ['src/**'],\n});\n```\n\n## 🤝 Contribution\n\nWe welcome contributions! If you find an issue or have an idea for improvement,\nfeel free to submit a pull request or open an issue.\n\n## 📜 License\n\nThis project is licensed under the MIT License.\nSee the [LICENSE](./LICENSE) file for details.\n","readmeFilename":"README.md","_rev":"1-49bae1fcca72d4ab1cb6dd9ee12a962f"}