字节笔记本

2026年3月22日

DanXi - 复旦大学开源教务工具

本文介绍 DanXi(旦挞),一个面向复旦大学学生的全平台一站式校园服务应用,覆盖 iOS、Android、Windows、macOS、Linux 甚至 watchOS 等多个平台。作为由 FDU 学生社区驱动的开源项目,DanXi 整合了校园卡查询、课表管理、成绩查询、空教室查询、校车查询等多项核心功能,旨在为复旦学生提供最便捷的校园生活数字化体验。

项目简介

DanXi(原名旦夕、旦兮)取自复旦大学校训"日月光华,旦复旦兮",是一款由复旦大学学生自发开发、维护的第三方校园服务应用。项目在 GitHub 上开源,采用 GPL-3.0 许可证,目前已有超过 240 个 Stars 和 36 个 Fork,积累了超过 2,670 次代码提交,由 12 位核心贡献者共同维护。

与官方校园应用不同,DanXi 聚焦于学生日常使用频率最高的功能场景,以简洁直观的界面设计、快速的响应速度和跨平台的一致性体验著称。项目持续活跃更新,最新版本为 1.4.4,支持从 App Store、GitHub Releases 等多个渠道获取安装。

核心特性

校园卡余额与消费记录

实时查询校园卡余额和详细的消费交易记录,帮助学生随时掌握个人账户资金变动情况。消费数据清晰呈现每笔交易的金额、时间和商户信息。

食堂消费人数查询

实时显示各食堂当前的就餐人数,帮助学生避开高峰时段,合理安排用餐时间,提升就餐体验。

复活码快速显示

支持快速显示校园健康打卡所需的复活码(随申码),并且特别提供了 Apple Watch 支持,学生可以在手表上一键展示,无需掏出手机,极为便利。

空教室查询

快速查询全校各教学楼当前空闲的教室,方便学生自习、小组讨论或临时活动使用。数据实时更新,确保查询结果的准确性。

体育锻炼次数查询

一键查看本学期体育锻炼(刷锻)的完成次数,帮助学生掌握体锻进度,避免到期末才发现未达标。

课表查阅与导出

完整展示本学期课程安排,支持将课表导出至系统日历(如 Apple Calendar、Google Calendar),方便在日历应用中统一管理课程与其他日程。

教务处通知

聚合展示教务处发布的各类通知公告,确保学生不会错过重要的选课、考试、缴费等关键信息。

考试日程查询与导出

查询期中、期末考试安排,支持导出至系统日历,帮助学生提前做好复习规划和时间管理。

期末绩点与专业排名查询

查询期末考试成绩的绩点(GPA)及在专业中的排名情况,帮助学生了解自身的学业水平和发展趋势。

校车班次查询

实时查询校区间校车的发车班次和时间表,方便跨校区上课或办事的学生合理安排出行。

技术栈

  • 核心框架:Flutter(跨平台 UI 框架)
  • 编程语言:Dart(93.1%),Swift(2.7%),C++(2.2%),CMake(1.3%),Ruby(0.4%)
  • Flutter 版本:3.24.5 stable channel
  • Dart 版本:3.5.4
  • 最低 Go 版本:不适用
  • 许可证:GPL-3.0 License
  • 支持平台:iOS、iPadOS、watchOS、Android、Windows、macOS、Linux
  • 包管理:pub(Dart/Flutter 包管理器)
  • 国际化:支持中英文
  • CI/CD:GitHub Actions(iOS CI、部署到 GitHub Pages)

安装指南

iOS / iPadOS / watchOS

从 Apple App Store 直接搜索"旦挞"下载安装。Apple Silicon Mac 用户同样可以从 App Store 获取 macOS 版本。

Android

打开项目 GitHub Releases 页面,下载最新版本的 APK 安装包。根据设备差异,可能需要在系统设置中允许"安装来自未知来源的应用"。

Windows

从 GitHub Releases 页面下载最新版本的 ZIP 压缩包,解压后直接运行可执行文件即可,无需额外安装依赖。

macOS(Intel 芯片)

Apple Intel 芯片的 Mac 用户需从 GitHub Releases 页面下载 DMG 硬盘映像文件,挂载后将应用拖拽到 Applications 文件夹即可完成安装。Apple Silicon 用户可直接从 App Store 下载。

Linux

从 GitHub Releases 页面下载对应 Linux 发行版的安装包,按照各发行版的包管理方式进行安装。

快速开始

安装完成后,打开应用即可使用。DanXi 的界面设计遵循移动端的交互习惯,功能模块清晰分区。以下是各平台的基本使用流程:

首次登录

  1. 打开 DanXi 应用
  2. 使用复旦大学统一身份认证(UIS)账号登录
  3. 授权应用访问校园服务数据
  4. 登录成功后即可使用各项功能

Apple Watch 复活码

  1. 在 iPhone 上安装 DanXi 应用
  2. 打开 iPhone 上的 Watch 应用
  3. 在"已安装的 App"中找到 DanXi 并启用
  4. 复活码将同步显示在 Apple Watch 上

课表导出至日历

  1. 进入"课表"功能页面
  2. 点击导出按钮
  3. 选择目标日历应用
  4. 确认后课表事件将自动添加到所选日历中

使用示例

查询校园卡余额

打开应用后,在首页或"校园卡"模块中即可查看当前校园卡余额。点击进入详情页,可以查看完整的消费记录列表,包括每笔消费的商户名称、金额和时间。

查看食堂实时人数

在"食堂"功能模块中,各食堂名称旁会显示当前在食堂就餐的人数。学生可以根据人数判断食堂的拥挤程度,选择合适的时间前往用餐。

查找空教室

进入"空教室"查询页面,选择教学楼和时间段,系统会列出该时间段内所有空闲的教室。支持按教学楼、楼层、教室类型等条件筛选。

导出考试日程

在"考试"模块中查看本学期的考试安排后,点击"导出至日历"按钮,选择目标日历,所有考试将自动创建为日历事件,并设置提前提醒。

查询体锻次数

进入"刷锻"模块,可以查看本学期已完成的体育锻炼次数和目标次数,以及每次刷锻的详细记录。

校车班次查询

在"校车"模块中,查看各校区之间的校车发车时刻表,支持查看当天剩余班次和预计到达时间。

绩点与排名查询

学期结束后,在"成绩"模块中查询各科成绩及 GPA,同时可以查看自己在专业中的排名信息。

项目链接

分享: