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

我开源了一个免费在线工具!UIED Tools

UIED Tools - 免费在线工具集合

最近更新:修改了文档说明,优化了项目结构介绍

这是设计师转开发的第一个开源项目,bug和代码规范可能有些欠缺。

这是一个功能丰富的免费在线工具集合网站,集成了多种实用工具,包括 AI 工具、设计工具、开发工具等。该项目旨在为设计师、开发者和普通用户提供一站式工具解决方案,提高工作效率。

在线站点:UIED免费在线工具集 

开源地址

https://github.com/Tomccc520/UIED-tools

UIED-Tools: UIED Tools在线免费工具箱,纯AI二次开发。

输入图片说明

更新日志

更新日志2025.5.11

项目亮点

  • 丰富多样的工具:提供超过80种常用工具,覆盖设计、开发、文本处理、图片处理等多个领域,持续更新中。
  • 简洁易用的界面:采用直观的UI设计,让用户快速找到并使用所需工具
  • 完全免费:所有工具完全免费使用,无需注册和付费
  • 持续更新:定期添加新工具,不断优化已有功能
  • 开源共享:项目代码完全开源,欢迎社区贡献和改进
  • 中文优化:专为中文用户设计,提供本地化的使用体验

UIED Tools 基于 Vue3、TypeScript 和 Element Plus 开发,支持响应式布局,能够在桌面端和移动端提供良好的使用体验。

快速开始

环境要求

  • Node.js 版本: >= 16.0.0
  • npm 版本: >= 8.0.0

安装步骤

方法一:从源码安装(推荐开发者使用)
  1. 克隆仓库到本地
# 从Gitee克隆
git clone https://gitee.com/tomdac/uied-tools.git# 或从GitHub克隆
git clone https://github.com/Tomccc520/UIED-tools.git# 进入项目目录
cd uied-tools
  1. 安装依赖
# 使用npm安装(推荐)
npm install# 或使用yarn
yarn install# 或使用pnpm
pnpm install
  1. 启动开发服务器
# 开发模式启动
npm run dev# 指定端口启动
npm run dev -- --port 3000
  1. 构建生产版本
# 标准构建
npm run build# 包含SEO优化的构建(推荐生产环境使用)
npm run build:pro# 预览构建结果
npm run preview
方法二:使用Docker部署(推荐运维人员使用)
# 拉取镜像
docker pull docker0796/tools-web:latest# 运行容器
docker run -d --name tools-web --restart unless-stopped -p 8080:80 docker0796/tools-web:latest# 访问服务
# 浏览器打开 http://localhost:8080

项目结构说明

uied-tools/
├── src/                      # 源代码目录
│   ├── components/          # 组件目录
│   │   ├── Common/         # 公共组件
│   │   │   └── ToolsRecommend.vue  # 工具推荐组件
│   │   ├── Home/           # 首页相关组件
│   │   ├── Layout/         # 布局组件
│   │   │   ├── Left/      # 左侧菜单
│   │   │   └── Right/     # 右侧推荐栏
│   │   └── Tools/          # 工具组件目录
│   │       ├── AI/        # AI相关工具
│   │       ├── Avatar/    # 头像相关工具
│   │       ├── Copywriting/ # 文案相关工具
│   │       ├── Design/    # 设计相关工具
│   │       ├── Dev/       # 开发相关工具
│   │       ├── tools.ts   # 工具配置文件
│   │       └── ToolIcon.vue # 工具图标组件
│   ├── router/             # 路由配置
│   │   └── router.ts      # 主路由文件
│   ├── store/              # 状态管理
│   │   └── modules/       # 状态模块
│   ├── assets/             # 静态资源
│   │   ├── icons/         # SVG图标
│   │   └── styles/        # 全局样式
│   ├── utils/              # 工具函数
│   └── App.vue             # 根组件
├── public/                 # 公共资源目录
├── docs/                   # 文档目录
├── scripts/                # 脚本目录
├── dist/                   # 构建输出目录
├── .env.development        # 开发环境配置
├── .env.production         # 生产环境配置
├── vite.config.ts          # Vite配置
├── tailwind.config.js      # Tailwind CSS配置
├── tsconfig.json           # TypeScript配置
├── package.json            # 项目依赖配置
└── README.md               # 项目说明文档

开发指南

添加新工具

添加新工具需要完成以下四个步骤:

  1. 创建工具组件

在 src/components/Tools 对应分类目录下创建新的组件文件。例如要创建一个新的AI工具,可以在 src/components/Tools/AI/ 目录下创建:

<!-- NewAITool.vue -->
<template><div class="p-6 bg-white rounded-lg shadow-sm"><h2 class="text-xl font-bold mb-4">新AI工具</h2><!-- 工具主体内容 --><div class="mb-4"><el-input v-model="inputText" placeholder="请输入内容" /></div><!-- 操作按钮 --><div class="flex justify-between"><el-button type="primary" @click="processData">处理</el-button><el-button @click="resetForm">重置</el-button></div><!-- 结果展示区域 --><div v-if="result" class="mt-4 p-4 bg-gray-50 rounded"><p>{{ result }}</p></div><!-- 底部推荐工具 --><ToolsRecommend :currentPath="route.path" /></div>
</template><script setup lang="ts">
import { ref } from 'vue'
import { useRoute } from 'vue-router'
import ToolsRecommend from '@/components/Common/ToolsRecommend.vue'const route = useRoute()
const inputText = ref('')
const result = ref('')// 处理数据函数
const processData = () => {// 实现工具核心逻辑result.value = `处理结果: ${inputText.value}`
}// 重置表单函数
const resetForm = () => {inputText.value = ''result.value = ''
}
</script>
  1. 添加路由配置

在 src/router/router.ts 文件中添加新工具的路由配置:

// router.ts
{path: '/tools/ai/new-tool',component: () => import('@/components/Tools/AI/NewAITool.vue'),name: 'newAITool',meta: {title: "新AI工具",keywords: 'AI工具,人工智能,新工具',description: '这是一个强大的AI新工具,可以帮助用户快速处理数据',}
}
  1. 注册工具信息

在 src/components/Tools/tools.ts 中的合适位置添加工具信息:

// tools.ts
// 在AI工具分类中添加
{id: 123,title: "新AI工具",logo: { type: 'svg', name: 'newAITool' }, // 使用SVG图标desc: "强大的AI工具,可快速处理数据",url: "/tools/ai/new-tool",cateId: 1,cate: 'AI工具',tags: ['新品']  // 可选:添加标签
}
  1. 添加SVG图标(可选)

如果使用SVG图标,将图标文件放入 src/assets/icons/ 目录下,命名为 newAITool.svg

完成以上步骤后,刷新页面即可看到新添加的工具。

注意事项

1. 环境配置

  • 开发环境:使用 .env.development 配置文件
    NODE_ENV=development
    VITE_API_BASE_URL=http://localhost:8080/api
    
  • 生产环境:使用 .env.production 配置文件
    NODE_ENV=production
    VITE_API_BASE_URL=https://api.example.com
    
  • 本地配置:可创建 .env.local 进行本地覆盖(不会提交到代码库)

2. 代码规范

  • TypeScript:所有新代码必须使用TypeScript编写
    • 开启严格模式:"strict": true
    • 使用类型标注:const name: string = 'value'
  • Vue 规范
    • 使用 Vue 3 Composition API
    • 使用 <script setup> 语法糖
    • 保持组件单一职责
  • 样式规范
    • 使用 Tailwind CSS 实用类优先
    • 自定义样式使用 scoped CSS
    • 遵循 Element Plus 的设计规范

3. 性能优化准则

  • 路由懒加载:所有页面组件使用动态导入
    {path: '/tools/example',component: () => import('@/components/Tools/Example.vue') // 懒加载
    }
    
  • 组件按需导入:使用 Element Plus 的按需导入
    import { ElButton, ElInput } from 'element-plus'
    
  • 资源优化
    • 图片使用WebP格式
    • SVG图标使用单色线性风格
    • 大型资源使用CDN加载

4. Git提交规范

  • 提交信息格式<类型>: <描述>
  • 常用类型
    • feat:新功能
    • fix:bug修复
    • docs:文档更新
    • style:代码格式调整
    • refactor:代码重构
    • perf:性能优化
    • test:测试相关
    • chore:构建过程或辅助工具变动

常见问题与解决方案

1. 依赖相关问题

安装依赖失败
# 方法1:清除npm缓存后重试
npm cache clean --force
npm install# 方法2:使用镜像源
npm config set registry https://registry.npmmirror.com
npm install# 方法3:尝试使用其他包管理器
yarn install
# 或
pnpm install
依赖版本冲突
# 更新依赖到兼容版本
npm update# 检查有问题的依赖
npm ls <package-name># 强制解决冲突
npm install --force

2. 开发环境问题

开发服务器启动失败
  • 端口占用:修改 vite.config.ts 中的端口
    export default defineConfig({server: {port: 3000  // 修改为其他端口}
    })
    
  • 模块解析错误
    # 删除node_modules和lock文件后重新安装
    rm -rf node_modules package-lock.json
    npm install
    
  • Node.js版本问题:使用 nvm 安装正确版本
    nvm install 16
    nvm use 16
    
热更新不工作
  • 检查 vite.config.ts 中的 server.hmr 配置
  • 确认系统文件监听限制(Linux系统)
  • 重启开发服务器

3. 构建与部署问题

构建失败
  • 语法错误:检查控制台错误信息,修复对应代码
  • 内存不足:增加Node内存限制
    # 增加内存限制
    export NODE_OPTIONS=--max-old-space-size=4096
    npm run build
    
  • 依赖缺失:确认所有依赖正确安装
    npm install --legacy-peer-deps
    
部署问题
  • 静态资源路径错误:检查 vite.config.ts 中的 base 配置
    export default defineConfig({base: '/'  // 根据实际部署路径调整
    })
    
  • Docker部署问题:参考前面的Docker部署指南
  • SSR渲染问题:查看SSR构建日志,修复服务端渲染错误

技术栈详解

核心技术

技术版本用途文档链接
Vue3.3.10前端框架Vue文档
TypeScript5.3.3类型检查TS文档
Vite5.0.10构建工具Vite文档
Pinia2.1.7状态管理Pinia文档
Vue Router4.2.5路由管理Router文档

UI框架与样式

技术版本用途文档链接
Element Plus2.7.0UI组件库Element Plus文档
Tailwind CSS3.3.5原子CSS框架Tailwind文档
PostCSS8.4.32CSS处理器PostCSS文档

工具库

技术用途文档链接
AxiosHTTP请求Axios文档
VueUse实用工具集VueUse文档
Day.js日期处理Day.js文档
ECharts数据可视化ECharts文档

开发工具

技术用途推荐配置
VS Code代码编辑器推荐插件:Volar, ESLint, Prettier
ESLint代码检查配置文件:.eslintrc.js
Prettier代码格式化配置文件:.prettierrc
Git版本控制配合Husky进行提交校验

贡献指南

欢迎为 UIED Tools 项目做出贡献!请遵循以下步骤:

贡献流程

  1. Fork 仓库

    • 访问 GitHub仓库 或 Gitee仓库
    • 点击右上角"Fork"按钮创建个人分支
  2. 克隆到本地

    git clone https://github.com/你的用户名/UIED-tools.git
    cd UIED-tools
    
  3. 创建功能分支

    # 以功能命名分支
    git checkout -b feature/新功能名称
    # 或以修复命名分支
    git checkout -b fix/问题名称
    
  4. 开发与测试

    • 进行代码修改和开发
    • 运行测试确保功能正常
    • 遵循代码规范和样式指南
  5. 提交更改

    git add .
    git commit -m "feat: 添加了xxx功能"
    
  6. 推送到GitHub

    git push origin feature/新功能名称
    
  7. 创建 Pull Request

    • 访问你Fork的仓库
    • 点击"New Pull Request"按钮
    • 选择你的功能分支和原仓库的主分支
    • 填写PR描述,说明更改内容和目的

相关文章:

我开源了一个免费在线工具!UIED Tools

UIED Tools - 免费在线工具集合 最近更新&#xff1a;修改了文档说明&#xff0c;优化了项目结构介绍 这是设计师转开发的第一个开源项目&#xff0c;bug和代码规范可能有些欠缺。 这是一个功能丰富的免费在线工具集合网站&#xff0c;集成了多种实用工具&#xff0c;包括 AI …...

geoserver发布arcgis瓦片地图服务(最新版本)

第一步&#xff1a;下载geoserver服务&#xff0c;进入bin目录启动 需要提前安装好JDK环境&#xff0c;1.8及以上版本 安装完成&#xff0c;页面访问端口&#xff0c;进入控制台界面,默认用户名密码admin/geoserver 第二步&#xff1a;下载地图 破解版全能电子地图下载器&…...

RN 鸿蒙混合开发实践(踩坑)

#三方框架# #React Native # 1 。环境配置&#xff1b; 安装 DevEco 开发工具&#xff1b; Node 版本16&#xff1b; hdc环境配置 hdc 是 OpenHarmony 为开发人员提供的用于调试的命令行工具&#xff0c;鸿蒙 React Native 工程使用 hdc 进行真机调试。hdc 工具通过 OpenHa…...

2025年阿里云ACP大数据分析师认证模拟试题(附答案解析)

这篇文章的内容是阿里云ACP大数据分析师认证考试的模拟试题。 所有模拟试题由AI自动生成&#xff0c;主要为了练习和巩固知识&#xff0c;并非所谓的 “题库”&#xff0c;考试中如果出现同样试题那真是纯属巧合。 1、ABC公司现有大量的图片和视频信息&#xff0c;以下哪种产…...

go语言实现IP归属地查询

效果: 实现代码main.go package mainimport ("encoding/json""fmt""io/ioutil""net/http""os" )type AreaData struct {Continent string json:"continent"Country string json:"country"ZipCode …...

Qt中解决UI线程阻塞导致弹窗无法显示的两种方法

在Qt应用程序开发中,我们经常会遇到这样的问题:当执行一个耗时操作时,整个界面会卡住,无法响应任何用户操作,甚至连一个简单的提示弹窗都无法正常显示。本文将介绍两种解决这个问题的方法,并通过完整的代码示例进行说明。 问题描述 先来看一个常见的错误示例: #inclu…...

位运算题目:黑板异或游戏

文章目录 题目标题和出处难度题目描述要求示例数据范围 解法思路和算法代码复杂度分析 题目 标题和出处 标题&#xff1a;黑板异或游戏 出处&#xff1a;810. 黑板异或游戏 难度 8 级 题目描述 要求 给定一个整数数组 nums \texttt{nums} nums&#xff0c;表示写在黑板…...

LegoGPT,卡内基梅隆大学推出的乐高积木设计模型

LegoGPT 是由卡内基梅隆大学开发的一款创新性乐高积木设计模型&#xff0c;能够根据用户的文本提示生成结构稳固、可组装的乐高模型。该模型基于自回归语言模型和大规模乐高设计数据集进行训练&#xff0c;用户只需输入简单的文字描述&#xff0c;LegoGPT 就能逐步构建出物理稳…...

深度 |国产操作系统“破茧而出”:鸿蒙电脑填补自主生态空白

真心为国内能有像华为这样的技术型公司而自豪&#xff0c;一步步突围技术封锁。从这篇信息&#xff0c;可以给软件从业者一个启示&#xff1a;鸿蒙生态将是一个新的机会&#xff0c;值得好好把握。 鸿蒙电脑正成为中国电子信息技术新坐标。 超10亿鸿蒙生态设备、2800家鸿蒙智…...

【Python】Python常用数据类型判断方法详解

在Python编程中,准确判断数据类型是处理逻辑分支、类型转换和异常处理的基础。本文结合核心方法与实践场景,系统介绍type()、isinstance()等常用判断方式,并分析其适用性与最佳实践。 一、直接类型判断方法 type()函数 • 功能:返回对象的精确类型,适用于简单类型判断。 •…...

【美国将取消对能源之星支持 严重影响AI服务器】

1992年美国政府在共和党执政期间推出了影响深远的“能源之星”计划&#xff08;Energy Star&#xff09;&#xff0c;很多人可能并不知道能源执行计划&#xff0c;但这个蓝色星星标签估计大多数人都不会陌生。能源之星计划从推出以来不止得到各类消费电子制造商认可&#xff0c…...

《 C++ 点滴漫谈: 三十七 》左值?右值?完美转发?C++ 引用的真相超乎你想象!

摘要 本文全面系统地讲解了 C 中的引用机制&#xff0c;涵盖左值引用、右值引用、引用折叠、完美转发等核心概念&#xff0c;并深入探讨其底层实现原理及工程实践应用。通过详细的示例与对比&#xff0c;读者不仅能掌握引用的语法规则和使用技巧&#xff0c;还能理解引用在性能…...

【生产实践】Linux中/usr/bin、/usr/sbin与/usr/local的关系解析(2025年技术规范)

一、核心定位与功能划分 /usr/bin&#xff1a;用户级通用命令库 • 定位&#xff1a;存储系统预装的用户级可执行文件&#xff0c;这些命令通常由Linux发行版官方软件包管理器&#xff08;如APT、YUM&#xff09;安装&#xff0c;属于系统默认功能的一部分。 • 示例命令&#…...

数据可视化:用一张图讲好一个故事

在这个信息爆炸的时代&#xff0c;数据无处不在&#xff0c;但如何让复杂的数据变得通俗易懂&#xff1f;数据可视化就是一把神奇的钥匙。它不仅能将枯燥的数字转化为生动的图像&#xff0c;还能挖掘出数据背后隐藏的故事。然而&#xff0c;很多人对数据可视化的理解还停留在表…...

C++获取目录中所有图片路径的函数get_image_paths解析

本文将全面解析一个用于获取目录中图片路径的C函数get_image_paths&#xff0c;从基础语法到高级概念&#xff0c;涵盖C标准库、文件系统操作、异常处理等多个方面。 原始代码 std::vector<std::string> get_image_paths(const std::string& directory_path) {log_…...

物联网无线传感方向专业词汇解释

涡旋电磁波(VEMW)&#xff1a;一种具有轨道角动量的电磁波&#xff0c;其特性在于能够在传播过程中携带额外的相位信息&#xff0c;从而增加通信系统的容量和灵活性。波前&#xff1a;波动传播过程中&#xff0c;同一时刻振动相位相同的所有点构成的几何曲面&#xff0c;代表波…...

【C语言指针超详解(五)】--回调函数,qsort函数的理解和使用,qsort函数的模拟实现

目录 一.回调函数 1.1--回调函数的概念 1.2--回调函数改造计算器程序 二.qsort函数的理解和使用 2.1--qsort函数的理解 2.2--使用qsort函数排序整型数据 2.3--使用qsort函数排序结构数据 三.qsort函数的模拟实现 &#x1f525;个人主页&#xff1a;草莓熊Lotso的个人主…...

【Linux网络】————HTTP协议详解

作者主页&#xff1a; 作者主页 本篇博客专栏&#xff1a;Linux 创作时间 &#xff1a;2025年5月11日 1. HTTP 协议介绍 基本介绍&#xff1a; http协议全称&#xff1a;超文本传输协议&#xff0c;适用于从万维网服务器传输超文本到本地的传送协议。HTTP是一种应用层协议…...

使用WinSW工具将exe注册为window服务

下载工具WinSW(工具在GitHub上 打不开就需要魔法VPN) 文件准备 将以下文件放在同一个目录&#xff08;例如&#xff1a;WebSocketService 文件夹&#xff09;中&#xff1a; WebScoket.exe WinSW-x64.exe WebScoketService.xml ← 服务配置文件 install_service.bat ←…...

远程命令执行RCE概述

远程命令执行RCE诞生于1997年&#xff0c;比SQL注入早1年&#xff0c;据说当时的程序员发现在网站里可以随意的删除网页&#xff0c;就像删除本地文件一样简单&#xff0c;但是这种场景相对不多&#xff0c;因此没有SQL注入广泛&#xff0c;早期的web攻击像现在的护网一样&…...

在 .NET 8 开发的WinForms 程序中展示程序版本号的几种方式

前言 欢迎关注dotnet研习社&#xff0c;今天我们讨论一个Winform开发中的一个常见的需求内容“关于程序的版本号显示”。 在 WinForms 桌面应用程序开发中&#xff0c;向用户显示当前程序的版本号是一个常见的需求&#xff0c;尤其是在产品发布、更新提示或技术支持场景中尤为…...

[特殊字符] Spring Cloud 微服务项目中 common 模块依赖导致网关启动失败的排查与解决

在进行微服务开发时&#xff0c;我们通常会抽取一个 common 公共模块&#xff0c;封装一些通用配置类、工具类、拦截器、常用组件依赖等&#xff0c;供多个微服务共享使用。 但近期在实际开发中&#xff0c;出现了一个典型问题&#xff1a;在 Gateway 网关模块中引入 common 后…...

Java SpringMVC 和 MyBatis 整合关键配置详解

目录 一、数据源配置二、MyBatis 工厂配置三、Mapper 扫描配置四、SpringMVC 配置五、整合示例实体类Mapper 接口Mapper XML 文件Service 类控制器JSP 页面六、总结在 Java Web 开发中,SpringMVC 和 MyBatis 是两个常用框架。SpringMVC 负责 Web 层的请求处理和视图渲染,MyBa…...

24.(vue3.x+vite)引入组件并动态挂载(mount)

示例截图 组件代码: <template><div><div>{{message }}</div>...

Linux 软件包|服务管理

rpm 指令备注rpm -qa查看已安装软件&#xff0c;可以结合grep过滤查找rpm -e firefox卸载firefoxrpm -ivh firefox-115.12.0-1.el7.centos.i686.rpm安装gcc&#xff08;只能离线安装&#xff09; yum 能够从指定的服务器自动下载 RPM 包并且安装 指令备注yum list列出所有可…...

前端上传el-upload、原生input本地文件pdf格式(纯前端预览本地文件不走后端接口)

前端实现本地文件上传与预览&#xff08;PDF格式展示&#xff09;不走后端接口 实现步骤 第一步&#xff1a;文件选择 使用前端原生input上传本地文件&#xff0c;或者是el-upload组件实现文件选择功能&#xff0c;核心在于文件渲染处理。&#xff08;input只不过可以自定义样…...

TestNG接口自动化

第一章、 Rest assured接口测试框架 一、概述 接口自动化的框架&#xff0c;主要是用来做接口自动化测试&#xff0c;返回的报文都是JSON 语法比较简单&#xff0c;只需要掌握常用的方法 用例运行的速度非常快 断言的机制 Json 封装相关方法&#xff0c;jsonpath&#xff0c;x…...

Parasoft C++Test软件单元测试_实例讲解(指针类型的处理)

系列文章目录 Parasoft C++Test软件静态分析:操作指南(编码规范、质量度量)、常见问题及处理 Parasoft C++Test软件单元测试:操作指南、实例讲解、常见问题及处理 Parasoft C++Test软件集成测试:操作指南、实例讲解、常见问题及处理 进阶扩展:自动生成静态分析文档、自动…...

ngx_http_keyval_module动态键值管理

一、模块安装与验证 检查模块是否可用 nginx -V 2>&1 | grep --color -o ngx_http_keyval_module如果看到 ngx_http_keyval_module&#xff0c;说明模块已编译进 NGINX。 若未找到&#xff0c;请联系你的 NGINX 供应商&#xff0c;获取商业版或重新编译并启用该模块&am…...

面试篇:Spring MVC

基础概念 什么是Spring MVC&#xff1f; Spring MVC 是 Spring Framework 提供的一个基于 Servlet 的 Web 框架&#xff0c;属于 MVC&#xff08;Model-View-Controller&#xff09;架构的一种实现。它通过 DispatcherServlet 作为前端控制器&#xff0c;对请求进行分发和调度…...

C++初阶-string类的模拟实现3

目录 1.string::find(char ch,size_t pos0) const的模拟实现 2.string::find(const char* str,size_t pos0) const的模拟实现 3.string::size() const和string::capacity() const的模拟实现 4.string::operator[] (size_t pos)和string::operator[] (size_t pos) const的模拟…...

接口出现 请求参数格式错误 的解决方法

目录 前言1. 问题所示2. 原理分析3. 解决方法前言 🤟 找工作,来万码优才:👉 #小程序://万码优才/r6rqmzDaXpYkJZF 爬虫神器,无代码爬取,就来:bright.cn Java基本知识: java框架 零基础从入门到精通的学习路线 附开源项目面经等(超全)【Java项目】实战CRUD的功能整理…...

MYSQL时间函数、group by 和partition by的区别、组内编号leetcode学习

mysql时间函数 select now(); --当前时间 select current_date() --当前日期 select current_timestamp --同now()select date(2025-04-14 12:34:56) --提取日期部分&#xff1a;2025-04-14 select datediff(2025-4-14,2025-04-10) 日期相差四天 select date_sub(2024-04-14,…...

OpenCV 的 CUDA 模块中用于将一个多通道 GpuMat 图像拆分成多个单通道图像的函数split()

操作系统&#xff1a;ubuntu22.04 OpenCV版本&#xff1a;OpenCV4.9 IDE:Visual Studio Code 编程语言&#xff1a;C11 算法描述 cv::cuda::split 是 OpenCV CUDA 模块中的一个函数&#xff0c;用于将一个多通道的 GpuMat 图像拆分成多个单通道的 GpuMat 图像。这个函数是 CP…...

吴恩达机器学习笔记:单变量线性回归

通过一个例子来开始&#xff1a;这个例子是预测住房价格的&#xff0c;我们要使用一个数据集&#xff0c;数据集包含俄勒冈州波特兰市的住房价格。根据不同房屋尺寸所售出的价格&#xff0c;画出我的数据集。比方说&#xff0c;如果房子是 1250 平方尺大小&#xff0c;你要告诉…...

UI自动化测试框架:PO 模式+数据驱动

&#x1f345; 点击文末小卡片&#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 1. PO 设计模式简介 什么是 PO 模式&#xff1f; PO&#xff08;PageObject&#xff09;设计模式将某个页面的所有元素对象定位和对元素对象的操作封装成…...

NestJS 知识框架

一、核心概念 1. 架构基础 基于 Express/Fastify 的 Node.js 框架 采用模块化设计 使用 TypeScript 构建&#xff08;也支持 JavaScript&#xff09; 借鉴 Angular 的设计理念 2. 主要组件 模块 (Module): 应用的基本组织单元 控制器 (Controller): 处理 HTTP 请求 服务…...

Porting Linux to a new processor architecture, part 1: The basics

Although a simple port may count as little as 4000 lines of code—exactly 3,775 for the mmu-less Hitachi 8/300 recently reintroduced in Linux 4.2-rc1—getting the Linux kernel running on a new processor architecture is a difficult process. Worse still, the…...

Dagster Pipes系列-1:调用外部Python脚本

本文是"Dagster Pipes教程"的第一部分&#xff0c;介绍如何通过Dagster资产调用外部Python脚本并集成到数据管道中。首先&#xff0c;创建Dagster资产subprocess_asset&#xff0c;利用PipesSubprocessClient资源执行外部脚本external_code.py&#xff0c;实现跨进程…...

北京傲云源墅——区域价值腾飞的高端之选

在北京这座繁华都市中&#xff0c;房产的价值往往与区域的发展潜力息息相关。而傲云源墅项目&#xff0c;正位于极具价值的孙河墅区&#xff0c;这片土地正发生着令人瞩目的蝶变。近年来&#xff0c;孙河区域的崛起引人注目。2025 年 3 月&#xff0c;北京朝阳区平房乡黄杉木店…...

扩展:React 项目执行 yarn eject 后的 package.json 变化详解及参数解析

扩展&#xff1a;React 项目执行 yarn eject 后的 package.json 变化详解及参数解析 什么是 yarn eject&#xff1f;React 项目执行 yarn eject 后的 package.json 变化详解1. 脚本部分 Scripts 被替换2. 新增构建依赖 dependencies&#xff08;部分&#xff09;3. 新增 Babel …...

编写一个处理txt的loader插件,适用于wbepack

处理txt的webpack的loader插件 编写一个处理txt的loader插件&#xff0c;适用于wbepack 编写一个处理txt的loader插件&#xff0c;适用于wbepack 实现一个处理txt的插件&#xff0c;给文本每行前后添加**** module.exports function txtLoader(content) {// 确保 Loader 是异…...

高速边坡监测成本高?自动化如何用精准数据省预算?

高速边坡自动化监测解决方案 一、边坡监测的概述 1.1 边坡监测的背景 我国山地丘陵约占国土面积的65%&#xff0c;且地质地貌复杂&#xff0c;气候类型多样&#xff0c;构成活动频繁&#xff0c;自然灾害隐患多&#xff0c;分布广。而且近年来由于高速公路边坡滑坡灾害引发的事…...

SysAid On-Prem XML注入漏洞复现(CVE-2025-2776)

免责申明: 本文所描述的漏洞及其复现步骤仅供网络安全研究与教育目的使用。任何人不得将本文提供的信息用于非法目的或未经授权的系统测试。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权,请及时与我们联系,我们将尽快处理并删除相关内容。 前…...

WEB安全--RCE--webshell bypass2

继WEB安全--RCE--webshell bypass的补充&#xff1a; 六、PHP反序列化 webshell&#xff1a; <?php $s unserialize(a:2:{i:0;O:8:"stdClass":1:{s:1:"a";i:1;}i:1;r:2;}); $c "123"; $arr get_declared_classes(); $i0;for($i;$i<c…...

Spark处理过程-转换算子和行动算子

&#xff08;一&#xff09;RDD的处理过程 RDD经过一系列的“转换”操作&#xff0c;每一次转换都会产生不同的RDD&#xff0c;以供给下一次“转换”操作使 用&#xff0c;直到最后一个RDD经过“行动”操作才会真正被计算处理。 1.延迟。RDD中所有的转换都是延迟的&…...

​Spring Boot 配置文件敏感信息加密:Jasypt 实战

​​ 目录 ​​ ​1. 为什么需要加密配置文件&#xff1f;​​ ​2. Jasypt 快速集成​ ​2.1 在xml文件中添加 Maven 依赖​ ​2.2 生成加密字符串​​ ​编辑 ​编辑 ​3. 安全最佳实践​ ​4. 常见问题​ ​Q1&#xff1a;加密后启动报错&#xff1f;​​ ​Q2&…...

c++STL-vector的模拟实现

cSTL-vector的模拟实现 vector的模拟实现基本信息构造函数析构函数返回容量&#xff08;capacity&#xff09;返回元素个数&#xff08;size&#xff09;扩容&#xff08;reserve和resize&#xff09;访问&#xff08;[]&#xff09;迭代器&#xff08;**iterator**&#xff09…...

【Python 变量类型】

Python 是一种动态类型语言&#xff0c;变量类型在运行时自动确定&#xff0c;无需显式声明。以下是 Python 中核心变量类型的分类与用法详解&#xff1a; 一、基本数据类型 1. 数值类型 整数 (int) 支持正负数、零和二进制/八进制/十六进制表示&#xff1a; a 42 b 0o52 #…...

2.2 微积分的解释

第一阶段&#xff1a;曲直转化的数学革命 原始困境&#xff1a; 几何局限&#xff1a;古希腊几何仅能计算矩形/三角形等直线图形面积现实需求&#xff1a;17世纪弹道轨迹、行星轨道等曲线相关计算需求激增关键矛盾&#xff1a;直线数学工具&#xff08;如毕达哥拉斯定理&…...