rapidforge-io/rapidforge
GitHub: rapidforge-io/rapidforge
RapidForge 是一个基于 Go 的轻量级自托管平台,允许用户通过 Bash 或 Lua 脚本快速构建 webhook、定时任务和动态页面。
Stars: 36 | Forks: 1
# RapidForge
一个轻量级、自托管的平台,用于使用简单的脚本构建和部署 webhook、API 和定时任务。
⭐ 如果您觉得 RapidForge 有用,请给它点个 star — 这有助于其他人发现该项目,并让我们保持动力!## 概述 RapidForge 是一个现代化的自托管平台,让您可以使用 Bash 或 Lua 脚本快速创建 webhook、API、周期性任务和动态页面。RapidForge 以简单性和性能为核心构建,提供了一个简洁的 Web 界面来管理您的自动化工作流,而无需传统 API 框架的复杂性。 ## ✨ 核心功能 - **🚀 简单的 Webhook 创建** - 使用自定义路径和方法即时创建 HTTP 端点 - **⏰ 定时任务** - 使用类似 cron 的调度定期运行脚本 - **📄 动态页面** - 使用拖放编辑器和嵌入式脚本构建交互式网页 - **🔐 内置身份验证** - OAuth2 集成和 bearer token 支持 - **💾 SQLite 驱动** - 轻量级、无服务器数据库,零配置 - **单一二进制文件** - 独立的可执行文件,无依赖,易于部署 - **🔧 脚本语言** - 使用 Bash 或 Lua 编写,内置 HTTP 和 JSON 库 - **📊 事件日志** - 跟踪所有 webhook 执行和响应 - **🔄 自我更新** - 内置更新机制,便于维护 ## 🚀 快速开始 ### 前置条件 - (推荐)使用 [mise](https://mise.jdx.dev/) 管理 Go 和 Node.js 版本 ### 安装说明 **下载预构建二进制文件:** 访问 [releases 页面](https://github.com/rapidforge-io/release) 下载适合您平台的最新二进制文件。 **或从源码构建:** ``` git clone https://github.com/rapidforge-io/rapidforge.git cd rapidforge mise install make build ``` ## 🔧 开发 ### 管理工具版本 本项目使用 [mise](https://mise.jdx.dev/) 来管理 Go 和 Node.js 版本。所有版本规范都集中在 [.mise.toml](.mise.toml) 中。 **要更新版本:** 1. 编辑 [.mise.toml](.mise.toml) 设置所需的 Go 和 Node 版本 2. 运行 `make sync-versions` 将更改传播到所有文件(Dockerfile、CI 工作流、README 等) 3. 运行 `mise install` 在本地安装新版本 这确保了开发环境、CI/CD 流水线和 Docker 构建之间的版本一致性。 ### 运行 RapidForge ``` ./rapidforge ``` 当 RapidForge 首次启动时,它将创建管理员用户和密码,这些信息仅在第一次时打印到 stdout。请使用这些凭据登录,随后修改您的密码。 ## 📖 文档 有关详细的配置、部署指南和 API 文档,请访问: **[https://rapidforge.io/docs](https://rapidforge.io/docs)** ## 🌙 关于 Lua 二进制文件 RapidForge 附带了一个从 [superconfigure](https://github.com/ahgamut/superconfigure) 项目获取的打包 Lua 二进制文件,该项目使用 [Cosmopolitan](https://github.com/jart/cosmopolitan/) libc 构建可移植的可执行文件。这意味着该二进制文件可以在 Linux、macOS 和 Windows 上运行,无需任何原生依赖 — 无需安装。 如果您不想使用打包的二进制文件(例如出于安全、许可或平台特定原因),只需在您的主机上安装 Lua。RapidForge 将自动检测并优先使用系统安装的 `lua` 可执行文件,而不是打包的那一个。 ## 🛠️ 技术栈 - **后端:** Go 与 Gin 框架 - **数据库:** 支持 migration 的 SQLite - **前端:** 用于交互性的 HTMX,Shoelace Web 组件。 - **编辑器:** 用于代码编辑的 CodeMirror - **可视化编辑器:** 基于 React 的拖放式页面构建器 ## 🔧 配置 可以通过环境变量配置 RapidForge: 有关配置选项,请参阅 [rapidforge.io/docs](https://rapidforge.io/docs)。 ## 🤝 贡献 我们欢迎贡献!请参阅 [CONTRIBUTING.md](CONTRIBUTING.md) 了解如何提交 pull request、报告问题以及为项目做出贡献的指南。 ## 发布流程 我们的发布流程通过使用 RapidForge **自身** 来测试 RapidForge,以确保稳定性。 1. **代码合并**:Pull Requests 经过审查并合并到 `main` 分支。 2. **Staging 部署**:维护者将 main 分支部署到我们的内部测试服务器。 3. **内部测试与测试**:我们使用这个内部 rapidforge 实例运行集成测试并进行手动测试。我们通过使用 RapidForge 来测试 RapidForge 来验证更改。 4. **发布**:一旦更改得到验证且稳定,我们将创建一个新版本。 ## 📜 许可证 RapidForge 在 [Apache License 2.0](LICENSE.md) 下获得许可。 ``` Copyright 2023-2026 RapidForge Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 ``` ## 🔒 安全 请直接向维护者报告安全漏洞。详情请参阅 [SECURITY.md](SECURITY.md)。 ## 💬 社区与支持 - **文档:** [https://rapidforge.io/docs](https://rapidforge.io/docs) - **问题:** [GitHub Issues](https://github.com/rapidforge-io/rapidforge/issues) - **讨论:** [GitHub Discussions](https://github.com/rapidforge-io/rapidforge/discussions)
Made with ❤️
标签:API开发, API网关, Bash, CRON调度, DevOps工具, GNU通用公共许可证, Go语言, LangChain, Lua, Node.js, OAuth2, rizin, Webhooks, 任务调度, 低代码, 后端开发, 定时任务, 应用安全, 日志审计, 服务器管理, 程序破解, 脚本执行, 自动化平台, 自托管, 轻量级