Skip to content

simsustech/vitrify

Repository files navigation

Vitrify

Create full-stack web applications and websites with Vite as the backbone.

Vitrify allows for preconfigured advanced usage of Vite, which enables you to easily develop and build full-stack web applications or static websites. Vitrify does not aim to be a framework but instead is just a powerful extension of Vite. It provides you all the required configuration options and tools to build your web applications in any way you desire.

Get started

pnpm create vitrify
cd <project-name>
pnpm i
pnpm run dev

Features

  • 🦾 Build and development modes:
    • CSR: Client side rendered applications
    • SSR: Server side rendered applications
    • SSG: Static site generator
    • Fastify: Uses the onSetup hooks to setup the Fastify server with HMR
  • 🎈 Minification of ESM files.
  • 📥 Bundle your server (backend) code.
  • ✨ Hooks:
    • onSetup: Sets up your Fastify server directly after initializing.
    • onAppCreated: Functions which run after the application has been created.
    • onAppMounted: Functions which run in the onMounted hook of the application.
    • onRendered: Functions which run after rendering the application (SSR).
    • onTemplateRendered: Functions which run after rendering the template (SSR)
  • Vitrify plugins: allows for Vite plugin configuration based on the build mode and dynamic Vite configuration changes.
  • 🔥 Fastify SSR plugin: allows you to integrate a server-side rendered web application into your Fastify server. Handles development and build modes automatically.
  • ⚡ Preconfigured Vite plugins:
  • env: load environment variables from any environment (Node, Vite or Docker).
  • render: render files with Handlebars.
  • scrypt: hash and compare passwords with scrypt.

Supported frontend frameworks

Framework authors

Vitrify is greatly inspired by Quasar and provides complete support for all Quasar UI features without the need for Quasar CLI. Have a look at the QuasarPlugin to see what is possible with Vitrify as your build tool.

Packages

Package Version
vitrify vitrify version
create-vitrify create-vitrify version
tools tools version