docs: add README.md
This commit is contained in:
118
README.md
118
README.md
@@ -1,65 +1,107 @@
|
||||
1. 视觉底座:极致的“留白”
|
||||
为了对齐“潮汐风格”,你的 UI 架构需要遵循 0.618 黄金比例 的布局。
|
||||
# 见素 - AI 起名应用
|
||||
|
||||
色彩系统: * 主背景:#FFFFFF(纯白)。
|
||||
一个专注于"留白"与"故事化"体验的 AI 起名应用,融合古典诗意与现代审美。
|
||||
|
||||
文字:#2D2D2D(带有温度的深灰,而非纯黑)。
|
||||
## 项目简介
|
||||
|
||||
辅助色:#E0E0E0(极细的分割线)。
|
||||
「见素」取自《道德经》"见素抱朴",意指呈现本色、回归本真。应用通过极简的视觉设计、带有物理反馈的微交互,以及基于 AI 的深度叙事解读,为用户创造一种"审美溢价"的起名体验。
|
||||
|
||||
字体栈: * 标题/名字展示:优先调用 Noto Serif SC (思源宋体),展现古典韵味。
|
||||
## 技术架构
|
||||
|
||||
说明文字:使用 PingFang SC,保证移动端的易读性。
|
||||
```
|
||||
├── backend/ # Spring Boot 后端
|
||||
│ └── src/main/java/com/jiansu/naming/
|
||||
│ ├── NamingApplication.java # 应用入口
|
||||
│ ├── controller/
|
||||
│ │ └── NamingController.java # REST API 控制器
|
||||
│ ├── model/
|
||||
│ │ └── NameCard.java # 名字卡片数据模型
|
||||
│ └── service/
|
||||
│ ├── MiniMaxService.java # AI 名字生成服务
|
||||
│ └── ToneAnalysisService.java # 声韵分析服务
|
||||
│
|
||||
└── miniprogram/ # 微信小程序
|
||||
├── app.js # 应用入口
|
||||
└── pages/
|
||||
├── home/ # 首页(关键词输入)
|
||||
└── index/ # 名字卡片展示页
|
||||
```
|
||||
|
||||
2. 交互灵魂:卡片滑动与“见素”时刻
|
||||
不要简单的 Swiper,要给滑动增加“摩擦力”和“阻尼感”。
|
||||
## 核心功能
|
||||
|
||||
卡片设计:
|
||||
### AI 故事化起名
|
||||
- 基于 AI 模型生成富有诗意的名字
|
||||
- 每个名字配有出处诗句和"通感"叙事描述
|
||||
- 拒绝生硬的 JSON 返回,扮演"隐居的诗人"角色
|
||||
|
||||
正面:只放一个巨大的、居中的名字,下方一行极小的出处诗句。
|
||||
### 声韵分析
|
||||
- **平仄匹配**:1、2 声为平,3、4 声为仄
|
||||
- **优选模式**:平仄平、仄平仄、平平仄、仄仄平(有起伏感)
|
||||
- **开口度检查**:避免连续闭口音,确保名字响亮大气
|
||||
|
||||
反面(点击翻转):展示**“叙事性解读”**。
|
||||
### 小程序交互
|
||||
- 带阻尼感的卡片滑动体验
|
||||
- 左滑跳过(卡片淡出)
|
||||
- 右滑收藏(触觉震动反馈)
|
||||
- 点击翻转查看名字的叙事性解读
|
||||
|
||||
反馈微交互:
|
||||
## 技术栈
|
||||
|
||||
左滑(无感): 卡片像烟雾一样变淡消失。
|
||||
| 端 | 技术 |
|
||||
|---|---|
|
||||
| 后端 | Java 8 + Spring Boot 2.7 |
|
||||
| AI 服务 | MiniMax API |
|
||||
| 拼音处理 | Pinyin4j |
|
||||
| 小程序 | 原生微信小程序 |
|
||||
| 构建工具 | Maven |
|
||||
|
||||
右滑(收藏): 触发轻微的 Haptic Feedback(震动),名字化作一个墨点落入底部的“收藏”图标中。
|
||||
## 快速开始
|
||||
|
||||
3. 技术核心:AI 故事化与声韵算法
|
||||
既然你有 Gemini API 的开发经验,这里可以做得很硬核:
|
||||
### 后端启动
|
||||
|
||||
AI 故事化 Prompt 策略
|
||||
不要让 AI 只返回 JSON,要让它扮演一个“隐居的诗人”。
|
||||
```bash
|
||||
cd backend
|
||||
mvn spring-boot:run
|
||||
```
|
||||
|
||||
System Prompt 示例:
|
||||
“你是「见素」的灵魂导师。当用户输入期待时,请从《诗经》、《楚辞》或宋词中提取意象,生成3个名字。每个名字必须配有一段 50 字以内的‘通感’描述,包含气味、光线或声音的描写,拒绝说教。”
|
||||
后端服务将在 `http://localhost:8080` 启动。
|
||||
|
||||
声韵分析逻辑 (Algorithm)
|
||||
你可以写一个简单的 Python 或 Node.js 脚本来处理:
|
||||
### API 接口
|
||||
|
||||
平仄匹配: 检测姓氏(平/仄)与名字(平/仄)的组合。
|
||||
| 接口 | 方法 | 参数 | 说明 |
|
||||
|---|---|---|---|
|
||||
| `/api/names/generate` | GET | keyword (可选,默认"清冷") | 生成名字列表 |
|
||||
|
||||
优选模式: 平仄平、仄平仄(有起伏感)。
|
||||
### 小程序开发
|
||||
|
||||
叠音/开口度检查: 避免连续的闭口音,确保名字喊出来时是响亮的。
|
||||
1. 导入 `miniprogram` 目录到微信开发者工具
|
||||
2. 配置项目 AppID
|
||||
3. 启动开发调试
|
||||
|
||||
4. 商业化与衍生:高级感变现(先不实现)
|
||||
拒绝弹窗广告,我们走**“审美溢价”**路线。
|
||||
## 配置说明
|
||||
|
||||
名字壁纸生成: * 利用 Canvas 生成一张极简海报:居中的大字 + 用户的姓氏印章 + 独一无二的编号(如:见素第 8921 号灵感)。
|
||||
后端配置文件:`backend/src/main/resources/application.yml`
|
||||
|
||||
变现点: 基础版免费,高清无水印版 ¥1.9 - ¥9.9。
|
||||
```yaml
|
||||
server:
|
||||
port: 8080
|
||||
miniMax:
|
||||
api-key: your-api-key-here
|
||||
base-url: https://api.minimax.chat
|
||||
```
|
||||
|
||||
“见素”锦囊:
|
||||
## 项目理念
|
||||
|
||||
如果用户一直刷不到满意的,提供一个“深度定制”入口,调用更高级别的模型(如 Claude 3.5 Sonnet 或 Gemini Ultra)进行 1v1 生成,按次收费。
|
||||
### 视觉设计
|
||||
- **主背景**:`#FFFFFF` 纯白,营造空灵感
|
||||
- **文字**:`#2D2D2D` 带有温度的深灰
|
||||
- **字体**:思源宋体展示名字,苹方用于正文
|
||||
|
||||
5. 开发者视角的 MVP 路径 (Roadmap)
|
||||
Phase 1 (骨架): 搭建基础的 Next.js 或 Uni-app 框架,实现卡片滑动组件。
|
||||
### 命名哲学
|
||||
> "你是「见素」的灵魂导师。当用户输入期待时,请从《诗经》、《楚辞》或宋词中提取意象,生成3个名字。每个名字必须配有一段 50 字以内的'通感'描述,包含气味、光线或声音的描写,拒绝说教。"
|
||||
|
||||
Phase 2 (大脑): 接入 Gemini API,调试“故事化起名”的提示词,确保输出的 Vibe 符合“见素”。
|
||||
## 未来规划
|
||||
|
||||
Phase 3 (细节): 加入音效(类似翻书声或清脆的铃声)和声韵评分逻辑。
|
||||
|
||||
Phase 4 (美化): 优化字体渲染,增加 Canvas 海报生成功能。
|
||||
- [ ] 名字壁纸 Canvas 生成
|
||||
- [ ] 高级定制服务
|
||||
- [ ] 微音效优化
|
||||
|
||||
Reference in New Issue
Block a user