mirror of
https://github.com/beilunyang/moepush.git
synced 2026-04-26 12:05:53 +03:00
一个基于 NextJS + Cloudflare 技术栈构建的可爱消息推送服务, 支持多种消息推送渠道✨
| .github/workflows | ||
| app | ||
| components | ||
| drizzle | ||
| lib | ||
| public | ||
| scripts | ||
| types | ||
| .env.example | ||
| .gitignore | ||
| .node-version | ||
| components.json | ||
| Dockerfile | ||
| drizzle.config.ts | ||
| env.d.ts | ||
| eslint.config.mjs | ||
| LICENSE | ||
| middleware.ts | ||
| next.config.ts | ||
| package.json | ||
| pnpm-lock.yaml | ||
| postcss.config.mjs | ||
| README.md | ||
| tailwind.config.ts | ||
| tsconfig.json | ||
| wrangler.example.json | ||
MoePush
一个基于 NextJS + Cloudflare 技术栈构建的可爱消息推送服务, 支持多种消息推送渠道✨
在线演示
特性
- 📡多渠道支持 :支持钉钉、企业微信、Telegram 等多种消息推送渠道。
- 🛠️简单易用 :提供简单的接口调用,支持多种消息模板,快速集成。
- 💖开源免费 :基础功能完全免费使用,代码开源,欢迎贡献。
- 🎨精美 UI :使用 shadcn/ui 组件库,提供精美 UI 设计。
- 🚀快速部署 :基于 Cloudflare Pages 部署,免费且稳定。
- 📦接口组功能 :支持创建接口组,一次性推送消息到多个渠道接口。
已支持渠道
- 钉钉群机器人
- 企业微信应用
- 企业微信群机器人
- Telegram 机器人
- 飞书群机器人
- Discord Webhook
- Bark App
- 通用 Webhook
技术栈
- 框架: Next.js (App Router)
- 平台: Cloudflare Pages
- 数据库: Cloudflare D1 (SQLite)
- 认证: NextAuth 配合 GitHub 登录
- 样式: Tailwind CSS
- UI 组件: 基于 Radix UI 的自定义组件
- 类型安全: TypeScript
- ORM: Drizzle ORM
本地运行
- 克隆项目并安装依赖:
git clone https://github.com/beilunyang/moepush.git
cd moepush
pnpm install
- 复制环境变量文件:
cp .env.example .env
环境变量文件 .env 中需要配置以下变量:
AUTH_SECRET:加密 Session 的密钥AUTH_GITHUB_ID:GitHub OAuth App IDAUTH_GITHUB_SECRET:GitHub OAuth App SecretDISABLE_REGISTER:是否禁止注册,默认为false,设置为true则禁止注册
- 创建 wrangler.json 文件
cp wrangler.example.json wrangler.json
- 初始化本地数据库
pnpm run db:migrate-local
- 运行开发服务器:
pnpm run dev
访问 http://localhost:3000 查看应用。
部署
视频版保姆级部署教程
https://www.bilibili.com/video/BV1dtZBYnEUX/?p=2
GitHub Actions 自动部署
项目已配置 GitHub Actions 用于自动部署, 可以通过两种方式进行触发:
- 推送新的 tag(格式:
v*)会触发自动部署。例如:git tag v1.0.0 && git push origin v1.0.0 - 手动触发工作流。前往 Actions 页面,点击
Deploy工作流,点击Run workflow按钮即可。
部署前需要在 GitHub 仓库设置中添加以下 Secrets:
CLOUDFLARE_API_TOKEN:Cloudflare API TokenCLOUDFLARE_ACCOUNT_ID:Cloudflare Account IDD1_DATABASE_NAME:D1 数据库名称AUTH_SECRET:加密 Session 的密钥AUTH_GITHUB_ID:GitHub OAuth App IDAUTH_GITHUB_SECRET:GitHub OAuth App SecretPROJECT_NAME:项目名称 (可选,默认:moepush)DISABLE_REGISTER:是否禁止注册,默认关闭,设置为true则禁止注册
使用 Docker 部署
docker pull beilunyang/moepush
docker run -d -p 3000:3000 -v $(pwd)/.wrangler:/app/.wrangler -e AUTH_SECRET=<你的AUTH_SECRET> -e AUTH_GITHUB_ID=<你的AUTH_GITHUB_ID> -e AUTH_GITHUB_SECRET=<你的AUTH_GITHUB_SECRET> moepush
贡献
欢迎提交 Pull Request 或者 Issue来帮助改进这个项目
交流
|
|
| 关注公众号,了解更多项目进展以及AI,区块链,独立开发资讯 | 添加微信,备注 "MoePush" 拉你进微信交流群 |
支持
如果你喜欢这个项目,欢迎给它一个 Star ⭐️
或者进行赞助



