YBox v1.0.0
基于 Vue3/Element UI/Vant 和 Spring Boot/Spring Cloud & Alibaba 前后端分离的分布式微服务架构
平台简介
YBox是一个现代化书签收藏夹,帮助你高效收藏并管理有价值的网络信息。
YBox 专为新时代数字工作者打造,是你的私人网络信息助手。我们会时常在网络上浏览新闻、文章、资料、视频等内容,当你发现了自己在意的信息后,可以通过 YBox 提供的快捷收藏工具,将他们快速保存。在之后工作和生活中,当你需要它们时,能够随时在 YBox 中浏览或搜索,不必担心遗忘。
功能特点
- 轻简设计,强大能力 – YBox 专为网络书签功能打造,直观而纯粹,可全方位满足收藏、阅读、管理、搜索等需求。
- 随处皆可收藏 – 碎片资讯随时随地保存到 YBox,让你可以专注于学习和创造,不需要花费精力记忆它们。
- 告别繁琐整理 – 只需简单地设置好规则, YBox 会帮你自动分类,方便你按照类别统一浏览和处理。
- 无干扰阅读 – 自动识别是否是文章,预先提取正文并缓存,提供最佳的文章阅读体验。
- 随时找到所需 – 多种系统级全局搜索入口,使用快捷键随时搜索并打开要用的书签。
- 愉悦体验 – 不同于其它跨平台书签服务,YBox 使用原生技术开发,确保真正高效的使用体验。
- 轻松创建工作流 – 灵活的管理工具,轻松搭建你的网络导航。
使用场景
- 各行业专业工作者收集资料,为自己的工作项目提供素材和参考;
- 设计师随时收藏看到的优秀案例,组建自己的灵感库,在工作中随时找回灵感;
- 程序开发者收藏项目难题的解决方案,当之后再遇到类似问题可以从容不迫;
- 学生收藏学习资料,借助互联网的海量信息提高自己的学习效率;
- 收藏有价值的文章,定期回顾,养成深度阅读的习惯,提升自己;
- 记录在网络上看到的有趣视频、社交动态等,等方便或有空闲时再仔细浏览;
系统模块
com.ybox
├── ybox-ui // 前端框架 [80]
│ └── ybox-ui-mobile // app
│ └── ybox-ui-vue3 // 管理后台
├── ybox-gateway // 网关模块 [8080]
├── ybox-auth // 认证中心 [9200]
├── ybox-api // 接口模块
│ └── ybox-api-app // app接口
│ └── ybox-api-crawler // 爬虫接口
│ └── ybox-api-system // 系统接口
├── ybox-common // 通用模块
│ └── ybox-common-core // 核心模块
│ └── ybox-common-datascope // 权限范围
│ └── ybox-common-datasource // 多数据源
│ └── ybox-common-email // 邮件服务
│ └── ybox-common-log // 日志记录
│ └── ybox-common-redis // 缓存服务
│ └── ybox-common-seata // 分布式事务
│ └── ybox-common-security // 安全模块
│ └── ybox-common-swagger // 系统接口
├── ybox-modules // 业务模块
│ └── ybox-system // 系统模块 [9201]
│ └── ybox-gen // 代码生成 [9202]
│ └── ybox-job // 定时任务 [9203]
│ └── ybox-app // app模块 [9204]
│ └── ybox-crawler // 爬虫模块 [9205]
│ └── ybox-file // 文件服务 [9300]
├── ybox-visual // 图形化管理模块
│ └── ybox-visual-monitor // 监控中心 [9100]
├──pom.xml // 公共依赖
服务架构于安全
- 采用前后端分离的模式,微服务版本前端(基于 RuoYi-Vue)。
- 后端采用Spring Boot、Spring Cloud & Alibaba。
- 注册中心、配置中心选型Nacos,权限认证使用Redis。
- 流量控制框架选型Sentinel,分布式事务选型Seata。
- 完全响应式布局(支持电脑、平板、手机等主流设备)
- 强大的爬虫功能,可以获取用户收藏的网络资源
- 支持多数据源,简单配置即可实现切换。
- 支持按钮及数据权限,可自定义部门数据权限。
- 对常用js插件进行二次封装,使js代码变得简洁,更加易维护
- 完善的XSS防范及脚本过滤,彻底杜绝XSS攻击
- api签名校验,接口安全性高。
架构图
内置功能
- 用户管理:用户是系统操作者,该功能主要完成系统用户配置。
- 部门管理:配置系统组织机构(公司、部门、小组),树结构展现支持数据权限。
- 岗位管理:配置系统用户所属担任职务。
- 菜单管理:配置系统菜单,操作权限,按钮权限标识等。
- 角色管理:角色菜单权限分配、设置角色按机构进行数据范围权限划分。
- 字典管理:对系统中经常使用的一些较为固定的数据进行维护。
- 参数管理:对系统动态配置常用参数。
- 通知公告:系统通知公告信息发布维护。
- 操作日志:系统正常操作日志记录和查询;系统异常信息日志记录和查询。
- 登录日志:系统登录日志记录查询包含登录异常。
- 在线用户:当前系统中活跃用户状态监控。
- 定时任务:在线(添加、修改、删除)任务调度包含执行结果日志。
- 代码生成:前后端代码的生成(java、html、xml、sql)支持CRUD下载 。
- 系统接口:根据业务代码自动生成相关的api接口文档。
- 服务监控:监视当前系统CPU、内存、磁盘、堆栈等相关信息。
- 在线构建器:拖动表单元素生成相应的HTML代码。
- 连接池监视:监视当前系统数据库连接池状态,可进行分析SQL找出系统性能瓶颈。
在线体验
- 后台试用账号:admin/admin123
- app试用账号: 1655495937@qq.com/Aa@123456
- 由于本平台采用微服务架构,对服务器内存要求过高,本人无法承担高额服务器费用,故采用内网穿透方式,
使用项目
测试环境启动
-
导入sql
mysql -h localhost -u root -p ybox-cloud < ./sql/ybox-cloud.sql
-
导入nacos配置
mysql -h localhost -u root -p ybox-nacos-config < ./sql/ybox-nacos-config.sql
-
打开Ybox项目,启动所有ybox-modules目录下的模块,他们分别是ybox-modules-app、ybox-modules-crawler、ybox-modules-file、ybox-modules-gen、ybox-modules-job、ybox-modules-system以及YBox目录下的ybox-auth、ybox-gateway模块
其中ybox-modules-app、ybox-modules-crawler、ybox-modules-file、ybox-modules-system、ybox-auth、ybox-gateway必启,否则报错。
-
打开YBox下的ybox-ui中的ybox-ui-mobile,在cmd中输入下面指令启动app项目
npm run dev
-
打开YBox下的ybox-ui中的ybox-ui-vue3,在cmd中输入下面指令启动后台管理项目
npm run dev
生产环境启动
- 依次点击maven中的clean、compile、package、install
- 依次找到必须启动的modules,找到target目录中的jar包,统一放到桌面
- 执行
java -jar jar包名称
- 将ybox-ui中的两个项目打包,
vite build
- 将打包后的文件上传到服务器,并使用用nginx代理,ybox-ui-mobile端口为80端口,ybox-ui-vue3端口为81端口.
图片太多,没按照顺序放,见谅!!!
app端
登录&注册 | |||
首页 | |||
百宝箱 | |||
标签&标记 | |||
设置 | |||
banner图
- banner转换网址 https://www.bootschool.net/ascii
- 3d格式