100 lines
6.3 KiB
Markdown
100 lines
6.3 KiB
Markdown
|
|
# Mycontent-book 项目总览
|
|||
|
|
|
|||
|
|
**我是卡若。**
|
|||
|
|
|
|||
|
|
做这个项目,逻辑很简单:**把书卖出去,把私域做起来,把钱分下去。**
|
|||
|
|
|
|||
|
|
这就不是一个普通的博客网站,这是一个**内容变现系统**。所有的技术架构,都要围绕着“阅读体验”、“流量承接”和“变现转化”来做。
|
|||
|
|
|
|||
|
|
别整那些虚头巴脑的概念,咱们直接看这个盘子怎么搭。
|
|||
|
|
|
|||
|
|
## 1. 核心逻辑
|
|||
|
|
|
|||
|
|
这个项目的生意逻辑就是三层:
|
|||
|
|
1. **流量层(前端)**:让用户看着爽,像刷抖音、看公众号一样流畅。必须移动端优先,模拟 iOS 的原生质感。
|
|||
|
|
2. **内容层(数据)**:`book/` 目录下的 Markdown 文件就是我们的资产。改个字,推送到 GitHub,网站立马更新。
|
|||
|
|
3. **变现层(后端/接口)**:谁看了?谁买了?谁推荐的?这些数据要跑通。
|
|||
|
|
|
|||
|
|
## 2. 为什么这么架构?
|
|||
|
|
|
|||
|
|
我选 Next.js,不是因为流行,是因为它**省事**。
|
|||
|
|
- **SSR(服务端渲染)**:SEO 友好,百度谷歌能搜到,自带流量。
|
|||
|
|
- **API Routes**:不用单独起个 Java 或 Python 服务,省服务器钱。
|
|||
|
|
- **Vercel/宝塔部署**:自动化流水线,我只管写文章,代码自动跑。
|
|||
|
|
|
|||
|
|
## 3. 当前项目结构(前后端已分离)
|
|||
|
|
|
|||
|
|
### 3.1 仓库根目录
|
|||
|
|
|
|||
|
|
| 目录/项目 | 技术栈 | 说明 |
|
|||
|
|
|-----------|--------|------|
|
|||
|
|
| **soul-api/** | Go 1.25 + Gin + GORM + MySQL | 独立后端 API 服务,路径与现网一致 `/api/*` |
|
|||
|
|
| **soul-admin/** | React 18 + Vite 6 + TypeScript + Tailwind 4 + Radix UI | 管理后台 SPA,请求通过 `VITE_API_BASE_URL` 对接 soul-api 或 Next |
|
|||
|
|
| **miniprogram/** | 微信小程序原生 | C 端主阵地,用户阅读、购买、分销、提现等 |
|
|||
|
|
| **next-project/** | Next.js(可选保留) | 原单体:含 `app/view/` C 端、`app/admin/` 管理端、`app/api/`;可作备用或逐步下线 |
|
|||
|
|
|
|||
|
|
### 3.2 接口与前端对应关系
|
|||
|
|
|
|||
|
|
- **API 服务**:由 **soul-api**(Go)提供,端口默认 8080;路径与现网完全一致(如 `/api/user/profile`、`/api/admin/withdrawals`)。
|
|||
|
|
- **管理端**:**soul-admin** 独立部署,环境变量 `VITE_API_BASE_URL` 指向 soul-api 或 Next 的 API 基地址。
|
|||
|
|
- **小程序**:通过 `app.request()` 等封装请求 API,baseUrl 可配置,与 soul-api 对接。
|
|||
|
|
- **API 字段规范**:对外请求/响应**统一使用小写开头驼峰(camelCase)**,如 `userId`、`referralCode`、`createdAt`;数据库列名仍为 snake_case,仅在服务端内部使用。
|
|||
|
|
|
|||
|
|
## 4. 目录导航(别迷路)
|
|||
|
|
|
|||
|
|
- **[1、需求](1、需求/业务需求.md)**:我们要干啥,成本多少,技术要求;[TDD 需求方案](1、需求/TDD_创业派对项目方案_v1.0.md)。
|
|||
|
|
- **[2、架构](2、架构/系统架构.md)**:整体怎么搭,前后端怎么分。
|
|||
|
|
- [技术选型与全景图](2、架构/技术选型与全景图.md)、[前后端架构分离策略](2、架构/前后端架构分离策略.md)
|
|||
|
|
- **[3、原型](3、原型/原型设计规范.md)**:原型设计规范。
|
|||
|
|
- **[4、前端](4、前端/前端架构.md)**:前端架构(含 **soul-admin**、小程序)、模块详解、开发规范;[当前小程序开发细则](4、前端/当前小程序开发细则.md);[ui 子目录](4、前端/ui/):项目概述、页面功能、组件清单、API/状态/分销/支付/管理后台/部署说明等。
|
|||
|
|
- **[5、接口](5、接口/API接口.md)**:前后端怎么说话。
|
|||
|
|
- **[6、后端](6、后端/后端架构.md)**:**soul-api**(Go + Gin + GORM)架构与业务模块,后端开发规范。
|
|||
|
|
- **[7、数据库](7、数据库/数据库设计.md)**:数据存哪,怎么存。
|
|||
|
|
- **[8、部署](8、部署/部署总览.md)**:怎么上线、本地运行、宝塔部署、新分销部署、修复与优化记录等。
|
|||
|
|
- **[9、手册](9、手册/写作与结构维护手册.md)**:怎么写书,怎么维护。
|
|||
|
|
- **[10、项目管理](10、项目管理/项目落地推进表.md)**:项目推进与提示词。
|
|||
|
|
|
|||
|
|
## 5. 开发约束(重要)
|
|||
|
|
|
|||
|
|
> **2026-02-07 更新:前后端已分离,soul-api + soul-admin 为主力**
|
|||
|
|
|
|||
|
|
### 5.1 项目与开发策略
|
|||
|
|
|
|||
|
|
| 项目/端 | 路径/端口 | 开发状态 | 说明 |
|
|||
|
|
|---------|-----------|----------|------|
|
|||
|
|
| **soul-api** | 端口 8080 | ✅ 主力后端 | Go + Gin,提供全部 `/api/*` 接口,MySQL + GORM |
|
|||
|
|
| **soul-admin** | 独立 SPA | ✅ 主力管理端 | React + Vite,通过 `VITE_API_BASE_URL` 对接 soul-api |
|
|||
|
|
| **微信小程序** | `miniprogram/` | ✅ 主力 C 端 | 所有面向用户的新功能在此开发 |
|
|||
|
|
| **Next.js** | `next-project/` 或原 app | 🔒 备用/冻结 | C 端 `app/view/` 冻结;`app/api/` 可作过渡或下线 |
|
|||
|
|
|
|||
|
|
### 5.2 核心原则
|
|||
|
|
|
|||
|
|
1. **后端统一走 soul-api**:新接口在 soul-api 实现,路径与现网一致,响应字段统一 **camelCase**。
|
|||
|
|
2. **管理端统一走 soul-admin**:新管理功能在 soul-admin 开发,请求体与展示字段统一 **camelCase**。
|
|||
|
|
3. **小程序优先**:C 端新功能只在小程序开发,请求/响应已按 camelCase 对接。
|
|||
|
|
4. **API 契约统一**:查询、新增、编辑、删除的请求/响应字段全部小写开头驼峰(如 `userId`、`createdAt`、`referralCode`)。
|
|||
|
|
|
|||
|
|
### 5.3 登录与鉴权
|
|||
|
|
|
|||
|
|
| 端 | 登录方式 | 说明 |
|
|||
|
|
|---|----------|------|
|
|||
|
|
| 小程序 | 微信一键登录 / 手机号快速授权 | 与 soul-api 或 Next 的 `/api/miniprogram/login` 等对接 |
|
|||
|
|
| soul-admin | 手机号 + 密码 | POST `/api/admin` 登录,GET 鉴权,Cookie/Token |
|
|||
|
|
| 账号统一 | 以手机号/用户 ID 为唯一标识 | 多端数据互通 |
|
|||
|
|
|
|||
|
|
### 5.4 为什么前后端分离?
|
|||
|
|
|
|||
|
|
- **独立部署与扩展**:后端 Go 可单独扩容,前端静态资源可 CDN。
|
|||
|
|
- **多端复用 API**:小程序、soul-admin、未来 App 共用同一套 soul-api。
|
|||
|
|
- **开发效率**:前后端并行、接口契约清晰(camelCase 统一)。
|
|||
|
|
|
|||
|
|
## 6. 这里的规矩
|
|||
|
|
|
|||
|
|
- **行动至上**:文档是用来指导干活的,不是写来看的。
|
|||
|
|
- **数据说话**:所有优化要有数据支撑,加载快了多少?转化高了多少?
|
|||
|
|
- **保持简单**:能用现成的库就别自己造轮子。
|
|||
|
|
|
|||
|
|
---
|
|||
|
|
**复盘:**
|
|||
|
|
项目已完成前后端分离:soul-api(Go)负责接口与数据库,soul-admin(React)负责管理后台,miniprogram 负责 C 端。API 与前端字段已统一为 camelCase,便于多端对接与后续扩展。
|