TMDb - 电影数据库

CI Integration CodeQL Documentation codecov

The Movie Database (TMDb) 的 Swift 包 https://www.themoviedb.org

要求

安装

Swift 包管理器

将 TMDb 包作为依赖项添加到你的 Package.swift 文件,并将其作为依赖项添加到你的目标。

// swift-tools-version:5.9

import PackageDescription

let package = Package(
  name: "MyProject",

  dependencies: [
    .package(url: "https://github.com/adamayoung/TMDb.git", from: "13.0.0")
  ],

  targets: [
    .target(name: "MyProject", dependencies: ["TMDb"])
  ]
)

Xcode 项目

将 TMDb 包添加到你项目的包依赖项中。

设置

获取 API 密钥

从 The Movie Database 网站创建一个 API 密钥 https://www.themoviedb.org/documentation/api

快速开始

let tmdbClient = TMDbClient(apiKey: "<your-tmdb-api-key>")

let moviesToDiscover = try await tmdbClient.discover.movies().results
let fightClub = try await tmdbClient.movies.details(forMovie: 550)

文档

用法文档和示例可以在 https://adamayoung.github.io/TMDb/documentation/tmdb/ 找到

开发

先决条件

Xcode 16.0+ Swift 6.0+ Homebrew

Homebrew

安装 homebrew 和以下工具

brew install swiftlint swiftformat markdownlint

提交 PR 之前

单元和集成测试

Swift Testing 被用作测试框架。 XCTest 不再使用。

确保所有新代码都通过单元测试覆盖。如果任何新方法添加到调用 TMDb API 端点的服务,请确保有集成测试覆盖这些。

编码风格

编码风格由 swift-format 强制执行。

使用以下命令来检查代码风格

make lint

要格式化代码库,请使用

make format

DocC 文档

确保所有 public 类、结构体、属性和方法都已注释

DocC 文档可以通过以下方式本地构建和托管

make preview-docs

有关更多详细信息,请参阅 DocC | Apple Developer Documentation

CI 检查

在提交 PR 之前,请确保所有 CI 检查都将通过

make ci

CI 检查由以下任务组成

make lint
make lint-markddown
make test
make test-ios
make test-watchos
make test-tvos
make test-visionos
make test-linux
make integration-test
make build-release
make build-docs

为了运行集成测试,需要设置以下环境变量。

如果未设置这些环境变量,则在使用 make 以外的方式时,集成测试将被跳过。

在 Linux 上运行单元测试需要运行 Docker

参考

许可

此库在 Apache License 2.0 下获得许可。 有关详细信息,请参阅 LICENSE