> **高考志愿**、**考研保研**、**副业赚钱**、**职业规划**、**简历优化**,微信欢迎加入[《猴哥成长营》](https://www.yuque.com/jackpop/ulig5a/srnochggbsa2eltw?singleDoc#)!
**DevWeekly**收集整理每周优质开发者内容,包括**开源项目**、**资源工具**、**技术文章**等方面。 每周五定期发布,同步更新到 知乎:Jackpop 和公众号:平凡而诗意 。 欢迎大家投稿,**[提交issue](https://github.com/Jackpopc/DevWeekly/issues)**,推荐或者自荐开源项目/资源/工具/文章~ **订阅方式**: 1. **Star**并收藏项目[DevWeekly](https://github.com/Jackpopc/DevWeekly) 2. 关注 知乎:Jackpop 3. 关注并星标公众号:平凡而诗意 进阶技术,优质资源,实用工具,欢迎关注公众号**平凡而诗意**!
## 开源项目 #### 1. [dot](https://github.com/sensity-ai/dot) ` Python` `Star:2.6k` dot(Deepfake Offensive Toolkit)是一款将deepfakes实时的、可控制的应用于在线视频的工具。 那么,deepfakes是什么? 简单的翻译过来就是深度伪造,换句话说,它是通过人工智能技术,能够将目标对象的面部特征嫁接到被模仿的对象上,给目标对象进行换脸。 #### 2. [codecat](https://github.com/CoolerVoid/codecat) ` Python` `Star:241` ![e9bCX.png](https://pic1.zhimg.com/80/v2-369270f258a3f7b53aafaa54a3ccf2ed_720w.png) CodeCat是一款可以帮助你使用静态代码分析功能找到/追踪用户输入和安全漏洞的开源工具,这对于代码开发中的安全控制非常有价值。 目前它适用于C、C++、GO、Python、javascript、Swift、PHP、Ruby、ASP、Kotlin、Dart和Java。 总结一下,它具有如下特性: - 按照Regex的自定义规则进行递归代码搜索 - 代码视图中的语法高亮 - 管理规则的系统 - 控制用户的资源 - 按照IP地址的允许列表控制HTTP访问的资源 - 遵循OWASP安全实践的应用 #### 3. [OCRmyPDF](https://github.com/ocrmypdf/OCRmyPDF) ` Python` `Star:6.8k` PDF有很多不同类型,直接通过word等格式转换的可以直接复制粘贴,操作比较简单。但是,扫描版的PDF则比较麻烦。 OCRmyPDF为扫描的PDF文件添加OCR文本层,使其能够被搜索或复制粘贴。 它具有如下特性: - 基于普通的PDF生成一个可搜索的PDF/A文件 - 将OCR文本准确地放在图像下面,以方便复制/粘贴 - 保持原始嵌入图像的准确分辨率 - 优化PDF图像,生成的文件通常比输入文件小 - 使用Tesseract OCR引擎,支持识别100多种语言 - 能处理数千页的文件 #### 4. [data-diff](https://github.com/datafold/data-diff) ` Python` `Star:1.3k` data-diff是一个命令行工具和Python库,能够用于对比两个不同数据库的差异。 目前,它已经在多种不同类型的数据库上进行过验证,而且对于对比结果可以通过CLI/API的形式来创建监控和告警,能够兼容不同的字段类型。速度也非常快,10s内能够验证25M+行数据。 data-diff将表分割成更小的片段,然后在两个数据库中对每个片段进行校验。当一个段的校验和不相等时,它将进一步把这个段分成更小的段,对这些段进行校验,直到它得到不同的行。 #### 5. [cfg4j](https://github.com/cfg4j/cfg4j) ` Java` `Star:541` 现代配置库,用于用Java编写的分布式应用。 cfg4j,也就是configuration for Java,一种开源的配置库,可以用于Java开发的分布式应用。 它具有如下特性: - 自动重新加载配置 - 强大的配置机制(接口绑定,多源支持与回退策略,合并等等)。 - 分布式环境友好(缓存,支持多种环境[测试,预开发,生产],......) - 读取配置:Consul、Git repos(YAML和/或属性)、文件、Classpath, ... - 与DI容器无缝集成:Spring、Guice等 - 与Metrics库的集成来展示性能指标 - 经过大量的测试(99%的代码覆盖率) - 完善的文档 #### 6. [Decompiler](https://github.com/shotav/Decompiler) ` Kotlin` `Star:58` ![e91YY.png](https://pic1.zhimg.com/80/v2-3b7877d5fd09a9f594e528b26ea751a6_720w.png) 一款开源免费的Java反编译GUI工具。 顾名思义,通过这款工具,我们可以对已经编译的Java jar包,可以反编译复杂的Java applets和二进制文件,产生准确的源代码。 #### 7. [scrutiny](https://github.com/AnalogJ/scrutiny) ` Go` `Star:1.5k` ![e9y81.png](https://pic1.zhimg.com/80/v2-0f0e22c90fbc6da4df25e697b9148c4d_720w.png) 用于智能S.M.A.R.T监控的 WebUI。 如果你运行的服务器有几个硬盘,你可能已经熟悉S.M.A.R.T和smartd守护程序。 smartd是一个监控许多ATA、IDE和SCSI-3硬盘中内置的自我监测、分析和报告技术(SMART)系统的守护进程。 SMART的目的是监测硬盘的可靠性和预测硬盘故障,并进行不同类型的硬盘自我测试。 Scrutiny是一个简单而集中的应用,有几个核心功能: - Web UI仪表板 - smartd集成 - 自动侦测所有连接的硬盘 历史趋势的S.M.A.R.T指标跟踪 - 利用现实故障率定制阈值 - 温度跟踪 #### 8. [sake](https://github.com/alajmo/sake) ` Go` `Star:435` sake是一个用于本地和远程主机的命令运行工具。 你在 sake.yaml 配置文件中定义服务器和任务,然后在服务器上就可以运行任务。 sake有大量的功能: - 任务、服务器和标签的自动完成 - 通过SSH进入服务器或docker容器 - 通过 sake list servers|tasks 列出服务器/任务 - 以表格格式展示任务输出 sake run