NuxtVue工具站SaaS企业官网

nuxt-saas-launch — Nuxt 工具站模板

作者 smart-developer1791

Relay 是一个基于 Nuxt 的 SaaS 落地页模板,围绕团队自动化产品设计,包含可交互的工作流演示、人工审批步骤、团队定价与容量计算器,并支持静态部署。

看看你的网站会是什么样

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

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

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

全部页面与视图 2

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

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

值得关注的模板亮点

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

01

包含三个可运行的客户端工作流演示:客户入驻、项目交接、团队审批,支持运行、重放、重置与场景切换

02

三档定价方案共用一套计算模型,可调整团队规模与每月运行次数,计算额外费用并下载 JSON 简报

03

支持键盘导航、跳过链接、原生对话框与减少动画偏好,核心内容预渲染进 HTML

04

使用本地或代码绘制的图像与自托管字体,无远程图片依赖、无分析脚本、无数据库

05

静态部署配置指向 Vercel,构建命令为 npm run generate,输出目录为 .output/public

06

包含自定义 404 页面,在禁用 JavaScript 时仍返回 HTTP 404 并保留可用的首页链接

模板详细介绍

Relay 是一个面向团队自动化产品的 Nuxt 落地页模板,内容为英文,采用静态输出。页面围绕一个虚构的自动化工具展开:访客可以运行客户端工作流演示,体验从签约到通知、从设计交付到任务派发、以及需要人工审批的请求流程,并支持运行、重放、重置和切换场景。定价部分提供三档方案(Starter、Team、Studio),共享同一套计算模型,可调整团队规模与每月运行次数,查看额外费用与最低估算,选择方案后会打开原生对话框并下载包含容量、计费周期和功能明细的 JSON 简报。模板使用本地或代码绘制的图像,字体自托管,不依赖全局状态库、分析脚本、远程图片或数据库。项目使用 Node.js 24.11+(24.x 系列)与 npm,Nuxt 锁定在 4.5.2,构建命令为 npm run generate,输出到 .output/public。生成的路由包括 /、/robots.txt、/sitemap.xml 以及完整渲染的 404.html。默认站点来源为 https://nuxt-saas-launch.vercel.app,可通过 NUXT_PUBLIC_SITE_URL 覆盖。README 说明 Relay 为虚构产品,名称、场景、容量限制、价格和节省时间的数据均为示例内容,集成仅为示意,未连接任何第三方账户。依赖审计仍报告 11 个高危问题,来自两个传递性构建工具包。

NuxtVue工具站SaaS企业官网

适合你的项目吗?

适用场景

  • 为团队自动化或工作流类 SaaS 产品搭建英文落地页
  • 需要在页面中嵌入可交互的产品流程演示与人工审批环节
  • 希望展示多档定价并让访客自行计算团队规模与运行次数对应的费用
  • 以静态站点方式部署到 Vercel 或其他静态托管平台
  • 作为 Nuxt 落地页模板的起点,按自定义指南替换品牌、内容与配色

适合人群

  • 面向英文市场的 SaaS 或工具类产品落地页
  • 需要展示工作流演示与定价计算器的企业官网
  • 偏好 Nuxt、Vue 与 TypeScript 的前端开发者
  • 接受静态部署、不依赖运行时服务端路由的项目

上手与定制指南

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

  1. 1

    使用 Node.js 24.11+(24.x 系列)与 npm,先执行 npm ci 安装依赖,再运行 npm run dev 启动开发服务器(默认 http://localhost:3000)

  2. 2

    静态部署使用 npm run generate,输出到 .output/public;npm run build 仍可用于 Nuxt 服务端构建

  3. 3

    生成前可通过 NUXT_PUBLIC_SITE_URL 覆盖默认站点来源,该值会影响 canonical、社交元数据、sitemap 与爬虫规则

  4. 4

    发布前按 README 检查表核对冷加载与重载字体稳定性、320/390/1440 像素下的横向溢出、公开来源、键盘交互与产品内容

  5. 5

    演示图片、字体、图标等第三方素材需按各自许可核对;依赖审计仍报告 11 个高危问题,详见 docs/DEPENDENCIES.md

查看仓库使用说明

授权与来源资料

使用条件与限制

免费使用 · 保留许可声明

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

使用时需要遵守

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

额外费用与待核对事项

  • 演示图片、字体、图标及其他第三方素材需按各自许可核对,不能仅凭代码的 MIT 许可判断。
  • 域名、托管、数据库、支付或 AI 等外部服务可能另外收费。
  • 模板内容为虚构示例:名称、场景、容量限制、价格与节省时间数据均为样例,集成仅为示意,未连接任何第三方账户,不可当作真实产品数据使用。
  • 定价计算器仅提供本地估算,不构成注册或支付流程,不能用于真实收款或订阅。
  • 静态部署不含运行时服务端路由,演示与下载均在浏览器端完成,无法依赖服务端接口。
  • 字体与图标仍受各自包许可约束,工具名称归各自所有者,商用前需自行核对第三方素材许可。
  • 依赖审计仍报告 11 个高危问题,来自两个传递性构建工具包,发布前需评估并处理。
  • 生成前需设置 NUXT_PUBLIC_SITE_URL 覆盖默认站点来源,否则 canonical、社交元数据、sitemap 与爬虫规则会指向默认域名。
  • 运行环境限定为 Node.js 24.x 系列中的 24.11 及以上版本,并使用 npm,其他 Node 版本不受支持。
查看原文依据

Permission is hereby granted, free of charge

许可证原文

Relay is fictional. Names, scenarios, capacity limits, prices, and time-saving figures are sample content. Integrations are illustrative, and no third-party account is connected.

README 原文

This is a local estimate, not a signup or payment flow.

README 原文

Static deployment has no runtime server routes. Demos and downloads stay in the browser.

README 原文

Fonts and icons retain their package licenses. Tool names belong to their respective owners.

README 原文

Dependency auditing still reports 11 high-severity findings through two transitive build-tool packages.

README 原文

Set **`NUXT_PUBLIC_SITE_URL`** before generating to override either value

README 原文

Use Node.js **24.11+ within the 24.x line** and npm.

README 原文
https://github.com/smart-developer1791/nuxt-saas-launch/blob/master/LICENSEhttps://github.com/smart-developer1791/nuxt-saas-launch/blob/master/README.md

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

项目核对记录与介绍依据

模板资料

来源平台
GitHub
资料与维护参考分
资料较完整 · 85 / 100
技术栈
Nuxt · Vue
网站类型
工具站 · SaaS · 企业官网
这个分数如何计算

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

这个项目需要核对什么

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

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

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

查看具体选型方法 →

介绍的制作与核对状态

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

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

查看当时使用的来源资料

SHA-256: 870a1e2687002f72aedc09fd79af47b81d05faa211ccd7f02f85b18a992d601e

2026-10-12T10:45:38.851Z

来源文件 / 仓库
<div align="center">

# ↗ Relay

### Good work. Less busywork.

A Nuxt landing template for a team automation product.<br />
Built around a working demo, a transparent price, and a calmer workday.

[![Nuxt](https://img.shields.io/badge/Nuxt-4-20342a?style=for-the-badge&logo=nuxt&logoColor=d4ef86)](https://nuxt.com/)
[![Vue](https://img.shields.io/badge/Vue-3-20342a?style=for-the-badge&logo=vuedotjs&logoColor=d4ef86)](https://vuejs.org/)
[![Tailwind](https://img.shields.io/badge/Tailwind-4-20342a?style=for-the-badge&logo=tailwindcss&logoColor=d4ef86)](https://tailwindcss.com/)
[![MIT](https://img.shields.io/badge/License-MIT-d4ef86?style=for-the-badge)](LICENSE)

**SaaS / 01** · Nuxt landing collection · Static output · English content

</div>

![Relay landing preview](docs/preview-desktop.png)

<details>
<summary>📱 A look at the mobile layout</summary>

<img src="docs/preview-mobile.png" alt="Relay's mobile hero and navigation" width="390" />

</details>

## 🌿 A small product story

Relay imagines a simple automation tool for teams: a signed contract becomes a workspace, a welcome email, and a heads-up. A completed design arrives with a handoff brief. A request gets a human decision before anything else moves.

The landing page lets visitors try that idea. Its visual language is warm paper, dark green, lime accents, deliberate spacing, and a workflow panel that behaves like a product. All imagery is local or drawn in code; the fonts are self-hosted.

Relay is fictional. Names, scenarios, capacity limits, prices, and time-saving figures are sample content. Integrations are illustrative, and no third-party account is connected.

## 🔀 Follow a workflow

| Scenario              | What you can try                                                    |
| --------------------- | ------------------------------------------------------------------- |
| **Client onboarding** | Run four steps from signed contract to team notification.           |
| **Project handoff**   | Follow a design through its brief, implementation task, and update. |
| **Team approvals**    | Pause at a review step, then approve or send the request back.      |

Run, replay, reset, or switch scenarios. Pending steps stop on reset or tab change. Arrow keys, Home, and End navigate the tabs, and live status updates announce progress.

## 💸 Price the team's next chapter

Three plans share one calculation model. Adjust team size and monthly runs, inspect extra charges, and find the lowest estimate. Select any plan manually to compare its features and cost.

<details>
<summary>🧮 The plans and capacity calculator</summary>

![Relay pricing and capacity calculator](docs/preview-pricing.png)

</details>

| Plan    | Monthly base | People |   Runs | Extra person | Extra 1,000 runs |
| ------- | -----------: | -----: | -----: | -----------: | ---------------: |
| Starter |          $29 |      5 |  1,000 |           $5 |               $8 |
| Team    |          $79 |     15 |  5,000 |           $4 |               $6 |
| Studio  |         $199 |     40 | 20,000 |           $3 |               $4 |

Annual billing takes 20% off the full estimate. The page shows the monthly equivalent and total billed for a year. Calculations use integer USD cents; additional runs round up to blocks of 1,000. Taxes are excluded.

Choosing a plan opens a native dialog. Download a JSON brief containing capacity, billing cycle, features, and the breakdown. This is a local estimate, not a signup or payment flow.

## 🚀 Open the project

Use Node.js **24.11+ within the 24.x line** and npm. Nuxt is pinned to 4.5.2 to match that runtime; the lockfile records the dependency set.

```bash
npm ci
npm run dev
```

Development runs at `http://localhost:3000` by default.

```bash
npm run format:check
npm test
npm run typecheck
npm run generate
npx playwright install chromium --only-shell
npm run test:e2e
npm run preview
```

The static preview serves `.output/public` at `http://localhost:3000`. Stop development before using that port, or use `npm run preview -- --listen 3001`.

`npm run build` remains available for a Nuxt server build. Deployment uses **`npm run generate`** and the resulting static files.

Browser tests use the generated site on port 4173 and start their own temporary preview server. They cover font stability on cold loads and reloads, keyboard navigation, workflow approvals, plan downloads, and error-page recovery with and without JavaScript.

GitHub Actions runs formatting, pricing tests, type checking, static generation, and browser tests on pushes and pull requests. Failed browser runs retain a report, screenshots, and traces as an artifact.

## 🗂️ Where the pieces live

```text
app/
├── app.vue                     Landing entry and shared font setup
├── error.vue                   Relay's 404 and general error screen
├── assets/css/main.css          Palette, font families, minimal motion
├── composables/useLocalFonts.ts Persistent font faces and early preloads
├── components/
│   ├── BrandMark.vue            Relay's mark and wordmark
│   ├── SiteHeader.vue           Desktop and mobile navigation
│   ├── WorkflowDemo.vue         Scenarios and human approvals
│   └── PricingSection.vue       Plans, calculator, downloadable brief
├── data/
│   ├── site.ts                  Brand, navigation, features, tools, FAQ
│   ├── workflows.ts             Three example processes
│   └── plans.ts                 Plans and capacity rates
├── domain/pricing.ts            Pure, tested money calculations
└── pages/index.vue              Landing composition and metadata
server/routes/                  Build-time robots and sitemap generation
public/                         Favicon and editable/raster social artwork
docs/                           Customization guide and preview captures
tests/                          Pricing boundaries and annual billing
tests/e2e/                      Browser regressions and error-page recovery
scripts/capture-previews.mjs     Reproducible documentation screenshots
.github/workflows/ci.yml         Automated checks for each push and PR
```

Vue Composition API and TypeScript components handle the interface. Tailwind runs through its Vite plugin; Lucide supplies icons; Manrope and DM Mono are installed locally. There is no global state library, analytics script, remote image dependency, or database.

## 🎨 Make it yours

Start with [the customization guide](docs/CUSTOMIZATION.md). It maps content to files and explains approval checkpoints, pricing, logo replacement, artwork, and live-service integration points.

Colors live in one CSS `@theme` block. Features, tools, questions, workflows, and plans come from typed data. The hero, process story, and closing message remain explicit page composition.

## 🌍 From source to a public page

`vercel.json` configures static deployment:

| Setting          | Value              |
| ---------------- | ------------------ |
| Framework        | Nuxt               |
| Build command    | `npm run generate` |
| Output directory | `.output/public`   |
| Node.js          | 24.x               |

The default public origin is **`https://nuxt-saas-launch.vercel.app`**. On Vercel, `VERCEL_PROJECT_PRODUCTION_URL` supplies the actual production domain when available. Set **`NUXT_PUBLIC_SITE_URL`** before generating to override either value, for example when using your own domain. `.env.example` is a template, not an automatically loaded environment file. The resolved origin feeds canonical and social metadata, the sitemap, and crawler rules.

Generated routes are `/`, `/robots.txt`, and `/sitemap.xml`, plus a fully rendered `404.html`. Missing paths return the Relay error screen with HTTP 404, including when JavaScript is disabled. The page keeps a working home link and uses `noindex`. Other Nuxt errors use the same design with a general recovery message. `og.svg` is editable artwork; `og.png` is the social image. Rebuild after changing the URL or content. No deployment has been performed.

<details>
<summary>🧭 A way back: the Relay error page</summary>

![Relay's custom 404 page](docs/preview-404.png)

</details>

## 🧩 Details that matter

- Core content is prerendered into HTML. JavaScript adds demo and pricing interactions.
- A skip link, focus styles, labeled controls, keyboard tabs, native FAQ disclosures, and a dialog support navigation. Press Tab from the top of the page to reveal **Skip to content**; Enter moves focus to the main content. The link is visually hidden during mouse browsing.
- Mobile layouts stack controls. Reduced-motion preferences disable nonessential animation.
- The two Latin WOFF2 fonts are preloaded and use optional display to avoid a late font swap on reload. Their faces stay in the document head during dev hydration. Slow first visits keep the fallback font for that navigation.
- Workflow headings and descriptions reserve space to keep surrounding content stable.
- Recommendations compare cost only; feature requirements need a human decision.
- Static deployment has no runtime server routes. Demos and downloads stay in the browser.
- Fonts and icons retain their package licenses. Tool names belong to their respective owners.

Dependency auditing still reports 11 high-severity findings through two transitive build-tool packages. The available critical fixes are applied; see [the dependency notes](docs/DEPENDENCIES.md) for the remaining advisories, overrides, and static-deployment scope.

## ✅ Before you publish

After changing the brand, content, or origin, run the checks under **Open the project** and preview the generated site. Keep these checks part of every landing in the collection:

| Check                     | Expected result                                                                                              |
| ------------------------- | ------------------------------------------------------------------------------------------------------------ |
| Cold load and reload      | Text stays in place as fonts load, in development and in the static preview.                                 |
| Small and large screens   | No horizontal overflow at 320, 390, and 1440 px; the menu and headings remain usable.                        |
| Public origin             | Canonical, social image URLs, `robots.txt`, and `sitemap.xml` point to the production domain.                |
| Keyboard and interactions | Navigation, workflow approval, billing controls, and plan downloads work; closing the dialog restores focus. |
| Product content           | Branding, contact details, prices, and concept labels match the intended product.                            |

See [the customization guide](docs/CUSTOMIZATION.md#before-release) for the release checklist.

To refresh the README images after changing the design, generate the site and start `npm run preview`, then run `npm run preview:images` in another terminal. Pass a different preview origin when needed: `npm run preview:images -- http://localhost:3001`. The capture script opens fresh pages and keeps the pricing section below the sticky header, so hidden controls and overlapping navigation do not enter its screenshot.

## 📄 License

[MIT](LICENSE) · Copyright © 2026 CodeSculptor
反馈内容错误

看看同类模板

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