Trans Prism(稳态光盒) 是一款致力于为跨性别群体提供安全、客观、无审查的日常辅助工具的开源 App。采用在线/离线双擎架构与纯本地物理持久化策略,核心知识库和极其隐私的生理数据不依赖任何第三方服务器。
Created via Deepseek, Gemini, Claude, GLM, Mimo Vibe Coding(按使用率排序)
追踪 HRT 药物库存与安全续航天数。Chronos 智能调度引擎支持小时/天/周/月四种给药周期——从口服(12h)、外用凝胶到针剂(7天)、GnRHa(28天/84天)全覆盖。基于绝对时间戳的 OS 级通知,点击"已服药"自动扣减库存、推算下次给药时间并重设系统闹钟。
基于开源项目 Oyama-s-HRT-Recorder 的一室/多室指数衰减算法与多剂量叠加模型。支持模拟常见 HRT 药物的稳态血药浓度曲线。App 内嵌 WebView 运行,算法在 WebView 内的 JS 中(非 Dart 侧)。
无缝集成 MtF.wiki / FtM.wiki / RLE.wiki / MioMtFWiki 四大开源指南。默认轻量在线模式(零缓存),支持一键下载离线包(OTA 静默热更新),退出离线模式时可选清理缓存("阅后即焚")。
基于开源项目 VFS Tracker 适配集成。包含 F0 实时检测、音阶练习、88 键钢琴、嗓音测试向导、RBH/TVQ-G/OVHS9 主观量表、训练记录时间线与 AI 鼓励消息。
6 项核心激素(E2/T/PRL/P4/FSH/LH)质量浓度 ↔ 摩尔浓度双向换算,数据衍生自 MtF.wiki。
收录国内跨性别友善的内分泌科、精神科医生与就诊指南,支持筛选、收藏、自动同步更新。
基于 MtF.wiki 大陆标准算法(胸围差 10cm=A,每 2.5cm 递进),5 项测量输入,自动计算 CN/US/EU 三地尺码。每次计算结果自动保存为发育记录,支持历史趋势回溯。所有数据纯本地持久化,绝不离开设备。 |
跨性别主题 SVG 图标库(Noto/OpenMoji/Twemoji 三种风格),支持导出 PNG/JPEG/WEBP、分享、存相册。
直接前往 Releases 页面 下载最新 APK 安装。
git clone https://github.com/Trans-Prism/Trans-Prism.git
cd Trans-Prism
flutter pub get
flutter build windows # Windows
flutter build linux # Linux
flutter build web # Web
flutter build ios # iOS(需自行签名)
flutter build macos # macOS(需自行签名)
⚠️ 因成本问题暂不提供开发者签名,iOS/macOS 需自行自签名。
⚠️ 注意事项: Windows / Linux / Web / iOS / macOS 平台因环境所限均未经过完整测试,可能存在 Bug。
暂无开发计划。可尝试使用「卓易通」等兼容层运行 Android APK。
Trans_Prism (Flutter App) ←── Cloudflare R2 ──→ Trans-Prism-Builder (内容工厂)
│ │
│ 10 大功能模块 │ Python 工具链清洗 5 个上游
│ 纯本地存储 (SharedPreferences) │ 编译 MkDocs Material 静态站点
│ 三路 OTA: APK/Wiki/Tracker │ 封包 ZIP → GitHub Release → R2
详细架构决策参见 ARCHITECTURE_DECISIONS.md,生态全貌参见 SYSTEM_MAP.md。
| 维度 | 方案 |
|---|---|
| 框架 | Flutter 3.x / Dart ≥3.4 |
| 状态管理 | 原生 StatefulWidget + setState(仅主题一处 ChangeNotifier) |
| 本地存储 | SharedPreferences(JSON Key-Value)+ 文件系统(离线包) |
| 网络 | dio + http + 自研 DoH 抗污染 |
| 路由 | 命令式 Navigator.push(无 go_router) |
| WebView | webview_flutter |
| 音频 | record + pitch_detector_dart(YIN 算法) |
| 通知 | flutter_local_notifications + timezone |
| 更新分发 | Cloudflare R2 边缘节点 updates.55114514.xyz |
| 本地服务器 | shelf(PK 模拟器内嵌 HttpServer) |
本项目采用代码、算法与内容分离的复合授权模式:
- 原创客户端代码 — Apache License 2.0
- PK 计算引擎(衍生自 Oyama)— MIT License
- 嗓音训练模块(衍生自 VFS Tracker)— CC BY-NC-SA 4.0
- 内置知识库文本 — CC BY-SA 4.0 / CC BY-ND 4.0
- 激素换算器及罩杯计算器 (衍生自MtF-wiki及网络公开资料) — CC BY-SA 4.0
| 想做什么 | 先去哪个文件 |
|---|---|
| 改用药/提醒 | medication_service.dart / notification_service.dart |
| 改 PK 模拟 | tracker_screen.dart( |
| 改嗓音训练 | pitch_detection_service.dart / screens/voice_training/ |
| 改 Wiki 知识库 | wiki_sync_service.dart / wiki_update_manager.dart |
| 改医疗名录 | medical_directory_service.dart |
| 改激素换算 | hormone_converter_logic.dart(纯函数) |
| 改罩杯计算 | bra_calculator.dart(纯函数)/ bra_calculator_page.dart(UI) |
| 改主题 | theme_service.dart |
| 改更新逻辑 | update_service.dart |
| 了解全貌 | REPO_MAP.md(AI Agent 导航) |
感谢 Project Trans(MtF/FtM/RLE Wiki)、MioMtFWiki、Oyama-s-HRT-Recorder 及 HRT-Recorder-online、VFS Tracker 等开源项目与社区。
⚠️ 医疗免责声明: 本 App 所有功能仅供学术交流与数据可视化参考,不能替代专业医生的诊断与处方。调整激素剂量请务必在正规医生指导下进行。
"May you find your steady state."