基于 Vue 3 + NestJS + Supabase 的全栈电商解决方案。
- 🚀 快速开始 - 本地开发与部署指南
- 🐳 Docker 部署 - 完整的容器化部署指南
- 🔐 环境变量配置 - 密钥与配置管理说明
- 🏗️ 系统架构 - 架构设计文档
- ✅ 产品浏览 - 列表、详情、搜索、过滤
- ✅ 购物车 - 状态管理、持久化
- ✅ 订单流程 - 创建、支付模拟、管理
- ✅ 用户中心 - 注册、登录、个人信息
- ✅ 认证授权 - JWT + Supabase Auth
- ✅ 数据管理 - 产品、分类、订单 CRUD
- ✅ 库存控制 - 下单扣减、并发处理
- ✅ 安全机制 - RLS、参数校验、接口限流
| 领域 | 技术 | 说明 |
|---|---|---|
| 前端 | Vue 3 | Composition API |
| Vite | 构建工具 | |
| Pinia | 状态管理 | |
| Vue Router 4 | 路由管理 | |
| 后端 | NestJS | Node.js 框架 |
| TypeScript | 类型安全 | |
| Passport | 认证策略 | |
| 数据 | Supabase | PostgreSQL + Auth |
| Redis | 缓存与会话 |
- Node.js v18+
- Docker & Docker Compose (推荐)
- Supabase 账号
复制模板并配置 .env(不要提交到 Git):
cp .env.example .env
# 编辑 .env 填入 Supabase 和其他密钥一键启动所有服务(Redis, Backend, Frontend):
docker-compose up -d| 服务 | 地址 | 容器端口 | 宿主机端口 |
|---|---|---|---|
| Web | http://localhost:8088 | 80 | 8088 |
| Backend | http://localhost:3580/api | 3580 | 3580 |
| Redis | localhost:6389 | 6389 | 6389 |
需要分别启动前后端:
# 1. 启动后端
cd backend
npm install
npm run start:dev
# API 地址: http://localhost:3580/api
# 2. 启动前端 (新终端)
cd web
npm install
npm run dev
# 访问地址: http://localhost:5183vela/
├── backend/ # NestJS 后端 API
├── web/ # Vue 3 用户端网站
├── admin/ # 管理后台 (开发中)
├── docker-compose.yml # Docker 编排配置
├── .env # 环境变量 (勿提交)
├── .env.example # 环境变量模板
├── DOCKER_DEPLOYMENT.md # 部署文档
└── ENV_CONFIGURATION.md # 配置文档
# Docker 操作
docker-compose up -d # 启动
docker-compose down # 停止
docker-compose logs -f # 查看日志
# 后端开发
npm run start:dev # 启动开发服务器
npm run build # 构建
# 前端开发
npm run dev # 启动开发服务器
npm run build # 构建MIT
开发者: Vela Team