
Security News
/Company News
Socket Is Sponsoring Composer and Packagist
Socket has joined the new Composer and Packagist sponsorship program as a launch sponsor, supporting the team that keeps PHP's package ecosystem secure.
@fluojs/vite
Advanced tools
English 한국어
Vite plugin and build utilities for fluo projects.
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() loads Babel, resolves the Babel decorator plugin and TypeScript preset, and reports missing peer dependencies from the Vite transform hook when Vite transforms source files.
@fluojs/vite is a Node.js package with an engines.node floor of >=20.0.0. Generated non-Deno starters pair that Node baseline with Vite >=6.2.0 and the Babel peers listed above.
The package root is safe to import before Babel is installed or resolved: importing @fluojs/vite and creating fluoDecoratorsPlugin() do not load @babel/core. Babel is loaded lazily only from Vite's transform hook for eligible application .ts files, and missing Babel peers are reported from that transform boundary instead of plugin creation.
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. Importing @fluojs/vite or creating fluoDecoratorsPlugin() does not load @babel/core; missing Babel peers are surfaced as transform-time diagnostics for the source file Vite is transforming.
@fluojs/vite owns application build transforms, not Vitest test transforms. Generated non-Deno starters keep the file-boundary split explicit:
vite.config.ts imports fluoDecoratorsPlugin() from @fluojs/vite..ts files, lazily loads Babel on the first eligible transform, and runs @babel/plugin-proposal-decorators with { version: '2023-11' } plus @babel/preset-typescript.vitest.config.ts imports fluoBabelDecoratorsPlugin() from @fluojs/testing/vitest, so *.test.ts and *.spec.ts files stay on the testing-specific transform path.Keep those boundaries separate when customizing generated projects. Re-enabling experimentalDecorators, relying on direct esbuild decorator handling, or routing test files through the Vite application transform is outside the documented fluo support contract.
fluoDecoratorsPlugin() — creates the Vite plugin used by generated fluo starter projects.@fluojs/cli: generates starter projects that import this Vite plugin.@fluojs/testing: provides the Vitest-specific decorator transform entrypoint.packages/vite/src/index.tspackages/vite/src/decorators-plugin.tspackages/cli/src/new/scaffold.tsFAQs
Vite plugin and build utilities for fluo projects.
The npm package @fluojs/vite receives a total of 17 weekly downloads. As such, @fluojs/vite popularity was classified as not popular.
We found that @fluojs/vite demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Security News
/Company News
Socket has joined the new Composer and Packagist sponsorship program as a launch sponsor, supporting the team that keeps PHP's package ecosystem secure.

Research
/Security News
Benign-looking npm packages split malicious functionality across a dependency chain that deploys a cross-platform RAT targeting Alibaba developers.

Research
/Security News
Two Joyfill npm beta releases contain an import-time implant that uses blockchain transactions to retrieve a remote-access trojan.