Kanbasu is a third-party mobile App for Canvas LMS. It implements students' most-used functionalities, and is tailored for SJTU open Canvas system.
- Enhanced activities view
- Full offline capability
- Download all files in one click
- Chat-like discussion view
- iOS, Android, macOS, Windows, Linux support
- Install Android Studio or VSCode (with Flutter support)
- Install Flutter from SJTUG mirror
git clone https://git.sjtu.edu.cn/sjtug/flutter-sdk flutter -b stable
- Checkout a new branch for new feature
git checkout -b some-new-feature
- Do codegen (Do remember this step, otherwise compiler will complain on unexpected locations)
flutter pub run build_runner build
- Start development and test through Mobile or Desktop environment
- Mobile:
flutter devices && flutter run -d device-id
- Desktop: Refer to this article and
flutter run -d macos/windows
.
- Mobile:
- Write unit tests (only for backend APIs, no need for UI components)
- Add changed files manually (Please don't add project-configuration-related files) and commit
- Lint (
flutter analyze
,dart fix --dry-run && dart fix --apply
) - Add changed files and commit again
- Push and submit PR, fill the PR title in format
module: what's changed