导师制客户
Systers 师徒制系统的跨平台客户端,使用 Flutter 编写。
是如何创建的?
我非常喜欢 Systers 的导师制系统,想尝试 Flutter,并在圣诞节期间有一些空闲时间。
基本原理
导师制系统旨在尽可能地包容所有人。它也应该适用于
用户的移动操作系统:)
工作状态
该应用程序是 Android 版本的保真度副本。它实现了所有基本
功能,尽管有些功能可能无法完美运行。
哪些功能有效?
几乎所有。
- 登录和注册
- 主页
- 个人资料页面
- 关系页面
- 成员页面
- 更改密码
缺少什么?(与 Mentorship Android 相比)
- 关系页面:更新 `availableToMentor` 和 `needsMentoring` 状态无效
- 关于屏幕基本上是一个关于对话框。它非常简单,应该添加更多信息。
可能会出现偶尔的 UI 错误——在这种情况下,请创建一个 issue。
概述
- 应用程序尝试遵循 Clean Architecture 指南。逻辑被分成 4 层
UIBLoCRepositoryService
- 应用程序广泛使用 BLoC 模式
- 要与 API 通信,使用 Chopper
- 要保存 JWT token,使用 Flutter Secure Storage
- 如果您在代码中发现任何看起来有点奇怪的地方,它可能是 `lib/extensions` 中的某个有用扩展方法
Web 支持
Flutter for Web 目前处于技术预览阶段。要测试此功能,我创建了
一个单独的分支。
我成功地在 Chrome 中运行了此应用程序。
它还不稳定,也不平稳(但嘿,它确实有效)。
不幸的是,我无法向托管的开发服务器发出请求
因为显然它禁用了 CORS。
幸运的是,至少可以连接到本地运行的服务器:)
要使用此应用程序的 Web 版本和您的本地服务器
- 对您的本地 Web 服务器进行这些小的更改
以启用 CORS - 运行本地开发服务器
未来?
我希望 Systers 能够接受这个项目作为他们的项目之一。我确实意识到它需要
更好的文档并且需要稍作打磨,但我真的相信这些问题
很容易解决。
我的梦想?例如,如果明年的 Google Code-in 学生能够继续开发它,我会非常高兴
改进它并打磨代码库。