Saffar 应用

Set of images

什么是 Saffar?

一个测试出租车预订应用。

Saffar 是一个开源项目,展示了 Flutter 与 Node JS 后端(Saffar 后端仓库链接 在此)以及 TomTom 地图服务(Google Maps 的替代品。链接 在此)的结合使用。

该应用使用 Flutter 作为其前端框架,TomTom 作为其地图服务,Hive 作为其本地存储,Razorpay 作为其支付网关。它采用了干净架构(干净架构讲座链接 在此)以保持应用的模块化,并分离其 UI 逻辑、业务逻辑和数据逻辑。它使用 Bloc 和 Cubits 进行状态管理,以干净且最优的方式处理状态。

Folder structure

  • core:包含应用中在多个地方使用的所有组件
  • features:包含应用中使用的所有独立功能
    • feature_name
      • data:包含用于从本地和远程数据源获取和发布数据的组件
      • domain:仅包含业务逻辑,无其他
      • presenter:包含 UI 和状态代码

TomTom 地图服务

TomTom 地图服务是 Google Maps 的一个不错的替代品,可以用于测试你的地图应用,它还有一个免费套餐。它包含了大多数应用所需的所有主要服务。截至编写此 README.md 文件时,它还没有专门的 Flutter SDK。(如果未来有 TomTom Flutter SDK,请提出一个 issue 来修正此 README.md 文件)。所以,目前我们必须使用 TomTom 提供的 API,并结合 flutter_map。我将撰写一篇关于如何在 Flutter 中使用 TomTom 地图服务的教程,敬请期待。

其他

如果你有兴趣查看真实应用代码示例,请继续关注。与开发者同行交流总是很愉快的。

GitHub

查看 Github