driftjs-vite-plugin
v0.0.7
Published
Vite plugin for build-time compilation of DriftJS Single File Components (.drift) into executable ESM bytecode modules.
Maintainers
Readme
driftjs-vite-plugin
Build-time Vite plugin for compiling DriftJS
.driftSingle File Components (SFCs).
Transforms .drift component files at build time directly into ES modules exporting compiled register VM bytecode and execution render functions.
Installation
pnpm add -D driftjs-vite-plugin vite
# or
npm install -D driftjs-vite-plugin viteConfiguration (vite.config.ts)
import { defineConfig } from 'vite';
import { driftPlugin } from 'driftjs-vite-plugin';
export default defineConfig({
plugins: [
driftPlugin({
include: /\.drift$/,
}),
],
});How It Works
- Intercepts import requests for
.driftfiles during Vite'stransformhook. - Invokes
driftjs-compilerto parse, analyze, and generate VM bytecode. - Serializes the
Uint32Arraybytecode stream and executable JavaScript thunks. - Outputs an ESM module exporting
{ program, render, default: component }.
TypeScript Support
Add module declaration for .drift files in your env.d.ts or drift.d.ts:
declare module '*.drift' {
import type { DriftComponent } from 'driftjs-dom';
const component: DriftComponent;
export default component;
}License
MIT © Hrutav Modha
