This commit is contained in:
吕新雨
2026-01-28 20:50:17 +08:00
commit 049995692d
27 changed files with 1661 additions and 0 deletions

144
README.md Normal file
View File

@@ -0,0 +1,144 @@
# Mindfulness正念 APP📱
本项目面向宝妈群体,提供情绪价值与正念练习支持。
客户端采用 React Native + Expo后端采用 Python + FastAPI数据库 MySQL任务调度 Celery推送/定时等功能完整支持。
# 目录结构
/mindfulness
├── client/ # 客户端React Native + Expo
├── server/ # 后端FastAPI
├── infra/ # 基础设施Docker / k8s / nginx 等)
├── scripts/ # 构建、部署脚本
├── .gitea/ # Gitea Runner CI/CD 配置
└── README.md # 本文档
# 1. 功能概览
## 1.1 一期功能
1APP-PUSH 推送功能
定时推送情绪文字(如:正念短句、温柔提醒)
支持推送策略:
固定时间推送
用户可自定义推送时间
推送内容可由后台配置与更新
2iOS 小组件Widget
小组件展示:
当前情绪文字
背景图片/渐变色
支持多种尺寸(小/中/大)
可配置刷新频率(例如:每小时/每天)
3情绪卡片滑动功能
APP 内展示情绪卡片列表
支持左右滑动(类似 Tinder 卡片)
滑动后显示下一张情绪卡片
可收藏/分享(可作为后续迭代功能)
# 2. 技术栈(建议版本)
## 2.1 客户端
React Native + Expo
TypeScript
React Navigation
Zustand或 Redux Toolkit
Axios或 Fetch
Expo Notifications推送
Expo Widgets小组件
Expo 使得 iOS 开发更轻量适合你这种“AI 友好 + 快速迭代”的项目。
## 2.2 后端
Python + FastAPI
SQLAlchemy 2.xAsync
MySQL 8.0
Alembic数据库迁移
Celery + Redis定时推送任务
Pydantic v2请求/响应校验)
pytest单元测试
OpenAPI自动文档
# 3. 环境区分dev / pro
客户端使用 .env.dev 和 .env.prod 管理环境变量
后端使用 .env.dev 和 .env.prod 管理数据库、缓存、第三方服务等
.env 文件不提交到 Git仓库中提供 .env.example 作为模板
打包/部署通过环境变量决定使用 dev 或 prod 配置
# 3.1 本项目代理(本机 7897
如果你需要让本项目在安装依赖/拉取资源时走本机代理(如 Clash本仓库根目录已提供 `.envrc`,默认指向 `127.0.0.1:7897`
在仓库根目录执行(对当前终端会话生效):
```bash
source ./.envrc
```
验证是否生效(任选其一):
```bash
echo $HTTP_PROXY
echo $ALL_PROXY
```
# 4. CI / CD推荐方案
1. 客户端打包并推送到 dev/prod
dev 分支触发 dev 包构建bundle idcom.damer.mindfulness.dev
main 分支触发 prod 包构建bundle idcom.damer.mindfulness
2. 后端构建 Docker 镜像dev/prod
dev 分支构建 :dev 镜像
main 分支构建 :prod 镜像
3. 后端部署dev/prod
dev 分支部署到 dev 环境
main 分支部署到 prod 环境
## 目录
├── .gitea/workflows # gitea runner 配置(建议)
│ ├── client-build.yml # 打包并推送至 testflight
│ ├── server-build.yml # 后端构建镜像推送至docker hub
│ └── server-deploy.yml # 部署后端