logo
0
0
WeChat Login
README.md

Nacr 轻量化论坛系统

一款现代化、轻量级的开源社区论坛系统

License Node.js Vue Nuxt

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

因为是前后端分离架构,需要分别部署前端和后端服务,若您没有部署经验,可直接联系我帮忙搭建!

如果您有兴趣参与项目开发,欢迎联系我一起参与开发!若您有任何指点和改正意见,也欢迎提出!我们一起学习进步!

这是初始第一版,可能存在很多BUG,欢迎提交反馈,我会在空闲时间进行优化更新


📌 项目简介

Nacr 是采用前后端分离架构打造的全新轻量化论坛系统,界面简洁美观,性能卓越。基于 Fastify + Nuxt3 技术栈构建,提供完整的社区论坛解决方案,适用于个人博客、企业社区、技术论坛等多种场景。

核心特性

  • 🎨 现代化 UI - 精美的界面设计,简洁清爽的用户体验
  • 高性能架构 - Fastify 驱动的后端 + Nuxt3 前端,极致性能
  • 🔐 完善的安全体系 - JWT 身份认证、权限管理、数据加密
  • 💳 支付系统 - 集成支付宝等多种支付方式
  • 📊 数据统计 - 丰富的后台数据可视化分析
  • 📧 邮件服务 - 完善的邮件通知和验证功能
  • 🔄 缓存优化 - Redis 缓存提升系统响应速度
  • 📱 响应式设计 - 完美适配 PC 和移动端

🚀 功能特性

用户端功能

  • 👤 用户注册/登录(支持邮箱验证码、微信小程序)
  • 📝 帖子发布/编辑/删除
  • 💬 评论互动、点赞功能
  • 👥 关注用户、私信系统
  • 📅 签到系统、积分奖励
  • 💳 会员充值、订单管理
  • 💰 积分转账、余额提现
  • 🔔 个人消息通知
  • 🔍 内容搜索、分类浏览

管理端功能

  • 📊 数据统计与趋势分析
  • 👥 用户管理与用户组设置
  • 📰 公告管理、轮播图配置
  • 📂 分类管理、内容审核
  • 💸 支付方式配置、订单管理
  • 🎨 站点设置、导航管理
  • 📧 邮件模板配置
  • 🎁 活动管理、营销工具
  • ⚙️ 系统配置与权限管理

🛠️ 技术栈

技术说明技术说明
Node.js运行时环境Nuxt 3Vue 3 服务端渲染框架
Fastify高性能 Web 框架Vue 3前端框架
MySQL关系型数据库Arco DesignUI 组件库
Redis缓存数据库Pinia状态管理
Socket.io实时通讯Monaco Editor代码编辑器
Nodemailer邮件服务WangEditor富文本编辑器
JWT身份认证ECharts数据可视化
AxiosHTTP 请求

📦 快速开始

环境要求

  • Node.js >= 18.0.0 | MySQL >= 5.7 | Redis >= 6.0 | npm >= 9.0.0

安装步骤

1. 克隆项目

git clone https://github.com/nacrcn/nacrbbs.git cd nacrbbs

2. 安装依赖

# 后端依赖 npm install # 前端依赖 cd web/client npm install cd ../admin npm install

3. 数据库配置

创建 MySQL 数据库并导入 c_deft.sql 文件:

配置数据库连接(修改 app/config/database.json):

{ "host": "localhost", "port": 3306, "user": "root", "password": "your_password", "database": "nacr_forum" }

4. Redis 配置

配置 Redis 连接(修改 app/config/redis.json):

{ "host": "localhost", "port": 6379, "password": "", "db": 0 }

5. 启动后端服务

node index.js

后端服务默认运行在 http://localhost:9999

6. 启动前端服务

# 修改前后台 后端API地址端口,路径分别为: web/client/app-config.js web/admin/app-config.js # 将apiBase改为您自己的后端服务地址即可 # 启动前台 cd web/client npm run dev # 启动后台(新终端) cd web/admin npm run dev 注意:前后台均为nuxt3项目 端口都为3000,打包后请前往index.mjs更改端口,否则可能导致端口冲突

默认后台账号:admin / 密码:123456


📁 项目结构

nacrbbs/ ├── app/ # 后端核心代码 │ ├── config/ # 配置文件 │ ├── controller/ # 控制器层 │ │ ├── Admin/ # 管理员接口 │ │ ├── user/ # 用户接口 │ │ └── tourist/ # 游客接口 │ ├── imp/ # 核心实现 │ ├── library/ # 第三方库封装 │ ├── router/ # 路由定义 │ ├── safety/ # 安全中间件 │ └── scheduledTask/ # 定时任务 ├── web/ # 前端代码 │ ├── client/ # 前台用户端 │ └── admin/ # 后台管理端 ├── public/ # 静态资源 ├── c_deft.sql # 数据库初始化脚本 └── index.js # 后端入口文件

🔧 配置说明

邮件配置

在管理后台配置 SMTP 邮件服务器信息,用于发送验证码和通知邮件。

支付配置

系统支持多种支付方式,需要在管理后台配置支付接口信息。


🤝 贡献指南

欢迎贡献代码!请遵循以下步骤:

  1. Fork 本仓库
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

赞助鸣谢 💖

感谢各位朋友的鼎力支持,你的信任是项目持续运营的核心动力! 所有赞助资金将用于【服务器续费/项目开发/服务升级】,资金用途全程透明~

📊 赞助统计

  • 累计赞助总金额:¥XXXX.00
  • 累计赞助人数:XX
  • 最后更新时间:2026-01-24 18:00

👤 个人赞助(按赞助金额从高到低排序,同金额按时间倒序)

赞助者头像赞助者昵称赞助金额赞助时间
XX初雪¥500.002026-01-20
XX晚风¥200.002026-01-22
XX星辞¥100.002026-01-23
XX知夏¥50.002026-01-24

📄 开源协议

本项目采用 MIT 协议开源