Skip to content

jeasoncc/Volunteer-Management-System

🪷 莲花斋 - 现代化寺庙义工管理系统

License Bun React TypeScript MySQL

一个专为寺庙设计的现代化义工管理系统,让功德管理更简单高效

在线演示 · 快速开始 · 完整文档 · 反馈问题 · 参与贡献


✨ 特性亮点

🚀 极速体验

  • 基于 Bun 运行时,启动速度提升 3 倍
  • API 响应时间 < 100ms
  • 支持 1000+ 并发请求

📱 现代化界面

  • React 19 + Tailwind CSS 4
  • 响应式设计,完美适配各种设备
  • 精美的 shadcn/ui 组件

🔐 安全可靠

  • JWT 认证 + bcrypt 加密
  • HTTP-only Cookie 会话管理
  • SQL 注入防护,企业级安全

📊 智能考勤

  • 自动签到/签退
  • 智能时长计算
  • 月度汇总报表
  • Excel 一键导出

🎯 简单易用

  • 5 分钟快速部署
  • 开箱即用
  • 完善的中文文档

🌐 完全开源

  • MIT 协议,可商用
  • 60+ 技术文档
  • 活跃的社区支持

📸 项目预览

登录页面

登录页面

义工管理

义工列表

考勤报表

考勤报表

提示**: 截图展示了系统的核心功能,更多功能请查看在线演示


🎯 适用场景


寺庙管理
义工、考勤、活动

宗教场所
人员、服务管理

志愿者组织
志愿者管理

社区服务
社区活动管理

非营利组织
成员管理

� 快]速开始

前置要求

确保你的系统已安装以下软件:

一键安装

# 1. 克隆项目
git clone https://github.com/yourusername/lianhuazhai.git
cd lianhuazhai

# 2. 安装依赖
bun install

# 3. 配置环境变量
cp apps/api/.env.example apps/api/.env
cp apps/web/.env.example apps/web/.env
# 编辑 .env 文件,填入你的数据库信息

# 4. 初始化数据库
cd apps/api
bun run db:push

# 5. 启动项目
cd ../..
bun run dev

🎉 完成! 访问 http://localhost:3000 开始使用

默认登录账号: admin / admin123

小程序开发

# 进入微信小程序目录
cd apps/miniapp

# 启动微信小程序开发模式
bun run dev:weapp

# 构建微信小程序产物
bun run build:weapp

📱 详细小程序设置请查看 小程序文档

📖 详细安装指南请查看 完整文档

Docker 部署(推荐)

# 使用 Docker Compose 一键启动
docker-compose up -d

# 访问应用
# 前端: http://localhost:3000
# 后端: http://localhost:3001
# API 文档: http://localhost:3001/swagger

📦 技术栈

后端技术

  • 运行时: Bun - 极速 JavaScript 运行时
  • 框架: Elysia - 高性能 Web 框架
  • 数据库: MySQL 8.0+
  • ORM: Drizzle ORM - 类型安全的 ORM
  • 认证: JWT + bcrypt
  • API 文档: Swagger/OpenAPI
  • 语言: TypeScript 5.0+

前端技术

小程序技术

  • 框架: Taro 4
  • 视图层: React 19
  • 平台: 微信小程序
  • 接口层: Taro.request + 后端 JWT Token
  • 语言: TypeScript 5.0+

📖 核心功能

🧑‍🤝‍🧑 义工管理

  • ✅ 义工信息 CRUD(创建、查询、更新、删除)
  • ✅ 批量导入/导出(支持 Excel)
  • ✅ 高级搜索和筛选(姓名、手机号、莲花斋ID)
  • ✅ 头像上传和管理
  • ✅ 状态管理(在职/离职)
  • ✅ 法名字段支持
  • ✅ 密码管理和重置

⏰ 考勤系统

  • ✅ 签到/签退功能
  • ✅ 自动时长计算
  • ✅ 月度汇总报表
  • ✅ 多维度统计(参与人数、总时长、总次数)
  • ✅ Excel 导出(支持多种规则)
  • ✅ 考勤记录查询
  • ✅ 异常考勤处理

👨‍💼 权限管理

  • ✅ 管理员系统
  • ✅ 角色权限控制
  • ✅ 操作日志记录
  • ✅ 安全审计

📊 数据分析

  • ✅ 考勤统计报表
  • ✅ 义工活跃度分析
  • ✅ 数据可视化图表
  • ✅ 自定义报表导出

📊 项目数据

指标 数值 说明
💻 代码量 17,000+ 行 后端 9,000+ / 前端 8,000+
📚 文档数 60+ 个 完善的技术文档
🗄️ 数据表 8 张 精心设计的数据库架构
API 接口 30+ 个 RESTful API 设计
🎨 UI 组件 20+ 个 可复用的组件库
测试覆盖 60%+ 单元测试 + 集成测试
🚀 性能 < 100ms API 平均响应时间
🔒 安全性 A+ 企业级安全标准

📁 项目结构

lianhuazhai-monorepo/
├── apps/
│   ├── api/                    # 后端 API
│   │   ├── src/
│   │   │   ├── modules/        # 业务模块
│   │   │   │   ├── auth/       # 认证模块
│   │   │   │   ├── volunteer/  # 义工模块
│   │   │   │   ├── checkin/    # 考勤模块
│   │   │   │   └── admin/      # 管理员模块
│   │   │   ├── db/             # 数据库配置
│   │   │   ├── middleware/     # 中间件
│   │   │   └── utils/          # 工具函数
│   │   └── package.json
│   │
│   ├── web/                    # 前端 Web 应用
│   │   ├── src/
│   │   │   ├── routes/         # 页面路由
│   │   │   ├── components/    # UI 组件
│   │   │   ├── services/      # API 服务
│   │   │   ├── hooks/         # React Hooks
│   │   │   └── lib/           # 工具库
│   │   └── package.json
│   │
│   └── miniapp/                # 义工端微信小程序 (Taro)
│       ├── config/             # Taro 构建配置
│       ├── src/
│       │   ├── pages/          # 小程序页面
│       │   ├── components/     # 通用组件
│       │   ├── services/       # API 服务
│       │   ├── stores/         # 轻量状态管理
│       │   ├── types/          # TypeScript 类型
│       │   └── utils/          # 工具函数
│       └── package.json
│
├── docs/                       # 📚 统一文档目录
│   ├── README.md               # 文档中心首页
│   ├── INDEX.md                # 完整文档索引
│   ├── api/                    # API 文档
│   │   ├── checkin/            # 签到系统文档(19个)
│   │   ├── volunteer/          # 义工系统文档(6个)
│   │   ├── database/           # 数据库文档(4个)
│   │   ├── specs/              # 技术规格(6个)
│   │   └── modules/            # 模块文档
│   ├── frontend/               # 前端文档(3个)
│   ├── setup/                  # 设置指南(5个)
│   └── summaries/              # 开发总结(7个)
│
├── screenshots/                # 项目截图
├── .github/                    # GitHub 配置
│   ├── ISSUE_TEMPLATE/         # Issue 模板
│   └── PULL_REQUEST_TEMPLATE.md
├── CONTRIBUTING.md             # 贡献指南
├── ROADMAP.md                  # 产品路线图
├── CHANGELOG.md                # 更新日志
└── LICENSE                     # MIT 协议

🗺️ 产品路线图

✅ v1.0 (当前版本)

  • 基础义工管理
  • 考勤签到系统
  • 数据导出功能
  • 管理员系统
  • API 文档

🚧 v1.1 (进行中)

  • 义工端微信小程序基础工程
  • 小程序登录与接口封装
  • 小程序考勤查看基础页面
  • 排班认领
  • 读经/功课打卡
  • 消息通知系统

🔮 v1.2 (计划中)

  • 扫码签到
  • AI 智能分析
  • 多租户支持
  • 独立 App 规划评估

查看 完整路线图 了解更多


📚 文档导航

🚀 快速开始

📖 开发文档

🔧 功能模块

📋 查看 完整文档索引 获取所有 60+ 个文档


🤝 参与贡献

我们欢迎所有形式的贡献!无论是报告 Bug、提出新功能、改进文档还是提交代码。

贡献方式

  1. 🐛 报告 Bug
  2. 💡 提出新功能
  3. 📖 改进文档
  4. 💻 提交代码

快速开始贡献

# 1. Fork 项目
# 2. 克隆你的 Fork
git clone https://github.com/your-username/lianhuazhai.git

# 3. 创建特性分支
git checkout -b feature/amazing-feature

# 4. 提交更改
git commit -m 'feat: add amazing feature'

# 5. 推送到分支
git push origin feature/amazing-feature

# 6. 创建 Pull Request

详细指南请查看 贡献指南

贡献者

感谢所有贡献者的付出!


🌟 Star 历史

Star History Chart


📄 开源协议

本项目采用 MIT 协议开源。

这意味着你可以:

  • ✅ 商业使用
  • ✅ 修改代码
  • ✅ 分发
  • ✅ 私人使用

唯一的要求是保留版权声明。


🙏 致谢

感谢以下优秀的开源项目:


💬 社区与支持


GitHub
讨论区

Discord
加入社区

Twitter
@lianhuazhai

Email
联系我们

📈 项目状态

GitHub last commit GitHub issues GitHub pull requests GitHub


⭐ 如果这个项目对你有帮助,请给一个 Star 支持一下!⭐

让我们一起让功德管理更简单!

Made with ❤️ by 莲花斋团队

⬆ 回到顶部

About

面向寺庙 / 宗教场所 / 志愿者组织的现代化义工管理与考勤系统。 使用 Bun + Elysia + React + Vite + MySQL 等技术栈,帮助管理义工信息、签到考勤与数据统计。

Resources

License

Code of conduct

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors