UBAA 是一款面向北京航空航天大学学生的跨平台客户端,基于 Kotlin Multiplatform、Compose Multiplatform 和 Ktor 构建,覆盖 Android、iOS、Desktop 与 Web。
它不仅是客户端,也是一套统一的校园服务聚合方案:服务端负责适配和清洗校内系统数据,客户端在多端提供一致、现代的使用体验。
- 下载发布版:GitHub Releases
- 在线使用:网页版
- 开发文档:项目文档
yay -S ubaa- 多端统一:Android、iOS、Desktop、Web 共用核心能力与大部分业务代码。
- 校园服务聚合:统一认证、课表、考试、空闲教室、博雅、签到、评教等能力集中接入。
- 全栈同仓:
shared统一前后端契约,server负责网关与会话管理,composeApp负责跨平台 UI。 - 现代体验:基于 Material Design 3,支持系统主题适配与持续更新。
详细文档统一维护在仓库 docs/ 中,并由 VitePress 构建为静态站点。推送 dev 分支后,GitHub Actions 会构建文档并通过 SSH rsync 发布到服务器静态目录。
- 总览入口:项目文档
- 功能说明:功能总览 / 登录与连接模式 / 希冀作业
- 技术文档:架构总览 / 共享 API 与契约 / 服务端路由
- 发布与排障:发布与部署 / 配置说明 / 排障指南
- 项目公告与版本:公告维护 / 更新日志
UBAA/
├── composeApp/ # 跨平台客户端 UI
├── shared/ # 前后端共享契约与通用逻辑
├── server/ # Ktor 后端网关
├── androidApp/ # Android 壳工程
└── iosApp/ # iOS 壳工程