4 个版本 (破坏性更新)

0.4.0 2023年3月24日
0.3.0 2022年10月10日
0.2.0 2022年9月18日
0.1.0 2022年5月10日

#160 in 生物学

每月下载量 27次

Apache-2.0/MIT

625KB
10K SLoC

ngs

CI: Status crates.io version crates.io downloads License: Apache 2.0 License: MIT

用于处理下一代测序文件的命令行实用程序。
探索文档

请求功能 · 报告错误 · ⭐ 考虑给仓库加星!⭐

🎨 特性

  • ngs convert. 在下一代测序格式之间进行转换。
  • ngs derive. 下一代测序数据的法医学分析工具。
  • ngs generate. 从给定的参考基因组生成 BAM 文件。
  • ngs index. 为各种下一代测序文件生成索引文件。
  • ngs list. 列出此命令行工具支持的各项。
  • ngs plot. 生成由 ngs qc 生成的数据的图表。
  • ngs qc. 为 BAM 文件生成质量控制指标。
  • ngs view. 查看各种下一代测序文件,有时包括查询区域。

指导原则

  • 现代、可靠的日常生物信息学分析基础 — 使用 Rust 编写。 ngs 旨在将一套相当全面的日常生物信息学分析工具和实用程序打包在一起。它是针对现代、多核系统编写的,并使用 Rust 编写。虽然我们今天还没有达到这个目标,但我们计划在未来努力实现这一目标。
  • 在通用硬件/软件上运行。 我们的目标是让 ngs 中的每个子命令都能在大多数计算环境中运行,无需特殊硬件或软件。实际上,这意味着我们已经设计了 ngs 以在具有至少四个(4)核心和十六(16)GB RAM 的任何 UNIX-like 环境中运行。通常,工具将以更少的资源运行。这个设计决策很重要,有时意味着 ngs 的运行速度比其他情况下慢。

📚 入门

安装

要安装最新发布的版本,您可以直接使用 cargo

cargo install ngs

要在 main 上安装最新版本,您可以使用以下命令。

cargo install --locked --git https://github.com/stjude-rust-labs/ngs.git

使用 Docker

docker pull ghcr.io/stjude-rust-labs/ngs
docker run -it --rm --volume "$(pwd)":/data ghcr.io/stjude-rust-labs/ngs

/data 是 docker 图像的工作目录。从包含您数据的目录运行此命令将允许容器对这些文件执行操作。

注意:目前 latest 标签指的是 ngs 的最新发布版本,而不是此存储库中最新的代码更改。

🖥️ 开发

要建立开发环境,请使用以下命令。

# Clone the repository
git clone [email protected]:stjude-rust-labs/ngs.git
cd ngs

# Run the command line tool using cargo.
cargo run -- -h

🚧️ 测试

# Run the project's tests.
cargo test

# Ensure the project doesn't have any linting warnings.
cargo clippy

# Ensure the project passes `cargo fmt`.
cargo fmt --check

最低支持的 Rust 版本 (MSRV)

此项目的最低支持 Rust 版本是 1.64.0。

🤝 贡献

欢迎贡献、问题和功能请求!请随意检查问题页面

📝 许可证

  • 所有与 ngs derive instrument 子命令相关的代码都根据 AGPL v2.0 许可。这并不是因为任何严格的要求,而是出于对一些 代码 的尊重,这些代码启发了我们的策略(并从中复制了模式),因此决定以一致的方式许可此代码。
  • 此项目的其余部分根据您的选择以 Apache 2.0MIT 许可。

版权 © 2021-至今 圣犹达儿童研究医院

依赖关系

~27–40MB
~549K SLoC