194 lines
8.1 KiB
Markdown
194 lines
8.1 KiB
Markdown
> **高考志愿**、**考研保研**、**副业赚钱**、**职业规划**、**简历优化**,微信欢迎加入[《猴哥成长营》](https://www.yuque.com/jackpop/ulig5a/srnochggbsa2eltw?singleDoc#)!
|
||
|
||
<p align="center">
|
||
<img src="https://s11.ax1x.com/2023/12/23/pi7qxU0.md.jpg" height="400"></img>
|
||
</p>
|
||
|
||
**DevWeekly**收集整理每周优质开发者内容,包括**开源项目**、**资源工具**、**技术文章**等方面。
|
||
|
||
每周五定期发布,同步更新到<a href="https://www.zhihu.com/people/sharetechlee/activities">
|
||
知乎:Jackpop</a> 和<a href="https://mp.weixin.qq.com/s/hTZAGgkiMS0XPZ9OHQxFJg" rel="nofollow">公众号:平凡而诗意</a> 。
|
||
|
||
欢迎大家投稿,**[提交issue](https://github.com/Jackpopc/DevWeekly/issues)**,推荐或者自荐开源项目/资源/工具/文章~
|
||
|
||
**订阅方式**:
|
||
|
||
1. **Star**并收藏项目[DevWeekly](https://github.com/Jackpopc/DevWeekly)
|
||
2. 关注<a href="https://www.zhihu.com/people/sharetechlee/activities">
|
||
知乎:Jackpop</a>
|
||
3. 关注并星标<a href="https://mp.weixin.qq.com/s/hTZAGgkiMS0XPZ9OHQxFJg" rel="nofollow">公众号:平凡而诗意</a>
|
||
|
||
进阶技术,优质资源,实用工具,欢迎关注公众号**平凡而诗意**!
|
||
|
||
<p align="center">
|
||
<img src="https://s1.ax1x.com/2022/07/10/jsCAdH.jpg" width="260" height="260"></img>
|
||
</p>
|
||
|
||
|
||
|
||
## 开源项目
|
||
|
||
#### 1. [packj](https://github.com/ossillate-inc/packj)
|
||
|
||
` Python` `Star:176`
|
||
|
||
Packj(发音为package)是一个命令行(CLI)工具,用于审查开源软件包的风险问题。
|
||
|
||
这是大规模安全分析平台Packj.dev背后的工具,该平台持续审查软件包并提供免费报告。
|
||
|
||
#### 2. [vial-gui](https://github.com/vial-kb/vial-gui)
|
||
|
||
` Python` `Star:378`
|
||
|
||
![r141Y.png](https://pic1.zhimg.com/80/v2-88b698fd5c6dfff0ed6fad9fbbd276d8_720w.png)
|
||
|
||
Vial是一个开源的跨平台(Windows、Linux和Mac)图形用户界面和QMK分支,用于实时配置你的键盘。
|
||
|
||
#### 3. [Paperless-ngx](https://github.com/paperless-ngx/paperless-ngx)
|
||
|
||
` Python` `Star:3.6k`
|
||
|
||
![r1DHv.png](https://pica.zhimg.com/80/v2-c07ec0c66918a52ad6b0fca8cb0b771e_720w.png)
|
||
|
||
Paperless-ngx是一个文件管理系统,它将你的物理文件转化为可搜索的在线档案,这样你就可以保存,而且节省纸张。
|
||
|
||
Paperless-ngx从paperless-ng分支出来,在原来的基础上做了很多改进。
|
||
|
||
#### 4. [selfsupervised-denoising](https://github.com/NVlabs/selfsupervised-denoising)
|
||
|
||
` Python` `Star:266`
|
||
|
||
![r1HXq.jpg](https://pic3.zhimg.com/80/v2-3f28c34830876cc43a254150968765ee_720w.jpg)
|
||
|
||
高质量自监督的深度图像去噪,NeurIPS 2019论文的官方TensorFlow实现。
|
||
|
||
通过这个项目,可以对一些模糊不清的噪声图像进行去噪。
|
||
|
||
#### 5. [2048-android](https://github.com/uberspot/2048-android)
|
||
|
||
` Java` `Star:982`
|
||
|
||
这是由Gabriele Cirulli制作的2048游戏的安卓移植版,是一款2048这款热门游戏的离线版本。
|
||
|
||
#### 6. [pocketbase](https://github.com/pocketbase/pocketbase)
|
||
|
||
` Go` `Star:7.4k`
|
||
|
||
![PocketBase - open source backend in 1 file](https://pica.zhimg.com/80/v2-93dcaa944fcc3db7f255d2ee1af3e549_720w.png)
|
||
|
||
PocketBase 是一个开源的 Go 后端应用,由以下部分组成:
|
||
|
||
- 嵌入式数据库(SQLite),具有实时订阅功能
|
||
- 内置文件和用户管理
|
||
- 方便的管理界面
|
||
- 简单的REST API
|
||
|
||
#### 7. [pyroscope](https://github.com/pyroscope-io/pyroscope)
|
||
|
||
` Go` `Star:6.1k`
|
||
|
||
![Pyroscope GIF Demo](https://pic1.zhimg.com/80/v2-fe1471fa83c56054c00ed4fb5bdbc5dd_720w.png?source=d16d100b)
|
||
|
||
Pyroscope是一个开源的分析析平台,它具有如下功能:
|
||
|
||
- 在你的代码中找到性能问题和瓶颈
|
||
- 使用高cardinality标记/标签来分析你的应用程序
|
||
- 解决高CPU利用率的问题
|
||
- 追踪内存泄漏的问题
|
||
- 理解你的应用程序的调用树
|
||
- 自动测量你的代码,将分析数据与跟踪联系起来
|
||
|
||
#### 8. [Concord](https://github.com/Cogmasters/concord)
|
||
|
||
` C` `Star:295`
|
||
|
||
Concord是一个异步的C99 Discord API库,它具有最小的外部依赖性。
|
||
|
||
#### 9. [envkey](https://github.com/envkey/envkey)
|
||
|
||
` JavaScript` `Star:325`
|
||
|
||
强大的安全应用配置工具,具有如下特性:
|
||
|
||
- 对API密钥和其他秘密进行端到端加密
|
||
- 环境变量的实时重载
|
||
- 修复了配置泛滥和秘密管理不力的问题
|
||
- 防止配置错误,节省时间
|
||
|
||
#### 10. [wipeClean](https://github.com/JeanJouliaCode/wipeClean)
|
||
|
||
` JavaScript` `Star:945`
|
||
|
||
![r1QlM.gif](https://pic1.zhimg.com/80/v2-2639a933a41c3d816d17dee6a2f877e4_720w.gif)
|
||
|
||
厌倦了老旧而无趣的终端清除命令?
|
||
|
||
wipeClean是一个非常有趣,而且带有动画的终端清除工具。
|
||
|
||
## 资源工具
|
||
|
||
#### 1. [Learn Anything](https://learn-anything.xyz/)
|
||
|
||
![Learn Anything](https://pic4.zhimg.com/80/v2-f551e783519187760b057de968a079d3_720w.png?source=d16d100b)
|
||
|
||
用3个关键词概括这款工具:
|
||
|
||
- 组织知识
|
||
- 探索联系
|
||
- 策划学习路径
|
||
|
||
输入并搜索你想要学习的主题或者方向,它就可以给出相关的学习资料已经学习路线,这对于想要学习一门新知识却又不知如何下手的同学很有价值。
|
||
|
||
#### 2. [n8n](https://n8n.io/)
|
||
|
||
![r1cZ1.png](https://pica.zhimg.com/80/v2-85359231a35dfac3e59605382e11d8bf_720w.png)
|
||
|
||
一个强大的工作流程自动化工具。
|
||
|
||
#### 3. [SonarLint](https://marketplace.visualstudio.com/items?itemName=SonarSource.sonarlint-vscode)
|
||
|
||
![rule description](https://picx.zhimg.com/80/v2-799db3e373751e01b419395eb834e8b0_720w.gif?source=d16d100b)
|
||
|
||
SonarLint是一个免费的IDE扩展,它可以让你在编码问题产生之前就解决它们。
|
||
|
||
就像一个拼写检查器一样,SonarLint可以在你写代码的时候突出显示错误和安全漏洞,并提供明确的补救指导,这样你就可以在提交代码之前解决它们。
|
||
|
||
VS Code中的SonarLint插件支持对C、C++、HTML、Java、JavaScript、PHP、Python和TypeScript的分析,可以直接从VS Code Marketplace中安装并使用。
|
||
|
||
#### 4. [gifski](https://gif.ski/)
|
||
|
||
基于pngquant的一款高质量的GIF编码和转换工具。
|
||
|
||
#### 5. [Aspect](https://aspect.app/)
|
||
|
||
从任何网站复制-粘贴元素,能够快速将这些元素设计转换为代码,同步到你的代码库,可以用于快速构建UI。
|
||
|
||
## 技术文章
|
||
|
||
#### 1. [如何在Python中建立一个安全的WebSocket服务器?](https://snyk.io/blog/how-to-build-a-secure-websocket-server-in-python/)
|
||
|
||
通常情况下,当一个网络应用程序需要从外部服务器获得一些东西时,客户端会向该服务器发送一个请求,服务器会做出回应,随后连接会被关闭。
|
||
|
||
假设,一个显示股票价格的网络应用,客户端必须反复向服务器请求更新价格以提供最新的价格。这种方法效率很低,因为它不断地破坏HTTP连接,而且也不太理想,因为存储在数据库中的股票的实时价格可能会改变,而应用程序仍然显示旧价格。
|
||
|
||
然而,通过双向通信,服务器可以在每次信息更新时独立向客户端推送新的股票价格。
|
||
|
||
工程师们设计了WebSocket协议,以实现这种类型的持久性连接,同时避免了与老式方法一样的问题。
|
||
|
||
实现WebSocket的一个流行选择是Socket.IO库。
|
||
|
||
它的主要优势之一是,这个库可以在各种编程语言环境中使用,包括Python。它还为我们在两种环境中提供了更直接和一致的API,而不需要直接使用原始的WebSocket API。
|
||
|
||
此外,该库使我们能够轻松实现安全措施,如跨源资源共享(CORS)、用户认证和有效载荷大小限制。
|
||
|
||
#### 2. [没有IDE该怎么Debug?](https://bastien-antoine.fr/2022/06/debugging-python-programs-without-an-ide/)
|
||
|
||
当编写一个程序时,确保它以应有的方式工作是这个过程的一个关键部分。
|
||
|
||
这就需要我们必须测试自己的代码,只有当所有测试用例都正常通过才可以。
|
||
|
||
当使用IDE时,有很好的工具来做这件事,能够放置断点,观察调用堆栈和本地内容......
|
||
|
||
但是,有时会发现,在有些环境下,就不能使用这些高度集成的IDE的现代工具,这时候,就要考虑,在没有IDE的情况下,该如何Debug。
|
||
|