• 💂 个人网站: IT知识小屋
  • 🤟 版权: 本文由【IT学习日记】原创、在CSDN首发、需要转载请联系博主
  • 💬 如果文章对你有帮助、欢迎关注、点赞、收藏(一键三连)和订阅专栏哦

简介

本项目是一款基于Go语言实现的轻量级、高颜值、高并发、前后端分离的开源社区系统,旨在给个人和中小型企业提供一个高效、可定制、易于部署的论坛平台。系统功能涵盖用户注册、发帖、评论、私信、点赞、文章置顶等个人社区常用功能,同时,系统具备出色的拓展性,用户可根据个性化需求快速自定义功能。基于Go语言的高并发优势,系统在性能方面有非常优质的表现,可以承载较大流量的论坛需求。

系统采用前后端分离架构设计,后端采用Go语言开发,前端采用Vue实现,支持多平台部署,支持手机、平板、电脑多端平滑切换,同时系统提供完善的API接口,方便开发者进行二次开发与功能扩展。


系统亮点

  • 高性能:基于Go语言特点,系统可以同时支撑大量用户同时访问、操作,系统资源占用低,部署简单

  • 前后端分离:后端API + 前端SSR架构,提供更好的用户体验

  • 响应式设计:系统可支持手机、平板、电脑等各种设备使用,自动根据分辨率切换适合布局

  • 界面美观:有专门UI设计师,系统使用现代化的用户界面设计、美观大气

  • 功能完善:功能覆盖社区所有基础功能如发帖、评论、私信、积分系统等

  • 高安全性:系统内置防护机制,确保数据安全可靠

  • 跨平台:支持 Windows、Linux、macOS 等多平台部署


架构

系统采用现代化的前后端分离架构,系统由三个核心模块组成:

server:基于Go语言开发的后端API服务

site:基于Nuxt.js 开发的社区前台UI服务

admin:基于Vue.js 开发的社区运营后台
.
├── LICENSE
├── README.md
├── docker-compose.yml
├── server                        // server服务端模块
│   ├── Dockerfile
│   ├── LICENSE
│   ├── Makefile
│   ├── README.md
│   ├── bbs-go.docker.yaml
│   ├── bbs-go.example.yaml
│   ├── cmd
│   │   ├── server
│   │   └── test
│   ├── go.mod
│   ├── go.sum
│   ├── internal
│   │   ├── cache
│   │   ├── controllers
│   │   ├── middleware
│   │   ├── models
│   │   ├── pkg
│   │   ├── repositories
│   │   ├── scheduler
│   │   ├── server
│   │   ├── services
│   │   └── spam
│   └── start.sh
├── site                          // site模块
│   ├── Dockerfile
│   ├── README.md
│   ├── ecosystem.config.js
│   ├── nuxt.config.ts
│   ├── package.json
│   ├── pnpm-lock.yaml
│   ├── server
│   │   └── tsconfig.json
│   ├── src
│   │   ├── app.vue
│   │   ├── assets
│   │   ├── components
│   │   ├── composables
│   │   ├── error.vue
│   │   ├── layouts
│   │   ├── middleware
│   │   ├── pages
│   │   ├── public
│   │   ├── server
│   │   └── stores
│   └── tsconfig.json
├── admin                         // admin模块
│   ├── CNAME
│   ├── Dockerfile
│   ├── babel.config.js
│   ├── commitlint.config.js
│   ├── components.d.ts
│   ├── config
│   │   ├── plugin
│   │   ├── utils
│   │   ├── vite.config.base.ts
│   │   ├── vite.config.dev.ts
│   │   ├── vite.config.docker.ts
│   │   └── vite.config.prod.ts
│   ├── index.html
│   ├── package.json
│   ├── pnpm-lock.yaml
│   ├── src
│   │   ├── App.vue
│   │   ├── api
│   │   ├── assets
│   │   ├── components
│   │   ├── composables
│   │   ├── directive
│   │   ├── env.d.ts
│   │   ├── hooks
│   │   ├── layout
│   │   ├── locale
│   │   ├── main.ts
│   │   ├── router
│   │   ├── store
│   │   ├── types
│   │   ├── utils
│   │   └── views
└── └── tsconfig.json

技术栈:

前端:Vue、Nuxt、TypeScript、Element Plus

后端:Go、MySQL、iris、gorm

部署要求:

操作系统:Windows 7+、macOS 10.12+、Linux(Ubuntu 16+/CentOS 7+)
内存:至少 2GB RAM(推荐 4GB 以上)
硬盘空间:至少 1G 可用空间
数据库:MySQL 5.8+ 或 MariaDB 10.2+

功能列表

用户系统

  • 用户注册与登录:支持传统注册方式,用户可以通过邮箱或手机号注册账号;支持登录验证、找回密码等功能,确保用户数据安全。

  • 第三方登录集成:集成常见的第三方登录服务(如微信扫码),方便用户快速登录,提升用户体验。

  • 用户权限管理:提供精细化的权限管理系统,支持为不同用户分配不同的角色与权限,确保站点内容和功能的安全性。

  • 个人中心功能:每个用户都可以查看和编辑个人资料,管理头像、昵称、联系方式等个人信息,并查看自己的文章、评论和积分记录。

内容系统

  • 文章发布与管理:支持用户发布文章、博客等内容,并可对已发布的内容进行编辑、删除、置顶等操作。支持草稿保存功能。

  • 评论与回复:允许用户对文章或内容进行评论,并进行多层次回复,支持对评论进行点赞、举报等操作。

  • 内容分类与标签:提供文章分类和标签功能,用户可以根据分类和标签快速筛选感兴趣的内容。

  • 内容审核机制:设置管理员审核机制,确保用户发布的内容符合社区规范,自动或手动审批文章内容、评论等。

社区互动

  • 用户关注:用户可以关注其他用户、文章或话题,第一时间获取最新动态。

  • 消息通知:系统提供通知功能,用户在有新消息(如评论、点赞、私信等)时及时提醒,确保用户不遗漏任何动态。

  • 点赞与收藏:用户可以点赞、收藏喜欢的文章或评论,提升文章曝光度并便于个人查看。

  • 用户积分:通过发布内容、评论互动、参与活动等方式,用户可以获得积分,积分可用于兑换福利或特殊权限。

站点管理

  • 内容管理:管理员可以对站点发布的所有文章、评论进行全面管理,支持内容的删除、编辑、审核等操作。

  • 用户管理:管理员可以查看所有用户的信息,进行封禁、删除等用户操作,保证社区环境的健康。

  • 系统配置:站点提供系统配置界面,管理员可设置站点的一些基本功能和配置,如用户权限、主题样式、公告等。

  • 数据统计:系统提供详细的运营数据统计功能,管理员可以查看用户活动、内容发布、互动情况等数据,帮助优化平台运营。


UI界面

首页

推荐

交流

提问

摸鱼社区

妹子区

评论区


开源地址&使用手册

点击下方的【IT学习日记】回复【资源】领取!

如果这篇文章对您有帮助,请一定帮我点个 “关注”“点赞”,这对我非常重要。我将会继续推荐更多优质项目和新闻。

写在最后

1000+优质开源项目更新进度:297/1000。如需更多类型优质项目推荐,请在文章后留言。

在这里插入图片描述

Logo

AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。

更多推荐