Skip to content

Releases: fastify/fastify-vite

@fastify/[email protected]

04 Aug 17:23
0d42c83

Choose a tag to compare

This release contains a new vite plugin option: useRelativePaths. See #283. This option is useful if you run your build step in a separate environment and then copy the built files into a different machine, such as a Docker container. It will be made the default in a future release.

@fastify/[email protected]

03 May 20:31
76daca3

Choose a tag to compare

This patch release removes all optionalDependencies from @fastify/vite.

Reason: npm installs all optional dependencies by default even if you don't plan on using them, which is problematic.

@fastify/[email protected]

01 May 05:46
1eddda3

Choose a tag to compare

This patch release includes the following fix:

@fastify/[email protected]

01 May 05:34
02bea8b

Choose a tag to compare

This new minor release includes:

And adds a new react-typescript starter.

Many thanks to @zanmato, @onlywei and @jean-michelet to their extensive work on this release.

@fastify/[email protected]

30 Apr 19:25
fe0cc35

Choose a tag to compare

This release contains a patch fix that addresses vitest failing in certain CI setups.

@fastify/[email protected]

30 Apr 04:39
07bbb25

Choose a tag to compare

This new minor release includes:

And adds a new vue-typescript starter.

Many thanks to @zanmato, @onlywei and @jean-michelet to their extensive work on this release.

@fastify/[email protected]

29 Apr 21:27
c312e57

Choose a tag to compare

This patch release contains a minor fix for the low-level TypeScript SPA examples.

Many thanks to @onlywei for swiftly addressing it.

@fastify/[email protected]

29 Apr 05:18
4a1f454

Choose a tag to compare

This new minor release contains extensive changes to @fastify/vite's core to:

This unlocks easier TypeScript integration and introduces two new low-level integration TypeScript examples: vue-vanilla-ts and react-vanilla-ts, where src/server.ts is compiled on top of Vite's bundle directly.

└── dist
    ├── vite.config.json <------- Vite production configuration cache
    ├── client <----------------- Vite client environment bundle
    ├── server <----------------- Vite SSR environment bundle
    └── server.js <-------------- Fastify server bundle (compiled from `server.ts`)

This effectively means Vite is responsible for your Vite frontend code, but compilation of your server code is up to your personal choice, be it tsc, tsdown or something else. The rationale for not suggesting a setup where Vite is also responsible for the compilation of server TypeScript code is that Fastify server code doesn't need any of Vite plugins or Vite's highly frontend-optimized build options. It just needs TypeScript transformation. Having HMR for Fastify via Vite's development server would be beneficial, but the setup is fundamentally incompatible, as Vite's internal server is not configurable. That would lead us to run two separate servers, something I've considered non-ideal and most importantly, rather unnecessary.

Maintenance

Perhaps an equally draconian and pragmatic decision: all examples now use zero-config oxlint. I'm just tired of configuring lint, and since LLMs type so much code for us nowadays, I started savoring the moment of removing a semicolon and tab here and there.

The old test.mjs script has been replaced with a new package.mjs script that contains multiple scripts grouped under CLI flags. For project contributors that want to work on renderer packages and starter examples, the prep-for-dev and prep-for-release commands automate some PNPM workspace wrangling.

Acknowledgements

Many thanks to @onlywei and @jean-michelet who actively worked on the new TypeScript examples.

This release wouldn't have been possible without their dedication to this project!

@fastify/[email protected]

19 Apr 05:00

Choose a tag to compare

@fastify/[email protected]

19 Apr 12:39

Choose a tag to compare