Newsletter
Join the Community
Subscribe to our newsletter for the latest news and updates
Opinionated Vite + Vue 3 starter template with auto-imports, UnoCSS, PWA, i18n, and SSG

A full-stack Next.js TypeScript template focused on functionality over UI, featuring Zustand, TanStack Query, and ESLint 9 support.
Vitesse is an opinionated Vite starter template for building Vue 3 applications, pre-configured with a curated toolchain including file-based routing, auto-importing, UnoCSS, PWA support, i18n, and static-site generation.
Vitesse is a highly opinionated starter template created by Anthony Fu (antfu) under the antfu-collective organization. It scaffolds a Vue 3 + Vite project with TypeScript, pnpm, and a rich set of pre-integrated plugins so you can begin coding immediately without spending time on configuration. The template accepts your Vue source files and produces a production-ready web app, with a static-site generation (SSG) output via vite-ssg that can be deployed to Netlify with zero configuration. It is optimized for desktop web apps and supports PWA installation.
src/pages, and unplugin-vue-router generates the routes automatically.unplugin-vue-components and unplugin-auto-import let you use components and Vue Composition API functions without writing import statements.vite-plugin-vue-layouts, you can define shared layouts per page in src/layouts.preset-icons allowing class-based icons from any icon set via Iconify.vite-plugin-pwa for offline support and installability.unplugin-vue-i18n and locale files in ./locales for multi-language apps.unplugin-vue-markdown lets you write Markdown that becomes Vue components, with Shiki syntax highlighting.vite-ssg generates static sites, beasties inlines critical CSS, and vite-ssg-sitemap creates sitemaps.Vitesse targets Vue developers who want a batteries-included starting point without the usual configuration overhead. It suits indie hackers prototyping full-featured web apps, teams adopting a consistent coding style (ESLint with @antfu/eslint-config), and open-source maintainers creating their own starter templates. Developers needing SSG, PWA, or i18n out of the box will find the integrations already wired up.
Start by cloning the template with npx degit antfu-collective/vitesse my-vitesse-app, then install dependencies with pnpm i. Run pnpm dev to start the development server at http://localhost:3333, or pnpm build to produce a static dist folder. Deploy by linking your repository to Netlify, or build a Docker image with the included Dockerfile.
Vitesse requires Node 14.18 or higher, as stated in the README. Make sure your environment meets this requirement before using pnpm commands.
You have two options: click the "Create a repo from this template" button on GitHub, or clone locally with npx degit antfu-collective/vitesse my-vitesse-app and then run pnpm i to install dependencies.
The development server runs on port 3333 by default. After running pnpm dev, visit http://localhost:3333 in your browser.
Yes, Vitesse integrates vite-plugin-pwa, so your app can be installed on devices and work offline out of the box. The template is configured for PWA from the start.
The README notes that Vitesse was created during the early transition of Vue 3 and Vite, and that maintainers now recommend Nuxt for better long-term experience. The template still serves as a reference but receives slower updates.