@fluojs/vite
English 한국어
Vite plugin and build utilities for fluo projects.
Table of Contents
Installation
npm install --save-dev @fluojs/vite vite @babel/core @babel/plugin-proposal-decorators @babel/preset-typescript
@babel/core >=7.26.0, @babel/plugin-proposal-decorators >=7.28.0, @babel/preset-typescript >=7.27.0, and vite >=6.2.0 are peer dependencies because fluoDecoratorsPlugin() resolves the Babel decorator plugin and TypeScript preset when Vite transforms source files.
When to Use
- when a fluo application uses Vite to build TypeScript that contains TC39 standard decorators
- when starter projects should import the maintained decorator transform instead of copying Babel configuration inline
- when future Vite-facing fluo build utilities need a dedicated public package boundary
Quick Start
import { fluoDecoratorsPlugin } from '@fluojs/vite';
import { defineConfig } from 'vite';
export default defineConfig({
plugins: [fluoDecoratorsPlugin()],
build: {
ssr: 'src/main.ts',
target: 'node20',
},
});
The plugin transforms .ts application files with Babel using the 2023-11 decorators proposal and @babel/preset-typescript. It strips Vite query suffixes before deciding the file boundary, then skips declaration files, *.test.ts or *.spec.ts files, node_modules, and non-.ts files so generated Vitest test files continue to use the dedicated @fluojs/testing/vitest transform path.
Public API
fluoDecoratorsPlugin() — creates the Vite plugin used by generated fluo starter projects.
Related Packages
@fluojs/cli: generates starter projects that import this Vite plugin.
@fluojs/testing: provides the Vitest-specific decorator transform entrypoint.
Example Sources
packages/vite/src/index.ts
packages/vite/src/decorators-plugin.ts
packages/cli/src/new/scaffold.ts