今天开源一个我去年做的项目:Fast SaaS。
仓库地址先放这:
https://github.com/jingyuan-opc/fast-saas[1]
一句话介绍:这是一个面向个人开发者和创业者的 AI SaaS 全栈脚手架,目标是让你用最短时间上线一个可以收费的 AI 应用。
它不是一个玩具 Demo。
我当时做它的出发点很简单:我不想每次做一个 AI 小产品,都从用户登录、积分、支付、任务队列、邮件、存储这些基础设施重新写一遍。
真正做过产品的人都知道,AI 调用那部分反而不是最麻烦的。
最麻烦的是这些东西:
-
用户怎么注册登录? -
忘记密码怎么办? -
Google / GitHub OAuth 怎么接? -
用户付钱后怎么开通权益? -
积分怎么扣?扣失败怎么办? -
AI 生成要等几十秒,前端怎么查进度? -
任务失败了,积分要不要退? -
图片生成完放哪里? -
支付 webhook 重复回调怎么办? -
管理后台怎么看用户和订单?
这些不是「写一个页面」能解决的。
它们是一个 AI SaaS 真正能不能跑起来的地基。
所以我去年把这些东西抽出来,做成了 Fast SaaS。
Fast SaaS 解决什么问题
如果你现在想做一个 AI 工具,大概率会先想功能:
做个 AI 图片生成?做个 AI 简历优化?做个 AI 文案工具?做个 AI PDF 总结?
但你真正开始写的时候,会发现自己很快掉进基础设施泥潭。
前端框架选什么?后端 API 怎么写?数据库怎么建表?用户体系怎么做?订阅支付怎么接?异步任务怎么跑?AI 生成历史怎么存?
Fast SaaS 的目标,就是把这些通用部分提前打包好。
你只需要基于它往里填自己的业务逻辑,就能快速得到一个完整的 AI SaaS 应用。
README 里我写的是「一小时上线 AI 收费应用」。这不是说一小时做出一个伟大的产品,而是说:
一小时内,你可以跑起来一个有登录、有支付、有积分、有 AI 调用、有任务队列、有用户中心的完整应用骨架。
对个人开发者来说,这个起点很重要。
因为很多项目不是死在技术难点上,而是死在「启动成本太高」。
它里面已经有些什么
Fast SaaS 基于 Nuxt 4 构建,前后端一体。
前端是 Vue 3 + Nuxt UI + TypeScript。
后端用 Nuxt 内置的 Nitro API Routes,数据库用 Drizzle ORM + MySQL。
整体技术栈是比较适合个人开发者的:不用维护一堆服务,也不用在前后端之间来回切。
项目里已经内置了这些模块。
1. 完整用户体系
支持邮箱密码登录、Google OAuth、GitHub OAuth、邮箱验证码登录注册、密码重置。
认证用 JWT 双 Token,也就是 Access Token + Refresh Token。
这个设计的好处是:用户体验比较顺滑,Token 过期可以自动刷新,不用频繁重新登录。
同时项目里也有统一权限控制中间件,可以保护需要登录或管理员权限的接口。
2. 订阅 + 积分双计费
这是我觉得对 AI SaaS 特别重要的一块。
很多 AI 产品不适合只做订阅。
因为 AI 调用本身有成本。一个用户如果疯狂使用,你不能只收固定月费,不然很容易亏。
Fast SaaS 里设计了两套积分:
购买积分:用户按需购买,永久有效,用完为止。适合偶尔使用的人。
订阅积分:订阅计划每个周期给固定额度,每月重置。适合高频用户。
消费时系统优先消耗订阅积分,订阅积分用完后,再消耗购买积分。
这个模式比较灵活:既能做月费订阅,也能做按量付费,还能组合起来。
3. 支付集成
项目里预留了 Creem 和 Stripe 两种订阅支付,国内支持支付宝购买积分。
Stripe 是全球主流支付平台。
Creem 对国内个人开发者更友好,一个关键原因是:它可以帮助国内用户通过支付宝实现海外收款。
支付系统里还包括 webhook 处理、支付历史、订阅管理、自动续费、订阅取消等基础能力。
这里最重要的其实不是「接上支付按钮」,而是后面的事件处理。
支付成功、订阅续费、订阅取消、重复回调、订单幂等等等,如果没有一套结构,后面会很乱。
Fast SaaS 把这部分也整理好了。
4. AI 应用开发能力
AI 部分基于 LangChain,并兼容 OpenAI 协议。
换句话说,你可以接 OpenAI、OpenRouter、火山引擎,也可以接其他兼容 OpenAI API 的模型服务。
项目里也提供了 AI 图片生成示例,包括生成、缩略图处理、云存储上传、生成历史记录等。
如果你想做的不是图片生成,而是文本生成、文档处理、简历优化、PPT 大纲生成,也可以复用这套任务和历史记录框架。
5. 异步任务队列
AI 应用里有一个非常常见的问题:任务很慢。
比如图片生成,可能要十几秒甚至几十秒。
如果你让前端一直等 HTTP 请求返回,体验会很差,也容易超时。
Fast SaaS 用 BullMQ + Redis 做了异步任务队列。
流程是这样的:
前端提交任务,后端马上返回任务 ID。
后端在队列里慢慢处理,比如调用大模型、生成图片、上传云存储。
前端轮询任务状态,看到 pending、running、completed、failed。
如果任务失败,还可以做积分退还。
这套机制对 AI 应用非常实用。
6. 云存储、邮件、管理后台
项目默认集成七牛云存储,支持客户端和服务端上传,图片也支持缩略图生成。
邮件系统基于 Nodemailer,可以发验证码邮件、密码重置邮件,也方便扩展其他通知。
另外还有完整的管理后台 /admin,用于管理用户、订单、任务等后台数据。
这些东西单独看都不大,但真要从零写,特别耗时间。
技术架构是什么样
Fast SaaS 的整体架构比较传统,但非常适合个人项目。
分成三层:
API 层:处理 HTTP 请求、验证输入、返回统一格式。
Service 层:写业务逻辑、协调数据库、支付、AI、任务队列等组件。
Database 层:用 Drizzle ORM 做类型安全的数据访问和迁移。
这套分层最大的好处是:项目变大之后不容易乱。
你不会把支付逻辑写在页面里,也不会把数据库操作散落到各个接口里。
再配合 TypeScript、Zod、Drizzle ORM,前后端类型会比较稳。
对个人开发者来说,少踩很多坑。
怎么快速跑起来
环境要求:
-
Node.js 18+ -
MySQL 8.0+ -
Redis -
PNPM 或 NPM
快速开始:
git clone https://github.com/jingyuan-opc/fast-saas.git
cd fast-saas
pnpm install
cp .env.example .env
然后编辑 .env,填入数据库、支付、AI 等配置。
创建数据库:
CREATE DATABASE IF NOT EXISTS fast_saas CHARACTER SET utf8mb4;
生成并运行数据库迁移:
pnpm db:generate
pnpm db:migrate
启动开发服务器:
pnpm dev
访问:
http://localhost:3000[2]
适合谁用
如果你熟悉 Vue.js,懂一点 SQL,想做一个能收费的 AI 应用,这个项目会比较适合你。
尤其适合这几类人:
-
想做 AI 小产品的个人开发者 -
想验证 SaaS 点子的创业者 -
熟悉前端,但不想从零写后端基础设施的人 -
想学习 Nuxt 4 全栈项目结构的人 -
想参考 AI SaaS 订阅、积分、支付设计的人
如果你完全没有编程基础,这个项目不一定适合直接上手。
它不是无代码工具。
它更像一个已经搭好地基和框架的毛坯房:水电、地基、门窗、管线都铺好了,你要做的是把自己的业务装修进去。
为什么现在开源
去年做这个项目的时候,我更多是把它当作自己的内部脚手架。
做 AI 产品时,能少写很多重复代码。
但今年我越来越强烈地感觉到:一个人做产品,最缺的不是想法,而是可复用的系统。
每次从零开始搭用户系统、支付系统、积分系统、任务队列,真的会消耗太多启动能量。
而个人开发者最宝贵的,恰恰是启动能量。
所以我决定把 Fast SaaS 开源出来。
它不完美,也不可能适合所有人。
但如果它能帮你少踩几个坑,少花几个周末,把更多时间用在真正的产品验证上,那就值得。
仓库地址:
https://github.com/jingyuan-opc/fast-saas[5]
欢迎 star、fork。
如果你正准备做一个 AI SaaS,也可以直接拿去改。
声明:
目前此项目作为一个脚手架已经相当完善,且由于本人已全面投入 go+PocketBase 技术栈,后续此项目将不再维护更新!
静远,一个在AI时代坚持手把手带你上车的普通人。

