VueVite启动器

vitesse-ssr-template — Vue 启动器模板

作者 frandiox

基于 Vitesse 的 Vue + Vite 启动模板,通过 vite-ssr 在 Node.js 中实现服务端渲染,并预置了文件路由、组件自动导入、布局、PWA、Windi CSS、i18n 与 Markdown 等约定。

看看你的网站会是什么样

浏览真实页面截图,比较内容排版与手机效果。点击下方缩略图切换,放大查看整页细节。

3 个预览视图
桌面端首页1 / 3
桌面端截图首屏预览

由服务器浏览器实际访问页面后截取。

全部页面与视图 3

截图用于了解视觉与布局,交互效果请以实际项目为准。

采集于 2026-10-02查看来源

值得关注的模板亮点

从已有项目资料中,快速了解它的特点。

01

通过 vite-ssr 在 Node.js 中实现 Vue 应用的服务端渲染

02

基于文件系统的路由与页面布局系统

03

组件自动导入,无需手动注册

04

内置 PWA、Windi CSS、Iconify 图标与 Vue I18n

05

支持 Markdown 作为组件及在 Markdown 中使用组件

06

附带 Vercel 部署配置与本地预览脚本

模板详细介绍

vitesse-ssr-template 是 frandiox 维护的 Vue + Vite 启动模板,在 antfu 的 Vitesse 基础上接入 vite-ssr,为 Node.js 环境提供 SSR 能力。仓库采用 MIT 许可,附带 Vercel 演示站,可用于快速搭建带服务端渲染的 Vue 应用。

模板预置了较完整的前端工程约定:基于文件系统的路由(vite-plugin-pages)、页面布局(vite-plugin-vue-layouts)、组件自动导入(vite-plugin-components)、PWA(vite-plugin-pwa)、按需生成的 Windi CSS、Iconify 图标、Vue I18n 国际化、Markdown 支持、TypeScript 与 ESLint 配置。开发时可用 pnpm dev 启动 SSR 模式,或用 pnpm dev:spa 仅运行 SPA。

使用前需注意:模板作者明确说明其配置带有较强主观偏好,README 也列出了社区维护的变体(vitesse-lite、vitesse-addons)供不同偏好选择。模板要求使用 pnpm 作为包管理器,部署路径以 Vercel 为主,构建产物会部分移动到 serverless 目录。仓库最后更新于 2021 年,依赖版本与工具链状态需以实际依赖清单为准。

VueVite启动器

适合你的项目吗?

适用场景

  • 需要为 Vue 应用加入服务端渲染的起步项目
  • 希望直接使用文件路由、布局与组件自动导入等约定的新项目
  • 需要 PWA、国际化或 Markdown 内容支持的 Vue 站点
  • 计划部署到 Vercel 并复用其 serverless 配置的工程

适合人群

  • 熟悉 Vue 与 Vite、接受较强工程约定的开发者
  • 使用 pnpm 作为包管理器的团队
  • 需要 SSR 且以 Node.js 为运行环境的项目
  • 希望以 Vercel 为主要部署目标的站点

上手与定制指南

结合仓库当前版本的说明,按下面的资料检查内容、配置与运行要求。

  1. 1

    可通过 GitHub 模板生成仓库,或用 npx degit frandiox/vitesse-ssr-template my-vitesse-app 克隆到本地

  2. 2

    需先安装 pnpm,再执行 pnpm i 安装依赖

  3. 3

    使用 pnpm dev 启动 SSR 开发模式,pnpm dev:spa 启动无 SSR 的 SPA 模式

  4. 4

    构建使用 pnpm build,产物在 dist,部分文件会移动到 serverless 供部署

  5. 5

    使用前按 README 检查清单更新 package.json 名称、LICENSE 作者、App.vue 标题、favicon,并清理示例路由与 README

查看仓库使用说明

授权与来源资料

使用条件与限制

免费使用 · 保留许可声明

本次收录的是公开仓库中采用 MIT 许可的免费版本;免费范围为该版本代码,不代表外部服务或第三方素材免费。

使用时需要遵守

  • 允许免费使用、修改、商用和分发该版本代码。
  • 分发代码副本或实质性部分时,保留原作者版权声明和完整 MIT 许可声明。
  • 代码按现状提供;担保与责任限制以原许可证及适用法律为准。

额外费用与待核对事项

  • 使用该模板需以 pnpm 作为包管理器;若未安装 pnpm,需先通过 npm 全局安装 pnpm 才能安装依赖。
  • README 给出的部署流程依赖 Vercel 平台及其 CLI,需注册 Vercel 账号并安装其命令行工具;部署到该平台可能受其服务条款与费用政策约束。
  • 模板仓库的 .github 目录包含资助(funding)信息,使用前需按检查清单移除,以免保留原作者的赞助配置。
  • 使用模板时需按检查清单将 LICENSE 中的作者署名改为自己的信息,以符合 MIT 许可对版权声明保留与替换的要求。
  • 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
  • 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据

Permission is hereby granted, free of charge

许可证原文

pnpm i # If you don't have pnpm installed, run: npm install -g pnpm

README 原文

Go to [Vercel](https://vercel.com) and install its CLI. Then:

README 原文

Remove the `.github` folder which contains the funding info

README 原文

Change the author name in `LICENSE`

README 原文
https://github.com/frandiox/vitesse-ssr-template/blob/master/LICENSEhttps://github.com/frandiox/vitesse-ssr-template/blob/master/README.md

DeepSeek 根据仓库许可证和 README 整理 ·2026-10-02。结果仅覆盖已读取资料,依赖、图片、字体及后续条款变更以各自原文为准。

项目核对记录与介绍依据

模板资料

来源平台
GitHub
资料与维护参考分
资料较完整 · 81 / 100
技术栈
Vue · Vite
网站类型
启动器
这个分数如何计算

本站按许可资料(最高30分)、演示链接(12分)、预览图(10分)、Star数(15分)、记录的维护时间(15分)、描述完整度(8分)、功能记录(5分)和分类资料(5分)计算。它不是代码、安全或性能测试,也不是 Google 评分;有链接不代表已实测可用。

这个项目需要核对什么

记录的仓库更新时间
2021-11-30
截图检查日期
2026-10-02

已收录演示链接。请用你的内容与屏幕尺寸检查;有演示不代表表单、认证或支付已经可用。

目录记录的主要技术栈是 Vue。请通过依赖清单和锁文件核对实际版本与托管要求。这些说明基于收录资料,不代表代码审计或部署实测。

查看具体选型方法 →

介绍的制作与核对状态

介绍由 AI 辅助整理目录与仓库资料。仓库作者不等于这篇介绍的审核者。

已完成服务器许可规则与 AI 来源核对;未经过人工编辑审核。

查看当时使用的来源资料

SHA-256: b0d1e884e0abbc9250241e57055ebb8b47072e67246ffcc9c80427c8afcbfc1d

2026-10-02T11:38:40.296Z

来源文件 / 仓库
# Vitesse SSR

> Vue + Vite + SSR template based on [@antfu](https://github.com/antfu)'s [Vitesse](https://github.com/antfu/vitesse) with [`vite-ssr`](https://github.com/frandiox/vite-ssr).

<p align='center'>
<a href="https://vitesse-ssr.vercel.app/">Live Demo</a>
</p>

## Features

- ⚡️ [Vue 3](https://github.com/vuejs/vue-next), [Vite 2](https://github.com/vitejs/vite), [pnpm](https://pnpm.js.org/), [ESBuild](https://github.com/evanw/esbuild) - born with fastness

- 🗂 [File based routing](./src/pages)

- 📦 [Components auto importing](./src/components)

- 📑 [Layout system](./src/layouts)

- 📲 [PWA](https://github.com/antfu/vite-plugin-pwa)

- 🎨 [Windi CSS](https://github.com/windicss/windicss) - on-demand Tailwind CSS with speed

- 😃 [Use icons from any icon sets, with no compromise](./src/components)

- 🌍 [I18n ready](./src/i18n/translations)

- 🗒 [Markdown Support](https://github.com/antfu/vite-plugin-md)

- 🔥 Use the [new `<script setup>` style](https://github.com/vuejs/rfcs/pull/227)

- 🖨 Server-side rendering (SSR) in Node.js via [vite-ssr](https://github.com/frandiox/vite-ssr)

- 🦾 TypeScript, of course

- ☁️ Deploy on Vercel, minimal [config](./serverless/vercel.json)

<br>

## Pre-packed

### UI Frameworks

- [Windi CSS](https://github.com/windicss/windicss) (On-demand [TailwindCSS](https://tailwindcss.com/)) - lighter and faster, with a bundle additional features!
  - [Windi CSS Typography](https://windicss.netlify.app/guide/plugins.html#typography) - similar to [Tailwind CSS Typography](https://github.com/tailwindlabs/tailwindcss-typograph) but for Windi CSS

### Icons

- [Iconify](https://iconify.design) - use icons from any icon sets [🔍Icônes](https://icones.netlify.app/)
- [`vite-plugin-icons`](https://github.com/antfu/vite-plugin-icons) - icons as Vue components

### Plugins

- [Vue Router](https://github.com/vuejs/vue-router)
  - [`vite-plugin-pages`](https://github.com/hannoeru/vite-plugin-pages) - file system based routing
  - [`vite-plugin-vue-layouts`](https://github.com/JohnCampionJr/vite-plugin-vue-layouts) - layouts for pages
- [`vite-plugin-components`](https://github.com/antfu/vite-plugin-components) - components auto import
- [`vite-plugin-pwa`](https://github.com/antfu/vite-plugin-pwa) - PWA
- [`vite-plugin-windicss`](https://github.com/antfu/vite-plugin-windicss) - WindiCSS support
- [`vite-plugin-md`](https://github.com/antfu/vite-plugin-md) - Markdown as components / components in Markdown
  - [`markdown-it-prism`](https://github.com/jGleitz/markdown-it-prism) - [Prism](https://prismjs.com/) for syntax highlighting
  - [`prism-theme-vars`](https://github.com/antfu/prism-theme-vars) - customizable Prism.js theme using CSS variables
- [Vue I18n](https://github.com/intlify/vue-i18n-next) - Internationalization
  - [`vite-plugin-vue-i18n`](https://github.com/intlify/vite-plugin-vue-i18n) - Vite plugin for Vue I18n
- [VueUse](https://github.com/antfu/vueuse) - collection of useful composition APIs
- [`@vueuse/head`](https://github.com/vueuse/head) - manipulate document head reactively

### Coding Style

- Use Composition API with [`<script setup>` SFC](https://github.com/vuejs/rfcs/pull/227)
- [ESLint](https://eslint.org/) with [@antfu/eslint-config-vue](https://github.com/antfu/eslint-config), single quotes, no semi.

### Dev tools

- [TypeScript](https://www.typescriptlang.org/)
- [pnpm](https://pnpm.js.org/) - fast, disk space efficient package manager
- [`vite-ssr`](https://github.com/frandiox/vite-ssr) - Server-side rendering
- [Vercel](https://vercel.com/) - deploy
- [VS Code Extensions](./.vscode/extensions.json)
  - [Volar](https://marketplace.visualstudio.com/items?itemName=johnsoncodehk.volar)
  - [Iconify IntelliSense](https://marketplace.visualstudio.com/items?itemName=antfu.iconify)
  - [i18n Ally](https://marketplace.visualstudio.com/items?itemName=lokalise.i18n-ally)
  - [ESLint](https://marketplace.visualstudio.com/items?itemName=dbaeumer.vscode-eslint)

## Variations

As this template is strongly opinionated, the following provides a curated list for community maintained variations with different preferences and feature sets. Check them out as well. PR to add yours are also welcome!

- [vitesse-lite](https://github.com/kn0wn/vitesse-lite) by [@kn0wn](https://github.com/kn0wn)
- [vitesse-addons](https://github.com/JohnCampionJr/vitesse-addons) by [johncampionjr](https://github.com/johncampionjr) - additional options for integrations, including [Prettier](https://prettier.io) and [Storybook](https://storybook.js.org)

## Try it now!

### GitHub Template

[Create a repo from this template on GitHub](https://github.com/frandiox/vitesse-ssr-template/generate).

### Clone to local

If you prefer to do it manually with the cleaner git history

```bash
npx degit frandiox/vitesse-ssr-template my-vitesse-app
cd my-vitesse-app
pnpm i # If you don't have pnpm installed, run: npm install -g pnpm
```

## Checklist

When you use this template, try follow the checklist to update your info properly

- [ ] Add a `name` field in `package.json`
- [ ] Change the author name in `LICENSE`
- [ ] Change the title in `App.vue`
- [ ] Change the favicon in `public`
- [ ] Remove the `.github` folder which contains the funding info
- [ ] Clean up the READMEs and remove routes

And, enjoy :)

## Usage

### Development

Just run and visit http://localhost:3333

```bash
pnpm dev # SSR development
pnpm dev:spa # SPA without SSR
```

### Build

To build the App, run

```bash
pnpm build
```

And you will see the generated files in `dist`, and some of these files will be moved to `serverless` for deployment.

### Deploy on Vercel

Go to [Vercel](https://vercel.com) and install its CLI. Then:

```bash
pnpm preview # Simulate Vercel environment locally
pnpm deploy
pnpm deploy:prod
```

## Why

I have created several Vite apps recently. Setting the configs up is kinda the bottleneck for me to make the ideas simply come true within a very short time.

So I made this starter template for myself to create apps more easily, along with some good practices that I have learned from making those apps. It's strongly opinionated, but feel free to tweak it or even maintains your own forks. [(see community maintained variation forks)](#variations)
反馈内容错误

看看同类模板

对比同技术栈与用途的模板,找到更适合的视觉与内容结构。