> **高考志愿**、**考研保研**、**副业赚钱**、**职业规划**、**简历优化**,微信欢迎加入[《猴哥成长营》](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. [Frelatage](https://github.com/Rog3rSm1th/Frelatage) ` Python` `Star:203` ![A56MX.png](https://picx.zhimg.com/80/v2-784245f33165d5b2f0b59641d13243a3_720w.png?source=d16d100b) Frelatage是一个基于覆盖率的Python模糊匹配库,可用于python代码模糊匹配。 Frelatage的开发受到其他各种模糊器的启发,包括AFL/AFL++、Atheris和PythonFuzz。 该项目的主要目的是利用这些模糊工具的最佳功能,并将它们集合到一个新的工具中,以便有效地模糊匹配。 #### 2. [tinyflux](https://github.com/citrusvanilla/tinyflux) ` Python` `Star:71` TinyFlux是一款优化版的小型时间序列数据库。 TinyFlux是TinyDB的时间序列版本,也是用Python编写的,没有外部依赖性。 #### 3. [Pinkerton](https://github.com/oppsec/Pinkerton) `Python` `Star:143` ![img](https://pica.zhimg.com/80/v2-67188dbfb3905b1bfac8b91ee5327fe3_720w.png?source=d16d100b) Pinkerton是一个用Python开发的JavaScript文件爬取工具和密码搜索器。 #### 4. [Karve](https://github.com/AlexEidt/Karve) ` Java` `Star:37` Karve是一个简单的缝隙瑕疵修复工具,它的原理是基于图像的上下文信息进行调整。 该算法保留了图像中的物体,而不太重要的背景空间则通过移除图像中的 "接缝"而被移除。 #### 5. [lancet](https://github.com/duke-git/lancet) ` Go` `Star:1.6k` lancet(柳叶刀)是一个全面、高效、可复用的go语言工具函数库。 lancet受到了java apache common包和lodash.js的启发。 特性: - 全面、高效、可复用 - 300+常用go工具函数,支持string、slice、datetime、net、crypt... - 只依赖go标准库 - 所有导出函数单元测试覆盖率100% #### 6. [leetcode.com](https://github.com/donutloop/leetcode.com) ` Go` `Star:109` 用Go语言实现的LeetCode问题解答方案。 390多个流行的LeetCode问题的集合,用Go解决了这些问题,每个目录都包括问题的解决方案,目录名称是相关问题的名称。 #### 7. [NoobBoy](https://github.com/Mika412/NoobBoy) ` C++` `Star:242` ![img](https://picx.zhimg.com/80/v2-364b8c60bd0974124e2d4cd826bf0a6b_720w.png?source=d16d100b) NoobBoy是一个简单的gameboy模拟器,作者写它是为了了解更多关于仿真的世界。 #### 8. [ghrns](https://github.com/devidw/ghrns) ` JavaScript` `Star:12` ![gh](https://picx.zhimg.com/80/v2-023e7b879441b47da4841ebe564ecc5c_720w.png?source=d16d100b) 起名一直都是一项困扰而艰巨的任务,ghrns让人工智能为你的GitHub仓库提供命名建议。 打开GitHub上的任何公共仓库,将该扩展作为一个客户端,使用GitHub仓库的描述和你的OpenAI API密钥,它就会提供命名建议。 #### 9. [snippets.ninja](https://github.com/dd3v/snippets.ninja) ` JavaScript` `Star:52` ![A587t.png](https://picx.zhimg.com/80/v2-302b73222b2c33ef16c34bd974961894_720w.png?source=d16d100b) Snippets.Ninja是一款用于代码片段管理的渐进式网络应用程序。 它是离线且开源的,应用程序使用IndexedDB进行本地存储。 #### 10. [laravel](https://github.com/reliese/laravel) ` PHP` `Star:971` Reliese Laravel Model Generator旨在通过提供一些方便的代码生成功能来加快Laravel应用程序的开发过程。 该工具检查你的数据库结构, 包括列名和外键, 以便自动生成具有正确类型属性的模型, 以及与其他模型的关系. ## 资源工具 #### 1. [QCAD](https://www.qcad.org/en/) ![QCAD Application Window](https://pic1.zhimg.com/80/v2-439c26295b4850c11a37389f2ed66673_720w.png?source=d16d100b) 面向所有人的开源CAD系统。 QCAD是一个免费的、开源的计算机辅助制图(CAD)的二维(2D)应用程序。 使用QCAD,你可以创建技术图纸,如建筑、室内、机械部件或原理图和图表的计划。 QCAD可在Windows、macOS和Linux上运行。 QCAD应用程序窗口QCAD的设计同时考虑到了模块化、可扩展性和可移植性。除此之外,它还提供了一个非常直观易用的用户界面。 #### 2. [musikcube](https://musikcube.com/) ![windows screenshot](https://pica.zhimg.com/80/v2-9d5a076f7b7246a14fee035b9d746de7_720w.png?source=d16d100b) musikcube是一个功能齐全的基于终端的音乐播放器、资料库和流媒体音频服务器,可以在Windows、macOS和Linux上原生运行。 它在带有定制DAC(如IQaudIO DAC+、HiFiBerry DAC+和其他)的Raspberry Pi上也运行良好,可以舒适地输出24bit/192k音频。 #### 3. [Coder](https://coder.com/) ![A5XLx.png](https://pica.zhimg.com/80/v2-ce82bdfe83b5e7a19187424acb53614b_720w.png?source=d16d100b) 在任何地方的任何机器上运行VS Code,并在浏览器中访问它。 #### 4. [Git-Story](https://initialcommit.com/tools/git-story) ![Image of the git-story tool](https://picx.zhimg.com/80/v2-b7be92eda93922bb2b951789190b6c9d_720w.png?source=d16d100b) 通过直接从你的Git repo创建、提交历史生成视频动画(.mp4),讲述你的Git项目的故事。 ## 技术文章 #### 1. [优化软件开发生命周期的5种方法](https://blog.flycode.com/5-ways-to-optimize-your-software-development-life-cycle) 在当今快速变化的数字世界和高度竞争的市场中,对于软件开发团队来说,接受更现代和创新的软件交付方法,以便能够在明显更短的时间内交付软件,变得越来越重要。 然而,开发高质量的软件解决方案需要一个有效的软件开发生命周期(SDLC)。如果你采取措施优化公司的软件开发流程,无论是在公司内部还是通过外包,你都会大大增加产品成功的机会。 在这篇文章中,将讨论SDLC的工作流程和一些可以影响项目交付成功的最佳实践。 #### 2. [一个关于 "yes"的小故事](https://endler.dev/2017/yes/) 当使用Linux时,你对什么印象比较深刻? 不同人会有不同的回答,但是,关于`yes`这个问题应该很多人都有接触。 无论是安装软件,还是执行命令时,经常会遇到在命令行下让输入`Y/N`,可能很多同学不管三七二十一,一顿的选择`yes`。 这看似不起眼的东西,在实际应用中却大有价值,在这篇文中就会介绍有关`yes`的一些妙用和价值。