QuranEngine

CI codecov

QuranEngine 是开源的 iOS 程序库,为 Quran.com iOS App 提供技术支持。此仓库包含大约 99% 的 Quran.com iOS App 代码,为您构建与古兰经相关的应用程序提供了稳健的基础。

在此仓库中,我们还提供了一个名为 QuranEngineApp 的示例应用程序,该程序模仿了 Quran.com iOS App,可在 Example 文件夹下找到。

安装

可以通过 Swift Package Manager 安装此仓库

.package(url: "https://github.com/quran/quran-ios", branch: "main")

然后使用一个或多个可用目标作为依赖项。所有目标都可供使用者使用,例如

.product(name: "AppStructureFeature", package: "quran-ios"),

⚠️请注意,我们不支持 CocoaPods 或 Carthage,并且我们不计划在未来支持这些。

仓库结构和架构

该程序库包含 6 个顶层目录

⚠️UI 和 Features 尚未包含测试,约占源代码的 50%。我们热衷于在未来 inshaa'Allah 为它们添加测试。

以下是架构的可视化表示

architecture

此依赖顺序在 Package.swift 中强制执行。

贡献

我们热烈欢迎对 QuranEngine 项目的贡献。我们鼓励潜在的贡献者解决任何未解决的问题。请在仓库的 Discussions 部分与我们开始对话,我们将尽力帮助您,inshaa'Allah。

如果您的贡献足够小,请随时直接创建拉取请求 (Pull Request)。对于较大的贡献,我们要求您首先在讨论区创建一个帖子。这使我们能够确保没有人正在开发相同的功能,并且还使我们能够为即将到来的功能做计划,以防您的贡献依赖于另一个功能。

预期用途

我们重新开源该应用程序是因为我们看到了让开发者在我们已构建的基础上进行构建的诸多好处。这样,开发者不必重新实现基础,可以在想法本身上进行更多创新。与将我们已实现的功能提供给他人所带来的整体益处相比,我们之前看到的恶意行为(包括但不限于将此免费代码出售给不知道此仓库存在的人)是微不足道的。我们期待看到伟大的伊斯兰创新,inshaa'Allah,这有助于世界各地的穆斯林。

我们欢迎所有类型的使用。但是,我们恳请您不要在未做任何修改的情况下使用 QuranEngineApp 示例并重新发布它。您可能还需要自带数据。

许可证