¡ El interés es el mejor maestro, y HelloGitHub te hace interesarte en la programación!
Introducción
HelloGitHub comparte interesantes proyectos de código abierto de nivel de entrada en GitHub.
Hay proyectos prácticos, tutoriales introductorios, tecnología negra, libros de código abierto, proyectos de código abierto de grandes fábricas, etc., que abarcan una variedad de lenguajes de programación Python, Java, Go, C/C++, Swift... Déjate sentir el encanto del código abierto en poco tiempo, ¡interésate por la programación!
El siguiente es el contenido de este número|Actualizado el 28 de cada mes
elemento C
1. hashcat : una poderosa herramienta de recuperación de contraseñas. Velocidad de craqueo súper rápida Admite múltiples algoritmos para sistemas operativos Linux, macOS y Windows
安装:brew install hashcat
常用参数:
-a 指定破解模式:“-a 0”字典攻击,“-a 1” 组合攻击;“-a 3”掩码攻击
-m 指定要破解的 hash 类型:默认为 MD5
--force 忽略破解过程中的警告
常用破解模式:
0:Straight(字典破解)
1:Combination(组合破解)
3:Brute-force(掩码暴力破解)
6:Hybrid Wordlist + Mask(字典+掩码破解)
7:Hybrid Mask + Wordlist(掩码+字典破解)
常用掩码设置:
l:纯小写字母 abcdefghijklmnopqrstuvwxyz
u:纯大写字母 ABCDEFGHIJKLMNOPQRSTUVWXYZ
d:纯数字 0123456789
举例:破解 8 位数字密码
hashcat -a 3 -m 0 --force 0D7002A70CCDE8BF4BA2A4A5572A85E9(密码md5字符串) ?l?l?l?l?l?l?l?l?l?l?l(11 位密码的掩码)
复制代码
2. reptyr : una utilidad que puede migrar programas que se ejecutan en el antiguo terminal a la nueva ventana del terminal
proyecto c#
3. Monitorian : una herramienta de escritorio de Windows para ajustar fácilmente el brillo de varios monitores. La interfaz de operación es compatible con chino, y la pantalla debe encender DDC/CI cuando se usa
4. PluginCore : un marco de complemento ligero para ASP.NET Core. Interfaz web de administración de complementos incorporada lista para usar
public void ConfigureServices(IServiceCollection services)
{
// ...
// 1. Add PluginCore
services.AddPluginCore();
}
public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{
// ...
// 2. Use PluginCore
app.UsePluginCore();
}
复制代码
proyecto C++
5. cocoyaxi : una biblioteca que implementa Go goroutine-like en C++. Implementa eventos de sincronización de rutinas, bloqueos de rutinas, grupos de rutinas, canales y grupos de espera, con menos uso de memoria. Los 10 millones de rutinas medidas ocupan 2,8 G de memoria.
#include "co/co.h"
DEF_main(argc, argv) {
co::Chan<int> ch;
go([ch]() { /* capture by value, rather than reference */
ch << 7;
});
int v = 0;
ch >> v;
LOG << "v: " << v;
return 0;
}
复制代码
proyecto CSS
6、log:浏览器 console.log 风格的 CSS 库。查看效果
Go 项目
7、hh-lol-prophet:英雄联盟对局先知工具。免费合法不封号,原理是基于 LOL 客户端接口获取用户数据,实现开局前对玩家信息分析和打分
8、gota:Go 语言的数据处理库。该库提供了类似 Python 语言 Pandas 库的功能,以及 Series 和 DataFrames 的数据结构,支持用列的方式高效地处理数据
type User struct {
Name string
Age int
Accuracy float64
}
users := []User{
{"Aram", 17, 0.2},
{"Juan", 18, 0.8},
{"Ana", 22, 0.5},
}
df := dataframe.LoadStructs(users)
fmt.Println(df)
// Output:
// [3x3] DataFrame
//
// Name Age Accuracy
// 0: Aram 17 0.200000
// 1: Juan 18 0.800000
// 2: Ana 22 0.500000
// <string> <int> <float>
复制代码
9、illustrated-tls:图解 TLS 连接。用在线交互的方式讲解 TLS 的全过程,从建立 TLS 1.2 客户端发送 ping 再到接收 pong,详细到每一个字节。在线尝试
10、gse:Go 的高性能多语言分词库。它是结巴分词的 Go 语言实现,支持中文和接入 ES 等功能
text = "《复仇者联盟3:无限战争》是全片使用IMAX摄影机拍摄制作的的科幻片."
// use DAG and HMM
hmm := seg.Cut(text, true)
fmt.Println("cut use hmm: ", hmm)
// cut use hmm: [《复仇者联盟3:无限战争》 是 全片 使用 imax 摄影机 拍摄 制作 的 的 科幻片 .]
复制代码
Java 项目
11、LSPosed:运行于 Android 操作系统的钩子框架。支持 Android 8-11 系统,能够拦截几乎所有 Java 函数的调用,从而可被用来修改 Android 系统和软件的功能
12、supertokens-core:开源的身份验证方案。为你的应用轻松增加登录、会话管理等功能,支持自行搭建服务。可用作 Auth0 的开源替代品
JavaScript 项目
13、charts:简单、零依赖、响应式的 SVG 图表库
const data = {
labels: ["12am-3am", "3am-6pm", "6am-9am", "9am-12am",
"12pm-3pm", "3pm-6pm", "6pm-9pm", "9am-12am"
],
datasets: [
{
name: "Some Data", chartType: "bar",
values: [25, 40, 30, 35, 8, 52, 17, -4]
},
...
]}
const chart = new frappe.Chart("#chart",
{ // or a DOM element,
// new Chart() in case of ES6 module with above usage
title: "My Awesome Chart",
data: data,
type: 'axis-mixed', // or 'bar', 'line', 'scatter', 'pie', 'percentage'
height: 250,
colors: ['#7cd6fd', '#743ee2']
})
复制代码
14、lax.js:用于滚动时创建平滑和好看动画的库。简单轻量仅 4KB 大小,但功能齐全且灵活
<!-- JS -->
<script>
window.onload = function () {
lax.init()
// Add a driver that we use to control our animations
lax.addDriver('scrollY', function () {
return window.scrollY
})
// Add animation bindings to elements
lax.addElements('.selector', {
scrollY: {
translateX: [
["elInY", "elCenterY", "elOutY"],
[0, 'screenWidth/2', 'screenWidth'],
]
}
})
}
</script>
<!-- HTML -->
<div class="selector">Hello</div>
复制代码
15、chameleon:一端所见即多端所见。适应不同环境的跨端整体解决方案,支持 Web、小程序、快应用 等平台
16、reveal.js:一款 HTML 演示框架。让你摆脱传统死板的 PPT 制作方法,可以方便地使用 HTML、Markdown 语言制作 PPT
17、tinykeys:极小的键盘事件监听库
import tinykeys from "tinykeys"
tinykeys(window, {
"Shift+D": () => {
alert("The 'Shift' and 'd' keys were pressed at the same time")
},
"y e e t": () => {
alert("The keys 'y', 'e', 'e', and 't' were pressed in order")
},
"$mod+KeyD": () => {
alert("Either 'Control+d' or 'Meta+d' were pressed")
},
})
复制代码
Kotlin 项目
18、compose-tetris:基于 Jetpack Compose 的俄罗斯方块游戏
Objective-C 项目
19、HBDNavigationBar:自定义 UINavigationBar 的组件,用于各种状态之间平滑切换
Python 项目
20、saleor:用 Python 开发的电商平台。采用 Django+GraphQL API+React 构建,功能丰富支持移动端、订单、商品、用户管理等。在线体验
21、pokete:运行在终端里的口袋妖怪类游戏。虽然游戏图像采用简单的 ASCII 码构建,但商店、小精灵、对战等功能一应俱全
运行方法:
# pip install scrap_engine
$ git clone https://github.com/lxgr-linux/pokete.git
$ ./pokete/pokete.py
复制代码
22、tiptop:炫酷的命令行系统监控工具
安装:pip install tiptop
运行:tiptop
复制代码
23、rembg:简单实用的删除图像背景/抠图工具
from rembg import remove
from PIL import Image
input_path = 'input.png'
output_path = 'output.png'
input = Image.open(input_path)
output = remove(input)
output.save(output_path)
复制代码
24、textdistance:计算文本距离的常用算法库。包含计算文本相似度、多样性、编辑距离、压缩等多种算法,所有算法均采用 Python 实现,容易理解调用方便
import textdistance
textdistance.hamming.normalized_similarity('test', 'text')
# 相似度为 0.75
复制代码
Swift 项目
25、OnlySwitch:免费开源的 macOS 状态栏一键设置工具。可以轻松对系统功能进行设置,如隐藏桌面图标、清理 Xcode 缓存、一键隐藏刘海儿、进入夜览模式等数十种功能
其它
26、english-words:大型英语单词文本。它是基于 WordNet 英语词汇数据库整理的文本文件,可用于英语自动提示、自动搜索等功能
27、design-patterns-for-humans:人人都能看懂的设计模式教程。中文
28、Learn-Vim:学习 Vim 的指南。该教程不是“大而全的百科全书”,它着重介绍了 Vim 中最常用的功能,让你可以快速熟悉和使用 Vim。中文
29、electerm:一款支持 SSH/SFTP 的终端工具。支持中文和 Windows、Linux、macOS 操作系统
30、ElectronBot:自制桌面级小机器人。它具备 USB 通信显示画面功能以及 6 个自由度,支持手势识别和人体关键点检测。这里有配套的全部开发资料和 SDK,让你也可以制作出一个这样有趣的机器人
31、blog_os:用 Rust 从零开发一个操作系统的教程。保姆级教程!从空文件夹开始,一步步搭建开发环境,通过原理描述、代码示例讲解操作系统背后的原理。硬要说缺点的话就是教程是英文的,但是配上代码示例读起来不是很费劲。中文
开源书籍
32、Deep-Learning-with-TensorFlow-book:《TensorFlow 深度学习》
33、microfrontends:《微前端的那些事儿》 将 Web 应用由单一的单体应用,转变为多个小型前端应用聚合为一的应用
机器学习
34、deep-learning-for-image-processing:深度学习在图像处理方面的教程。该项目配以视频的方式介绍知识点和搭建方法,对应的 PTT 在 course_ppt 目录下
35、awesome-automl-papers:汇集了自动机器学习(AutoML)相关的论文、文章、教程等资源的项目
36、jina:一款易用的神经搜索框架。神经搜索是指用非结构化数据,搜索非结构化数据。Jina 简化了神经搜索系统的搭建流程,使开发者可以快速构建以图搜图、以文字搜图、问答机器人、照片去重、海量标签分类等应用
from docarray import Document, DocumentArray
from jina import Executor, Flow, requests
class PreprocImg(Executor):
@requests
async def foo(self, docs: DocumentArray, **kwargs):
for d in docs:
(
d.load_uri_to_image_tensor(200, 200) # load
.set_image_tensor_normalization() # normalize color
.set_image_tensor_channel_axis(
-1, 0
) # switch color axis for the PyTorch model later
)
复制代码
最后
如果你发现了 GitHub 上有趣的项目,就点击分享给大家伙吧。
以上就是本期的所有内容了,往期内容点击阅读
Gracias por leer. Si crees que el contenido de este número no es malo , dale me gusta y comparte . ¡Tu aliento es la fuerza impulsora para que HelloGitHub avance! ❤️