当前位置: 首页 > news >正文

鸢尾博客项目开源

1.博客介绍

鸢尾博客是一个基于Spring Boot+Vue3 + TypeScript + Vite+JavaFx的客户端和服务器端的博客系统。项目采用前端与后端分离,支持移动端自适应,配有完备的前台和后台管理功能。后端使用Sa-Token进行权限管理,支持动态菜单权限,服务健康监控,数据流量统计,支持QQ、微博、码云、GitHub等三方登录。

鸢尾博客

基于Springboot + Vue3 + TypeScript 开发的前后端分离博客

2.在线地址

博客链接: www.lstar.icu

后台链接: admin.lstar.icu

测试账号: test@qq.com,密码:123456

Gitee 地址: https://gitee.com/lxwise/iris-blog_parent

Github 地址: https://github.com/lxwise/iris-blog_parent

3.Star

ps: 虽然我知道,大部分人和作者菌一样喜欢白嫖,都是看了直接下载源代码后就潇洒的离开。但我还是想请各位喜欢本项目的小伙伴:StarStarStar。只有你们的Star本项目才能有更多的人看到,才有更多志同道合的小伙伴一起加入完善本项目。请小伙伴们动动您可爱的小手,给本项目一个Star同时也欢迎大家提交pr,一起改进项目

4.目录结构

Iris-blog_parent
├── doc    --  说明文档
├── Iris-blog       --  博客后端父项目├── Iris-admin  --  博客后端项目├── src├── main├── java├── com.iris.blog  		-- 主包├── common			-- 通用模块├── components		-- 组件├── config			-- 通用配置├── controller		-- 前端控制器├── dao				-- mapper/实体嘞├── domain			-- VO类├── service			-- 接口├── strategy		-- 策略类├── utils			-- 工具类AdminApplication.java├── resourcespom.xml├── Iris-generator		--  代码生成器项目
├── Iris-blog-admin		-- 前端后台项目        
├── Iris-blog-web       -- 前端博客项目
├── sql        --  sql文件

5.项目特点

  • 博客界面布局样式主要参考 Hexo 的 ShokaX和 Butterfly 设计,页面美观,支持移动端自适应。

  • 博客后台管理基于**yudao-ui-admin-vue3**主体框架进行重构,含有动态路由权限、侧边栏、国际化、主题切换等。

  • 采用 RABC 权限模型,使用 Sa-Token 进行权限管理,支持动态权限修改、动态菜单和路由。

  • 具有文章,时间线,说说,通知,标签,分类,留言,友链,问题反馈等功能。

  • 支持数据流量统计、IP访问监控、服务健康监控、前台网站信息动态管理等功能。

  • 支持动态定时任务、动态存储管理(OSS、COS、Kodo、Minio、本地),日志管理等功能。

  • 支持文章代码块高亮、图片预览、黑夜模式、点赞、取消点赞,发布评论、回复评论、表情包等功能。

  • 发送 HTML 邮件评论回复提醒,内容详细,文章动态通知等功能。

  • 接入QQ、Weibo、Gitee、Github等第三方快速登录,减少注册成本。

  • 支持文章高级搜索、搜索关键字高亮分词。

  • 文章编辑使用 Markdown 编辑器,写法简单便捷。

  • 含有实时天气预报、标签云、最新评论、文章目录、文章推荐和文章置顶功能。

  • 采用 Restful 风格的 API,注释完善,代码遵循阿里巴巴开发规范,有利于开发者学习。

6.技术介绍

前端: Vue3 +Vite + Pinia + Vue Router + Vueuse + Vue-i18n + Unocss +Iconify + TypeScript + Axios + Element Plus + Naive UI + Echarts + Swiper

后端: SpringBoot + Javafx + Mysql + Redis + Oss/Cos/Qiniu/Minio + Mail + Quartz + Thymeleaf + Nginx + Docker + Sa-Token + Swagger2 + knife4j + MyBatisPlus + lombok + ip2region

其他: 接入 QQ、Weibo、Gitee、Github 第三方登录,Hutool、Guava、Commons等工具包

7.运行环境

服务器: 腾讯云 2 核 4G CentOS7.6

对象存储: 阿里云 OSS、腾讯云 COS、七牛云 Kodo、Minio

最低配置: 2 核 2G 服务器 ps:如果mysql Redis这些不部署在同一台服务器 1核2G也能运行

8.开发环境

开发工具说明
IDEAJava 开发工具 IDE
Webstorm前端 开发工具 IDE
Navicat/DBeaverMySQL 远程连接工具
Redis Desktop ManagerRedis 远程连接工具
FinalshellLinux 远程连接工具
ApiFox接口调试工具
SceneBuilderJavaFx开发工具
开发环境版本
OpenJDK17.0.9
MySQL8.0.11
Redis6.2.6
Nginx1.22.1
Node18.20.2
Npm10.5.0
Pnpm9.0.6

9.本地运行

  1. MySQL版本为8.0.11,npm版本为10.5.0,node版本为v18.0.02
  2. SQL 文件位于根目录下的iris_blog.sql,将其中的数据导入到自己本地数据库中
  3. 修改后端application.yml配置文件中的数据库等连接信息,项目中使用到的关于阿里云、腾讯云功能和第三方授权登录等需要自行开通
  4. npm installnpm run dev
  5. 项目启动后,使用admin@qq.com管理员账号登录后台,密码为123456

ps:请先运行后端项目,再启动前端项目,前端项目配置由后端动态加载。

10.项目截图

前台

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

后台

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

11.后续计划

  • 博客文章导入导出
  • 移动端文章目录
  • 新增相册功能
  • 新增看板娘
  • 新增加密文章
  • 优化交互体验

12.项目总结

经过数月的努力与探索,我终于完成了自己的博客项目。整个项目花费了大量的心血,从最初的构想到最终的实现,这个过程不仅充满了挑战,也让我学到了很多宝贵的知识和技能。在开发的过程中,我参考了许多优秀的开源项目,它们为我的项目提供了重要的指导和支持。在这里,我想对所有贡献者表示最深的感谢,没有你们的工作,我的项目不可能如此顺利地完成。

  • 在此特别感谢以下开源项目的贡献者们,是你们的工作让我的项目得以顺利完成:

    • hexo-theme-shokaX
    • hexo-theme-butterfly
    • yudao-ui-admin-vue3
    • Sa-Token
    • 基于 Vue.js 的弹幕交互组件

    最后,我希望我的博客项目能够为你带来同样的收获与快乐。如果你有任何建议或意见,欢迎随时联系我。让我们一起分享知识,共同成长!

相关文章:

鸢尾博客项目开源

1.博客介绍 鸢尾博客是一个基于Spring BootVue3 TypeScript ViteJavaFx的客户端和服务器端的博客系统。项目采用前端与后端分离,支持移动端自适应,配有完备的前台和后台管理功能。后端使用Sa-Token进行权限管理,支持动态菜单权限,服务健康…...

Google封号潮来袭!跨境卖家如何解封?

近期,不少小伙伴在苦苦哀嚎:Google账号又又又又被封啦!对于跨境业务在线的小伙伴来说来说,是一个比较严重的问题。但不必过于担心,以下是一些可能的原因和相应的解决方法,耐心看完,也许对你的账号解封有帮助…...

路径规划 | ROS中多个路径规划算法可视化与性能对比分析

目录 0 专栏介绍1 引言2 禁用局部规划器3 路径规划定性对比实验3.1 加载路径规划器和可视化插件3.2 设置起点和终点3.3 选择规划器规划3.4 不同规划器对比3.5 路径保存和加载 4 路径规划定量对比实验4.1 计算规划耗时4.2 计算规划长度4.3 计算拓展节点数4.4 计算路径曲率4.5 计…...

使用 PyCharm 构建 FastAPI 项目:零基础入门 Web API 开发

使用 PyCharm 构建 FastAPI 项目:零基础入门 Web API 开发 本文提供了一份完整的 FastAPI 入门指南,涵盖从环境搭建、依赖安装到创建并运行一个简单的 FastAPI 应用的各个步骤。通过 FastAPI 和 Uvicorn,开发者可以快速构建现代化的 Web API…...

Prim算法与Dijstra算法

注:参考如下文章和视频 不能说毫不相干,简直是一模一样(Prim vs Dijkstra) 普里姆和迪杰斯特拉太像了,他们有什么区别? Prim算法和Dijkstra算法区别 文章目录 总结数组元素的更新两种算法的完整代码 普里姆算法算法步骤算法描…...

水经微图IOS版5.6.1发布,新增图源二维码分享并修订徒步模式功能

随时随地,微图一下! 水经微图(以下称“微图”)IOS版5.6.1发布,本次升级主要新增了图源二维码分享功能,以及修订过往足迹的徒步模式功能。 当前版本 当前版本号为:5.6.1 如果你发现该版本中存…...

复现第三周

1.eval执行 1)打开题目 简单进行代码审计,而题目又为eval函数说明这里eval() 会执行传入的任意代码,可以通过 cmd 作为参数执行任意 PHP 代码,这里相当于用cmd作为参数来执行url头命令 2)在url头输入命令cmdsystem("ls&quo…...

Django---数据库(多表关联)

在Django中操作数据库并实现多表关联,主要是通过定义模型(Models)及其关系,然后利用Django ORM(Object-Relational Mapping)执行数据库操作。 定义模型及其关系 首先,需要在models.py文件中定…...

2024系统架构师---论软件可靠性设计及其应用论文

可靠性 软件可靠性是指软件系统在一定的时间内持续无故障运行的能力。 可靠性通常用平均失效等待时间(MTTF)和平均失效间隔时间(MTBF)来衡量。 影响可靠性的因素 从技术的角度来看,影响软件可靠性的主要因素如下。…...

SpringBoot在线教育系统:云部署策略

6系统测试 6.1概念和意义 测试的定义:程序测试是为了发现错误而执行程序的过程。测试(Testing)的任务与目的可以描述为: 目的:发现程序的错误; 任务:通过在计算机上执行程序,暴露程序中潜在的错误。 另一个…...

Zabbix 6.0 部署

目录 一、序章 二、zabbix概念 2.1 zabbix 是什么? 2.2 zabbix 监控原理: 2.3 Zabbix 6.0 新特性: 2.3.1 Zabbix server高可用防止硬件故障或计划维护期的停机 2.3.2 Zabbix 6.0 LTS新增Kubernetes监控功能,可以在Kubernet…...

用Python遍历输出烟感名称和状态

为了使用Python遍历输出烟感名称和状态,您需要首先从SNMP代理(如网络设备或硬件设备)获取这些值。为此,您可以使用第三方库如pysnmp,它允许您轻松地与SNMP代理通信。 首先,您需要安装pysnmp库,…...

Redis的持久化以及性能管理

目录 一、Redis持久化概述 1.什么是Redis持久化 2.持久化方式 3.RDB持久化 3.1概念 3.2触发条件 3.3执行流程 3.4启动时加载 4. AOF持久化 4.1概念 4.2启动AOF 4.3执行流程 4.4启动时加载 5.RDB和AOF的优缺点 二、Redis性能管理 1.查看Redis内存使用 2…...

Docker部署Meta-Llama-3.1-70B-Instruct API openai格式,vLLM速度对比

下载模型 modelscope环境,国内下载更快: conda create -n modelscope python=3.10 conda activate modelscopepip install modelscope命令行下载: https://modelscope.cn/models/LLM-Research/Meta-Llama-3.1-70B-Instruct modelscope download --model LLM-Research/Met…...

USB协议学习

文章目录 USB发展背景发展变化速度等级通讯接口 四种传输主设备 & 从设备主设备从设备 连接与检测高速设备与主机连接USB总线常见的几种状态 枚举过程特点 控制传输学习资料 USB发展背景 发展变化 USB1.1:规范了USB低全速传输; USB2.0:…...

TDengine 数据订阅 vs. InfluxDB 数据订阅:谁更胜一筹?

在时序数据的应用场景中,数据的实时消费和处理能力成为衡量数据库性能和可用性的重要指标。TDengine 和 InfluxDB 作为时序数据库(Time Series Database)中的佼佼者,在数据订阅方面各有特点。但从架构设计、灵活性和系统负载上看&…...

用户批评 SAP 的人工智能战略

在2024年德语SAP用户组织(DSAG)年会上,SAP用户对公司云优先的AI创新策略表示不满。SAP决定将AI功能仅限于云客户,使使用本地部署(on-premises)系统的用户感到被忽视。这种“云优先”策略引发了SAP用户间的广…...

Jest进阶知识:React组件的单元测试

在现代前端开发中,组件是构建应用程序的基本单元。一个组件不仅拥有完整的功能,还能极大地提高代码的复用性。因此,在进行单元测试时,对重要组件进行测试是必不可少的。 Testing Library Testing Library 是一个专门用于测试 We…...

MATLAB——矩阵操作

内容源于b站清风数学建模 数学建模清风老师《MATLAB教程新手入门篇》https://www.bilibili.com/video/BV1dN4y1Q7Kt/ 目录 1.MATLAB中的向量 1.1向量创建方法 1.2向量元素的引用 1.3向量元素修改和删除 2.MATLAB矩阵操作 2.1矩阵创建方法 2.2矩阵元素的引用 2.3矩阵…...

智能数据驱动的风险管理:正大金融科技的创新实践

在不断变化的金融环境中,风险管理成为投资成功的关键因素。正大公司以数据驱动的智能风控体系为核心,通过深度学习、数据分析等技术创新,帮助投资者在复杂的市场条件下实现稳健操作和风险控制。本文将探讨正大如何利用科技手段提升风险管理效…...

Spring Boot 实现流式响应(兼容 2.7.x)

在实际开发中,我们可能会遇到一些流式数据处理的场景,比如接收来自上游接口的 Server-Sent Events(SSE) 或 流式 JSON 内容,并将其原样中转给前端页面或客户端。这种情况下,传统的 RestTemplate 缓存机制会…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

华为OD机试-食堂供餐-二分法

import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

土地利用/土地覆盖遥感解译与基于CLUE模型未来变化情景预测;从基础到高级,涵盖ArcGIS数据处理、ENVI遥感解译与CLUE模型情景模拟等

🔍 土地利用/土地覆盖数据是生态、环境和气象等诸多领域模型的关键输入参数。通过遥感影像解译技术,可以精准获取历史或当前任何一个区域的土地利用/土地覆盖情况。这些数据不仅能够用于评估区域生态环境的变化趋势,还能有效评价重大生态工程…...

Android15默认授权浮窗权限

我们经常有那种需求,客户需要定制的apk集成在ROM中,并且默认授予其【显示在其他应用的上层】权限,也就是我们常说的浮窗权限,那么我们就可以通过以下方法在wms、ams等系统服务的systemReady()方法中调用即可实现预置应用默认授权浮…...

SpringCloudGateway 自定义局部过滤器

场景: 将所有请求转化为同一路径请求(方便穿网配置)在请求头内标识原来路径,然后在将请求分发给不同服务 AllToOneGatewayFilterFactory import lombok.Getter; import lombok.Setter; import lombok.extern.slf4j.Slf4j; impor…...

PAN/FPN

import torch import torch.nn as nn import torch.nn.functional as F import mathclass LowResQueryHighResKVAttention(nn.Module):"""方案 1: 低分辨率特征 (Query) 查询高分辨率特征 (Key, Value).输出分辨率与低分辨率输入相同。"""def __…...

R 语言科研绘图第 55 期 --- 网络图-聚类

在发表科研论文的过程中,科研绘图是必不可少的,一张好看的图形会是文章很大的加分项。 为了便于使用,本系列文章介绍的所有绘图都已收录到了 sciRplot 项目中,获取方式: R 语言科研绘图模板 --- sciRplothttps://mp.…...

【LeetCode】3309. 连接二进制表示可形成的最大数值(递归|回溯|位运算)

LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 题目描述解题思路Java代码 题目描述 题目链接:LeetCode 3309. 连接二进制表示可形成的最大数值(中等) 给你一个长度为 3 的整数数组 nums。 现以某种顺序 连接…...

学习一下用鸿蒙​​DevEco Studio HarmonyOS5实现百度地图

在鸿蒙(HarmonyOS5)中集成百度地图,可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API,可以构建跨设备的定位、导航和地图展示功能。 ​​1. 鸿蒙环境准备​​ ​​开发工具​​:下载安装 ​​De…...