22 个版本

0.1.79 2024 年 6 月 17 日
0.1.78 2023 年 10 月 5 日
0.1.77 2023 年 7 月 24 日
0.1.72 2023 年 6 月 21 日
0.1.69 2022 年 11 月 7 日

#244 in 生物学

Download history 173/week @ 2024-06-14 15/week @ 2024-06-21 40/week @ 2024-07-05 7/week @ 2024-07-12

1,198 每月下载量

MIT 许可证

315KB
7.5K SLoC

ggetrs

MIT licensed actions status codecov Crates.io docs.rs

简介

什么是 ggetrs

ggetrs 是一款免费的、开源的命令行工具,能够高效查询基因组数据库。它由一系列独立的但可互操作的模块组成,每个模块都旨在通过一行代码方便地进行一种类型的数据库查询。

这是原始基于 Python 的程序 gget 的 Rust 重构版本,并被重新编写以利用 Rust 强大的 HTTP 和异步功能,以提供更快的用户体验。

原始 gget 的函数调用之间有一些微小的语法变化,每个工具的描述可以在 模块页面 上找到。

安装

此命令行工具通过 crates.io 分发,可以通过 Rust 包管理器 cargo 进行安装。

cargo install ggetrs

有关替代安装说明以及 Python 模块安装的说明,请参阅 安装页面

文档

命令行和 Python

命令行和 Python 工具的所有使用和功能文档都可以在 ggetrs 主页 上找到。

Rust

ggetrs 被实现为一个 Rust 库以及一个独立的二进制文件,因此所有 API 调用和数据结构的文档都可以在 docs.rs 上找到。

贡献

此项目旨在开源,并欢迎贡献!

如果您是 Rust 或开源的新手但仍然想做出贡献,请不要犹豫,与我联系!我将非常乐意帮助您构建您的第一个模块。

所有新添加的内容都必须通过并遵循当前的测试标准。

常见问题解答

这和 gget 有什么不同?

ggetrs 利用 Rust 强大的异步功能,让您能够执行大量 HTTP 请求而不会增加等待时间。

由于它也是一个编译程序,因此在命令之间没有启动时间,您可以在没有开销的情况下,使用for loop运行您最喜欢的工具。

然而,ggetrs忠实地遵循原始的gget思想,并试图使使用尽可能简单,无论接口如何(从Python到CLI)。

这是否有gget没有的功能?

我们正在努力使这两个工具的功能相匹配 - 但目前这包括Chembl生物活性数据库,来自Ensembl API的更多端点,以及对NCBIUniprot的直接查询。

gget是否有ggetrs没有的功能?

目前ggetrs可能不支持ggetrs muscleggetrs alphafold功能。原因是这些功能是现有二进制的包装,而不是HTTP请求。

我需要了解Rust才能使用这个工具吗?

这个工具完全用Rust编写,但允许使用pyo3以Python接口。目前并非所有工具都有Python API,但计划最终实现。

目前所有支持的gget模块都已实现Python API。

依赖项

~27–44MB
~740K SLoC