NuxtVue启动器

my-nuxt-starter — Nuxt 启动器模板

作者 Archetipo95

基于 Nuxt 与 Vue 的启动器模板,预置 TypeScript、Tailwind CSS、Nuxt UI、Pinia Colada、i18n、Storybook、Vitest 与 Playwright 等集成,采用 MIT 许可。

看看你的网站会是什么样

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

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

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

全部页面与视图 2

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

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

值得关注的模板亮点

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

01

基于 Nuxt 与 Vue,集成 TypeScript 类型检查

02

预置 Tailwind CSS、Nuxt UI、颜色模式、图标、字体与图片优化

03

内置 @nuxtjs/i18n 国际化与 Pinia Colada 异步状态管理

04

包含 Storybook、Vitest 单元测试与 Playwright 端到端测试

05

提供 ESLint、Commitlint、Git Hooks、Lint Staged 与 GitHub Actions 工作流

06

采用 MIT 许可,允许免费使用、修改、商用与分发

模板详细介绍

这是一个面向 Nuxt 4 项目的启动器模板,仓库名为 my-nuxt-starter,作者 Archetipo95,采用 MIT 许可。模板在 Nuxt 与 Vue 基础上预置了较完整的开发与质量工具链,目标是把常见的项目配置提前搭好,减少从零搭建的工作量。

技术集成方面,模板包含 TypeScript 类型检查、Tailwind CSS、Nuxt UI 组件库、颜色模式(深色/浅色)、图标、字体与图片优化、@nuxtjs/i18n 国际化、Pinia Colada 异步状态管理与数据请求、nuxt-security 安全响应头。开发体验方面包含 ESLint、VueUse、Storybook、Vitest 单元测试与 Playwright 端到端测试,以及 Commitlint、Git Hooks、Lint Staged 和 GitHub Actions 工作流。

使用方式为 pnpm 安装依赖后运行开发服务器,脚本覆盖构建、静态生成、预览、单元测试(含覆盖率与 UI)、E2E 测试(含 UI 与代码生成)、Lint 与类型检查。README 中说明 Node 版本以 .nvmrc 为准,并提供了 Pinia Colada 的 useQuery 与 useMutation 示例。

需要注意的限制:README 的路线图显示自定义图标库、覆盖率 GitHub Action 仍在进行中,Zod、Chromatic、Lighthouse 属于计划功能,尚未包含在模板内;Tailwind CSS 的 ESLint 支持被标注为 beta,可能出现误报,可通过修改 eslint.config.mjs 关闭相关规则。仓库星标数较少,采用前建议自行核对依赖与配置是否符合项目需求。

NuxtVue启动器

适合你的项目吗?

适用场景

  • 需要快速搭建 Nuxt 项目骨架并保留完整工具链配置
  • 希望项目一开始就具备单元测试与端到端测试能力
  • 需要国际化、深色模式与组件库等常见 UI 基础能力
  • 团队使用约定式提交与 CI 工作流管理代码质量

适合人群

  • 熟悉 Vue 与 Nuxt 的前端开发者
  • 需要多语言与主题切换能力的项目
  • 重视测试、Lint 与提交规范的团队
  • 希望以 MIT 许可自由修改和商用的使用者

上手与定制指南

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

  1. 1

    Node 版本以仓库 .nvmrc 为准,建议使用 NVM 管理

  2. 2

    包管理器为 pnpm,需先全局安装 pnpm

  3. 3

    执行 pnpm install 安装依赖,pnpm dev 启动开发服务器

  4. 4

    E2E 测试前需运行 pnpm exec playwright install 安装浏览器

  5. 5

    Tailwind CSS 的 ESLint 支持为 beta,如遇误报可修改 eslint.config.mjs 关闭相关规则

查看仓库使用说明

授权与来源资料

使用条件与限制

免费使用 · 保留许可声明

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

使用时需要遵守

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

额外费用与待核对事项

  • Tailwind CSS 的 ESLint 支持目前为 beta,可能产生误报;如遇问题需自行修改 eslint.config.mjs 或临时禁用相关规则。
  • Zod 运行时类型校验属于计划功能,尚未包含在模板中,不可当作现有能力使用。
  • Chromatic 视觉测试属于计划功能,尚未集成,需自行接入。
  • Lighthouse 性能监控属于计划功能,尚未包含在模板内。
  • 自定义图标库仍在进行中,模板未提供项目专属图标集。
  • 覆盖率 GitHub Action 仍在进行中,自动化覆盖率报告尚未提供。
  • 部分功能可能依赖环境变量,使用前需按项目需要自行配置相应变量。
  • 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
  • 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
查看原文依据

Permission is hereby granted, free of charge

许可证原文

ESLint support for Tailwind CSS is currently in beta due to the ongoing development of Tailwind CSS v4. If you encounter any issues or false positives, you can disable this feature by modifying the `eslint.config.mjs` file or temporarily disabling the specific rules.

README 原文

- [ ] **🔍 Zod** - Runtime type validation

README 原文

- [ ] **🎨 Chromatic** - Visual testing

README 原文

- [ ] **🚦 Lighthouse** - Performance monitoring

README 原文

- [ ] **🎨 Custom Icon Library** - Project-specific icons

README 原文

- [ ] **📊 Coverage GitHub Action** - Automated coverage reports

README 原文

Ensure all required environment variables are set

README 原文
https://github.com/Archetipo95/my-nuxt-starter/blob/main/LICENSEhttps://github.com/Archetipo95/my-nuxt-starter/blob/main/README.md

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

项目核对记录与介绍依据

模板资料

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

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

这个项目需要核对什么

记录的仓库更新时间
2025-12-11
截图检查日期
2026-10-03

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

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

查看具体选型方法 →

介绍的制作与核对状态

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

审核声明: [email protected] · 2026-10-04

查看当时使用的来源资料

SHA-256: 8e9dfaa9c06ab4242b123b19ae0e367d54bae6898e5a18c7633585f707216de5

2026-10-03T17:52:05.074Z

来源文件 / 仓库
# 🚀 Martin's Nuxt Starter

> A modern, full-featured Nuxt 4 starter template with TypeScript, Tailwind CSS, and everything you need to build amazing web applications.

[![Nuxt](https://img.shields.io/badge/Nuxt-4.x-00DC82?logo=nuxt.js)](https://nuxt.com/)
[![TypeScript](https://img.shields.io/badge/TypeScript-5.x-3178C6?logo=typescript)](https://www.typescriptlang.org/)
[![Tailwind CSS](https://img.shields.io/badge/Tailwind_CSS-4.x-38B2AC?logo=tailwind-css)](https://tailwindcss.com/)
[![pnpm](https://img.shields.io/badge/pnpm-10.x-F69220?logo=pnpm)](https://pnpm.io/)
[![Lint and Typecheck](https://github.com/Archetipo95/my-nuxt-starter/actions/workflows/code-quality.yaml/badge.svg)](https://github.com/Archetipo95/my-nuxt-starter/actions/workflows/code-quality.yaml)
[![Unit Tests](https://github.com/Archetipo95/my-nuxt-starter/actions/workflows/unit-tests.yml/badge.svg)](https://github.com/Archetipo95/my-nuxt-starter/actions/workflows/unit-tests.yml)

[🌐 **Live Demo**](https://martin-nuxt-starter.netlify.app) • [📖 **Documentation**](#documentation) • [🚀 **Quick Start**](#quick-start)

---

## ✨ Features

### 🎯 **Core Technologies**

- **🔥 Nuxt 4** - The latest version of the Vue.js framework
- **📘 TypeScript** - Full type safety with vue-tsc
- **🍹 Pinia Colada** - Async state management & data fetching
- **🚀 pnpm** - Fast, disk space efficient package manager
- **🎨 Tailwind CSS v4** - Modern utility-first CSS framework
- **⚡ Vite** - Lightning fast build tool
- **🌍 Internationalization** - i18n support with @nuxtjs/i18n

### 🧩 **UI & Components**

- **🎨 Nuxt UI v4** - Beautiful, accessible components
- **🌙 Color Mode** - Dark/light theme support
- **🖼️ Icons** - Comprehensive icon system (@nuxt/icon)
- **🔤 Fonts** - Web font optimization (@nuxt/fonts)
- **🖼️ Images** - Advanced image optimization (nuxt-image)
- **📱 Modals & Toasts** - Ready-to-use overlay components

### 🔧 **Developer Experience**

- **📋 ESLint v9** - Code linting with @nuxt/eslint & @antfu/eslint-config
- **🔄 VueUse v13** - Essential Vue composition utilities
- **📚 Storybook** - Component development and documentation
- **🧪 Vitest** - Fast unit testing with coverage
- **🎭 Playwright** - End-to-end testing
- **🔒 Security** - Built-in security headers (nuxt-security)

### 🚀 **CI/CD & Quality**

- **📝 Commitlint** - Conventional commit messages
- **🪝 Git Hooks** - Pre-commit validation
- **🔍 Lint Staged** - Lint only changed files
- **⚙️ GitHub Actions** - Automated testing and deployment

---

## 🚀 Quick Start

### Prerequisites

- **Node.js** (see `.nvmrc` for version) - Use [NVM](https://github.com/nvm-sh/nvm) for version management
- **pnpm** - Install globally: `npm install -g pnpm`

### Installation

```bash
# Use the correct Node version
nvm use

# Install dependencies
pnpm install

# Start development server
pnpm dev
```

### Available Scripts

| Command                   | Description                     |
| ------------------------- | ------------------------------- |
| `pnpm dev`                | 🚀 Start development server     |
| `pnpm build`              | 🏗️ Build for production         |
| `pnpm generate`           | 📦 Generate static site         |
| `pnpm preview`            | 👁️ Preview production build     |
| `pnpm test:unit`          | 🧪 Run unit tests               |
| `pnpm test:unit-coverage` | 📊 Run unit tests with coverage |
| `pnpm test:unit-ui`       | 🖥️ Run unit tests with UI       |
| `pnpm test:e2e`           | 🎭 Run E2E tests                |
| `pnpm test:e2e-ui`        | 🖥️ Run E2E tests with UI        |
| `pnpm test:codegen`       | 🎬 Generate E2E tests           |
| `pnpm lint`               | 🔍 Lint code                    |
| `pnpm lint:fix`           | 🔧 Lint and fix code            |
| `pnpm typecheck`          | 📘 Type checking                |

---

## 📁 Project Structure

```
my-nuxt-starter/
├── 📁 app/                    # Main application
│   └── 📁 assets/             # Static assets
│   ├── 📁 components/         # Vue components
│   ├── 📁 composables/        # Vue composables
│   ├── 📁 layouts/            # Layout components
│   ├── 📁 pages/              # Page components
├── 📁 tests/                  # Test files
│   └── 📁 e2e/                # End-to-end tests
├── 📁 server/                 # Server-side code
├── 📁 public/                 # Public static files
└── 📄 nuxt.config.ts          # Nuxt configuration
```

---

## 🍹 Data Fetching (Pinia Colada)

This project uses [Pinia Colada](https://pinia-colada.esm.dev/) for async state management. It provides caching, deduplication, and invalidation out of the box.

### Basic Usage

Use `useQuery` to fetch data:

```vue
<script setup lang="ts">
const { state, asyncStatus } = useQuery({
  key: ['products'],
  query: () => fetch('/api/products').then(r => r.json())
})
</script>

<template>
  <div v-if="asyncStatus === 'loading'">Loading...</div>
  <div v-else-if="state.error">Error: {{ state.error }}</div>
  <div v-else>
    {{ state.data }}
  </div>
</template>
```

### Mutations

Use `useMutation` to modify data:

```vue
<script setup lang="ts">
const { mutate } = useMutation({
  mutation: (newProduct) => fetch('/api/products', {
    method: 'POST',
    body: JSON.stringify(newProduct)
  })
})
</script>
```

For more details, check the [Pinia Colada documentation](https://pinia-colada.esm.dev/).

---

## 💻 Development

### Commit Guidelines

Follow the [Conventional Commits](https://www.conventionalcommits.org/) specification:

```
<type>: <description>

Types: feat, fix, docs, style, refactor, test, chore, ci, build, perf, revert
```

**Examples:**

- `feat: add user authentication`
- `fix: resolve navbar responsive issue`
- `docs: update installation guide`

### Unit Test

```bash
# Run unit tests
pnpm test:unit

# Run unit tests with coverage
pnpm test:unit-coverage

# Run unit tests with ui
pnpm test:unit-ui
```

### E2E Test

```bash
# Install Playwright browsers (required for E2E tests)
pnpm exec playwright install

# Run E2E tests
pnpm test:e2e

# Run E2E tests with ui
pnpm test:e2e-ui

# Run codegen for E2E tests
pnpm test:codegen
```

### 🤖 Testing GitHub Actions Locally

## We suggest using [act](https://github.com/nektos/act) to try GitHub Actions locally before pushing to GitHub. This allows you to validate your workflows and save time by running them in a local containerized environment.

## 📋 Roadmap

### 🔄 In Progress

- [ ] **🎨 Custom Icon Library** - Project-specific icons
- [ ] **📊 Coverage GitHub Action** - Automated coverage reports

### 🎯 Planned Features

- [ ] **🔍 Zod** - Runtime type validation
- [ ] **🎨 Chromatic** - Visual testing
- [ ] **🚦 Lighthouse** - Performance monitoring

---

## 🛠️ Troubleshooting

Having issues? Try these steps:

1. **🧹 Clean the project**: `pnpm clean-project`
2. **📋 Check Node version**: Ensure you're using the version specified in `.nvmrc`
3. **📦 Check pnpm version**: Verify it matches the version in `package.json`
4. **🔄 Reinstall dependencies**: `rm -rf node_modules && pnpm install`
5. **🔧 Check environment**: Ensure all required environment variables are set

---

## 🤝 Contributing

We welcome contributions! Please read our [Contributing Guidelines](CONTRIBUTING.md) before submitting a pull request.

1. Fork the repository
2. Create your feature branch (`git checkout -b feat/amazing-feature`)
3. Commit your changes (`git commit -m 'feat: add amazing feature'`)
4. Push to the branch (`git push origin feat/amazing-feature`)
5. Open a Pull Request

---

## 📄 License

This project is licensed under the [MIT License](LICENSE).

---

## 🙏 Acknowledgments

Built with ❤️ using amazing open-source projects:

- [Nuxt](https://nuxt.com/)
- [Vue.js](https://vuejs.org/)
- [Tailwind CSS](https://tailwindcss.com/)
- [TypeScript](https://www.typescriptlang.org/)
- [pnpm](https://pnpm.io/)

---

## ⚠️ Tailwind CSS Linting (Beta)

Please note that ESLint support for Tailwind CSS is currently in beta due to the ongoing development of Tailwind CSS v4. If you encounter any issues or false positives, you can disable this feature by modifying the `eslint.config.mjs` file or temporarily disabling the specific rules.

---

<div align="center">
  <strong>🌟 Star this repository if you find it helpful!</strong>
</div>
反馈内容错误

看看同类模板

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