依星源码资源网,依星资源网

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 11|回复: 0

Golang源码类似百度文库、新浪爱问文库的开源文库系统

[复制链接] 主动推送

8762

主题

8814

帖子

9958

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
9958
发表于 2024-7-19 12:48:40 | 显示全部楼层 |阅读模式
Golang源码类似百度文库、新浪爱问文库的开源文库系统
使用 Golang 开发的类似百度文库、新浪爱问文库的开源文库系统,支持 TXTPDFEPUBMOBIOffice 等格式文档的在线预览与管理,为 dochub文库的重构版本。
功能特征
  • 前后端分离
  • 注册登录以及密码找回
  • 支持横幅
  • 支持无限级分类
  • 文档批量上传
  • 支持回收站功能,删除的文档还可以恢复
  • 支持office、pdf、txt、epub、mobi等多种文档格式预览
  • 文档批量转换(普惠版)
  • 全文搜索(普惠版)
功能清单
  • 面板 个人资料 修改密码 退出登录
  • 文档管理 分类管理 文档列表 回收站
  • 用户管理 用户管理 角色管理 权限管理
  • 横幅管理
  • 单页管理
  • 友链管理
  • 评论管理
  • 举报管理
  • 附件管理
  • 系统设置

技术栈
  • Golang :gin + gRPC + GORM
  • Vue.js : nuxt2 + element-ui
  • Database : MySQL 5.7
二次开发
除了文件上传相关的接口,其他接口统一使用 proto 进行定义。
环境要求
  • Golang 1.18+
  • Node.js 14.16.0 (可用 nvm 管理)
  • MySQL 5.7+
目录结构
部分目录,在程序运行时自动生成,不需要手动创建


  1. .
  2. ├── LICENSE                 # 开源协议
  3. ├── Makefile                # 编译脚本
  4. ├── README.md               # 项目说明
  5. ├── api                     # proto api, API协议定义
  6. ├── app.example.toml        # 配置文件示例,需要复制为 app.toml
  7. ├── biz                     # 业务逻辑层,主要处理业务逻辑,实现api接口
  8. ├── cmd                     # 命令行工具
  9. ├── cache                   # 缓存相关
  10. ├── conf                    # 配置定义
  11. ├── dict                    # 结巴分词字典,用于给文档自动进行分词
  12. ├── docs                    # API文档等
  13. ├── documents               # 用户上传的文档存储目录
  14. ├── go.mod                  # go依赖管理
  15. ├── go.sum                  # go依赖管理
  16. ├── main.go                 # 项目入口
  17. ├── middleware              # 中间件
  18. ├── model                   # 数据库模型,使用gorm对数据库进行操作
  19. ├── release                 # 版本发布生成的版本会放到这里
  20. ├── service                 # 服务层,衔接cmd与biz
  21. ├── sitemap                 # 站点地图
  22. ├── third_party             # 第三方依赖,主要是proto文件
  23. ├── uploads                 # 文档文件之外的其他文件存储目录
  24. └── util                    # 工具函数
复制代码



app.toml
  1. # 程序运行级别:debug、info、warn、error
  2. level="debug"

  3. # 日志编码方式,支持:json、console
  4. logEncoding="console"

  5. # 后端监听端口
  6. port="8880"

  7. # 数据库配置
  8. [database]
  9.     driver="mysql"
  10.     dsn="root:root@tcp(localhost:3306)/moredoc?charset=utf8mb4&loc=Local&parseTime=true"
  11.     # 生产环境,请将showSQL设置为false
  12.     showSQL=true
  13.     maxOpen=10
  14.     maxIdle=10

  15. # jwt 配置
  16. [jwt]
  17.     secret="moredoc"
  18.     expireDays=365
复制代码
初始化
后端初始化
  1. # 安装go依赖
  2. go mod tidy

  3. # 初始化工程依赖
  4. make init

  5. # 编译proto api
  6. make api

  7. # 修改 app.toml 文件配置
  8. cp app.example.toml app.toml

  9. # 编译后端
  10. go build -o moredoc main.go

  11. # 初始化数据库结构
  12. ./moredoc syncdb

  13. # 运行后端(可用其他热编译工具),监听8880端口
  14. go run main.go serve
复制代码
前端初始化
  1. # 切换到web目录
  2. cd web

  3. # 安装依赖
  4. npm install

  5. # 运行前端,监听3000端口,浏览器访问 http://localhost:3000
  6. npm run dev
复制代码
管理员初始账号密码
  1. admin
  2. mnt.ltd
复制代码
发布版本
以下为示例
  1. # 打标签
  2. git tag -a v1.0.0 -m "release v1.0.0"

  3. # 推送标签
  4. git push origin v1.0.0

  5. # 编译前端
  6. cd web && npm run generate

  7. # 编译后端,编译好了的版本会放到release目录下
  8. # 编译linux版本(Windows版本用 make buildwin)
  9. make buildlinux
复制代码

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统

Golang源码类似百度文库、新浪爱问文库的开源文库系统


游客,本帖隐藏的内容需要积分高于 2 才可浏览,您当前积分为 0
提取码下载:
文件名称:提取码下载.txt 
下载次数:0  文件大小:13 Bytes  售价:69金钱 [记录]
下载权限: 不限 [购买VIP]   [充值]   [在线充值]   【VIP会员5折;永久VIP免费】
安全检测,请放心下载











相关帖子

扫码关注微信公众号,及时获取最新资源信息!下载附件优惠VIP会员5折;永久VIP免费
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

免责声明:
1、本站提供的所有资源仅供参考学习使用,版权归原著所有,禁止下载本站资源参与商业和非法行为,请在24小时之内自行删除!
2、本站所有内容均由互联网收集整理、网友上传,并且以计算机技术研究交流为目的,仅供大家参考、学习,请勿任何商业目的与商业用途。
3、若您需要商业运营或用于其他商业活动,请您购买正版授权并合法使用。
4、论坛的所有内容都不保证其准确性,完整性,有效性,由于源码具有复制性,一经售出,概不退换。阅读本站内容因误导等因素而造成的损失本站不承担连带责任。
5、用户使用本网站必须遵守适用的法律法规,对于用户违法使用本站非法运营而引起的一切责任,由用户自行承担
6、本站所有资源来自互联网转载,版权归原著所有,用户访问和使用本站的条件是必须接受本站“免责声明”,如果不遵守,请勿访问或使用本网站
7、本站使用者因为违反本声明的规定而触犯中华人民共和国法律的,一切后果自己负责,本站不承担任何责任。
8、凡以任何方式登陆本网站或直接、间接使用本网站资料者,视为自愿接受本网站声明的约束。
9、本站以《2013 中华人民共和国计算机软件保护条例》第二章 “软件著作权” 第十七条为原则:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。若有学员需要商用本站资源,请务必联系版权方购买正版授权!
10、本网站如无意中侵犯了某个企业或个人的知识产权,请来信【站长信箱312337667@qq.com】告之,本站将立即删除。
郑重声明:
本站所有资源仅供用户本地电脑学习源代码的内含设计思想和原理,禁止任何其他用途!
本站所有资源、教程来自互联网转载,仅供学习交流,不得商业运营资源,不确保资源完整性,图片和资源仅供参考,不提供任何技术服务。
本站资源仅供本地编辑研究学习参考,禁止未经资源商正版授权参与任何商业行为,违法行为!如需商业请购买各资源商正版授权
本站仅收集资源,提供用户自学研究使用,本站不存在私自接受协助用户架设游戏或资源,非法运营资源行为。
 
在线客服
点击这里给我发消息 点击这里给我发消息 点击这里给我发消息
售前咨询热线
312337667

微信扫一扫,私享最新原创实用干货

QQ|免责声明|小黑屋|依星资源网 ( 鲁ICP备2021043233号-3 )|网站地图

GMT+8, 2024-7-27 20:34

Powered by Net188.com X3.4

邮箱:312337667@qq.com 客服QQ:312337667(工作时间:9:00~21:00)

快速回复 返回顶部 返回列表