Ditonton App

GitHub stars GitHub forks GitHub watchers

Codemagic build status GitHub license platform Open Source Love

特点

  • 电影(正在上映、热门、评分最高)
  • 电视剧(正在播出、热门、评分最高)
  • 观影列表 电影和电视剧
  • 搜索电影和电视剧
  • 电影和电视剧详情
  • 电视剧季度和剧集详情

横幅设计


快速开始

这是一个普通的 flutter 应用。您应该遵循官方文档中的说明。本项目使用BLoC(业务逻辑组件)将业务逻辑与 UI 本身分离开来。建议您在开始项目之前先学习一下这里的知识。此外,本项目还采用了模块化方法,将每个功能分离成独立的模块(corefeature_aboutfeature_moviefeature_tv 模块)。

模块化结构?

# Root Project
.
|
├── lib                        # Name of module (default from Flutter).
│
└── modules                    # Name of directory.
    ├── core                   # Name of module.
    │   ├── database           # Business logic component.
    │   ├── styles             # Color, Text & Theme Styles.
    │   ├── utils              # Util shared.
    │   └── presentation       # UI, Widget, State Management.
    │   
    ├── feature_about          # Name of module.
    │   └── presentation       # UI, Widget, State Management.
    │
    ├── feature_movie          # Name of module.
    │   ├── data               # Local & Remote data, Model, Repository.
    │   ├── domain             # Business logic component (Entities, Usecases).
    │   └── presentation       # UI, Widget, State Management.
    │
    └── feature_tv             # Name of module.
        ├── data               # Local & Remote data, Model, Repository.
        ├── domain             # Business logic component (Entities, Usecases).
        └── presentation       # UI, Widget, State Management.

使用 ? 构建

  • BLoC 模式 – 业务逻辑组件,用于将业务逻辑与 UI 分开。
  • SQLite – 本地数据库
  • Equatable – 在 Dart 中比较对象通常需要重写 == 运算符。
  • Json Serializable – 处理 JSON 的构建器。
  • Shared Preferences – 缓存实现方法。
  • 模块化 – 将功能分离成独立、可互换的模块。
  • Codemagic – 处理 DevOps CI/CD 管道和自动构建。
  • 状态处理 – (加载中、无数据、有数据、错误)
  • Get It – 依赖注入

作者

  • Raden Saleh

别忘了关注我,Fork并给我一个⭐

许可证

MIT License

Copyright (c) 2022 Raden Saleh

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

GitHub

查看 Github