一个基于React + TypeScript + Vite + Supabase的现代化数据资产交易平台。
- 🚀 现代化的前端技术栈
- 🔐 基于Supabase的用户认证系统
- 💳 集成Stripe支付系统
- 📱 响应式设计,支持移动端
- 🧪 完整的测试覆盖
- 📊 性能优化和代码分割
- 前端: React 18 + TypeScript + Vite
- UI组件: Material-UI (MUI)
- 状态管理: Redux + Redux Thunk
- 路由: React Router v6
- 后端: Supabase (PostgreSQL + Auth + Storage)
- 支付: Stripe
- 测试: Jest + Cypress
- 构建工具: Vite
- 部署: Vercel
- Node.js 18+
- npm 或 yarn
- Git
- 克隆项目
git clone <repository-url>
cd testcb- 安装依赖
cd frontend
npm install- 配置环境变量
# 复制环境变量模板
cp .env.example .env.local
# 编辑 .env.local 文件,填入实际的配置值- 启动开发服务器
npm run dev- 打开浏览器访问 http://localhost:3000
# 运行单元测试
npm run test:unit
# 运行集成测试
npm run test:integration
# 运行端到端测试
npm run test:e2e
# 运行所有测试
npm test- 确保项目已经推送到GitHub仓库
- 在Vercel官网注册账号并连接GitHub
- 准备好Supabase和Stripe的配置信息
- 访问 Vercel官网
- 点击"New Project"
- 导入你的GitHub仓库
- 配置项目设置:
- Framework Preset: Vite
- Root Directory: frontend
- Build Command: npm run build
- Output Directory: dist
- 添加环境变量:
VITE_SUPABASE_URL: 你的Supabase项目URLVITE_SUPABASE_ANON_KEY: 你的Supabase匿名密钥VITE_STRIPE_PUBLISHABLE_KEY: 你的Stripe发布密钥(可选)
- 点击"Deploy"
- 安装Vercel CLI
npm i -g vercel- 登录Vercel
vercel login- 部署项目
cd frontend
vercel- 按照提示配置项目
在Vercel中需要配置以下环境变量:
| 变量名 | 描述 | 必需 |
|---|---|---|
VITE_SUPABASE_URL |
Supabase项目URL | ✅ |
VITE_SUPABASE_ANON_KEY |
Supabase匿名密钥 | ✅ |
VITE_STRIPE_PUBLISHABLE_KEY |
Stripe发布密钥 | ❌ |
VITE_APP_NAME |
应用名称 | ❌ |
- 在Vercel项目设置中点击"Domains"
- 添加你的自定义域名
- 按照提示配置DNS记录
testcb/
├── frontend/ # 前端项目
│ ├── src/
│ │ ├── components/ # React组件
│ │ ├── pages/ # 页面组件
│ │ ├── services/ # API服务
│ │ ├── utils/ # 工具函数
│ │ └── types/ # TypeScript类型定义
│ ├── tests/ # 测试文件
│ ├── public/ # 静态资源
│ └── dist/ # 构建输出
├── docs/ # 文档
├── scripts/ # 脚本文件
├── supabase/ # Supabase配置
└── vercel.json # Vercel部署配置
- 使用Prettier进行代码格式化
- 使用ESLint进行代码检查
- 遵循TypeScript严格模式
- 编写单元测试覆盖核心功能
# 提交前运行测试
npm test
# 提交前格式化代码
npm run lint:fix-
构建失败
- 检查Node.js版本是否符合要求
- 确认所有依赖都已正确安装
- 检查环境变量配置是否正确
-
环境变量未生效
- 确保环境变量名称以
VITE_开头 - 在Vercel中重新部署项目
- 确保环境变量名称以
-
Supabase连接失败
- 检查Supabase项目URL和密钥是否正确
- 确认Supabase项目已启用
- Fork项目
- 创建功能分支
- 提交更改
- 推送到分支
- 创建Pull Request
MIT License
如有问题,请通过以下方式联系:
- 项目Issues
- 邮箱:[email protected]