4 个版本
0.2.2 | 2024 年 8 月 9 日 |
---|---|
0.2.1 | 2024 年 8 月 7 日 |
0.2.0 | 2024 年 8 月 7 日 |
0.1.0 | 2024 年 8 月 7 日 |
#582 in 网页编程
每月 302 次下载
41KB
614 行
概述
Octoapp 是一个用于构建 GitHub Apps 的 Rust 库。它提供了一个简单的接口来创建 GitHub Apps 和 处理 webhook 事件。
✨ 特性
- 专注于简单性和易用性。
- 内置支持处理 GitHub webhook 事件。
- 使用
octocrab
与 GitHub API 交互。 - 支持
rocket
网页框架来处理传入的 webhook 事件。- 特性:
rocket
- 特性:
🚀 快速入门
运行以下命令将 octoapp
添加到您的项目中
cargo add octoapp
🏃 开始
use anyhow::Result;
use octoapp::prelude::*;
#[tokio::main]
async fn main() -> Result<()> {
// [optional] Load .env file if it exists
// dotenvy::dotenv().ok();
// Load the configuration (from environment variables)
// Or, you can set the configuration manually
let config = OctoAppConfig::init()
.app_name("My App")
.app_id(12345)
.client_id("client_id")
.client_secret("client_secret")
.webhook_secret("webhook_secret")
.build()
.expect("Failed to build OctoAppConfig");
println!("{}", config);
// Create a new Octocrab instance
let octocrab = config.octocrab();
if let Ok(client) = octocrab {
let repos = client.issues("42ByteLabs", "octoapp")
.list()
.creator("GeekMasher")
.send()
.await?;
}
Ok(())
}
📚 文档
您可以在 docs.rs 上找到此项目的文档。
♥️ 维护者 / 贡献者
🦸 支持
如果有错误或功能请求,请创建 GitHub Issues。
此项目使用 语义版本化 (v2),并且主要版本发布时将发生破坏性更改。
📓 许可证
此项目根据 MIT 开源许可证的条款进行许可。有关完整条款,请参阅 MIT。
依赖关系
~11–44MB
~748K SLoC