《HelloGitHub》第 68 期
興趣是最好的老師,HelloGitHub 讓你對編程感興趣!

簡介
HelloGitHub 分享 GitHub 上有趣、入門級的開源項目。
https://github.com/521xueweihan/HelloGitHub
這里有實戰(zhàn)項目、入門教程、黑科技、開源書籍、大廠開源項目等,涵蓋多種編程語言 Python、Java、Go、C/C++、Swift...讓你在短時間內(nèi)感受到開源的魅力,對編程產(chǎn)生興趣!
以下為本期內(nèi)容|每個月 28 號更新
C 項目
1、toybox:該項目將 200 多個常用的 Linux 命令行工具,做成一個可執(zhí)行文件。從而可以讓 Android 這種原本不支持 Linux 命令的系統(tǒng),也得以用上 ls、find、ps 等命令。還可以用于快速構建最小的 Linux 環(huán)境
地址:https://github.com/landley/toybox
2、the_silver_searcher:比 ack 更快的命令行搜索工具。速度快、功能強大、使用簡單,支持 Linux、Windows、macOS 操作系統(tǒng),還能夠整合到 Vim 和 Emacs 等編輯器
ack?test_blah?~/code(8G)/??104.66s?user?4.82s?system?99%?cpu?1:50.03?total
ag?test_blah?~/code(8G)/??4.67s?user?4.58s?system?286%?cpu?3.227?total
地址:https://github.com/ggreer/the_silver_searcher
3、WindTerm:支持 SSH/Telnet/Serial/Shell/Sftp 的終端工具。雖然該軟件完全免費,但部分代碼尚未完全開源,對安全敏感的同學可以再觀望下

地址:https://github.com/kingToolbox/WindTerm
C# 項目
4、wavefunctioncollapse:基于波函數(shù)坍縮 (WFC) 算法,實現(xiàn)的無限城市示例。城市里有房子、樓梯、樹木、連接房屋的通道,你可以在城市中自由移動、跳躍、飛行,但不論你怎么移動都找不到盡頭,因為這座城市會無限延伸

地址:https://github.com/marian42/wavefunctioncollapse
5、NETworkManager:管理和解決網(wǎng)絡問題的工具。它集成了 IP 和端口掃描、WiFi 分析器、跟蹤路由、DNS 查詢等工具

地址:https://github.com/BornToBeRoot/NETworkManager
C++ 項目
6、ppsspp:能夠運行在 Android 和 PC 上的開源 PSP 模擬器

地址:https://github.com/hrydgard/ppsspp
7、leocad:用來創(chuàng)建虛擬樂高模型的 CAD 工具。適用于 Windows、Linux 和 macOS 系統(tǒng)

地址:https://github.com/leozide/leocad
CSS 項目
8、csshake:用 CSS 實現(xiàn)抖動效果

地址:https://github.com/elrumordelaluz/csshake
Go 項目
9、MangoDB:真正開源的 MongoDB 替代品。它底層采用 PostgreSQL 作為存儲引擎,用 Go 語言實現(xiàn)了 MongoDB 協(xié)議,所以幾乎兼容所有的 MongoDB 庫,遷移起來無負擔。如果你用不到 MongoDB 的高級功能,還受限于它的開源協(xié)議,那么這個項目可作為 MongoDB 的開源替代方案。它才剛剛起步,建議觀望一段時間或做足測試再用于生產(chǎn)環(huán)境

地址:https://github.com/MangoDB-io/MangoDB
10、caddy:用 Go 編寫的輕量級 Web 服務器。它相較于 Apache、Nginx 這些知名 Web 服務器,獨特點在于提供了編譯好的可執(zhí)行文件,實現(xiàn)了真正的開箱即用。無需任何配置即可擁有免費的 HTTPS、自動把 Markdown 文件轉(zhuǎn)化成 HTML 等人性化的功能。如果是搭建中小型的 Web 服務,它完全夠用而且省時省心

地址:https://github.com/caddyserver/caddy
11、croc:可以讓任意兩臺計算機,安全方便地傳輸文件和文件夾的工具。輕松實現(xiàn)端到端加密的跨平臺文件傳輸,還支持多文件傳輸、傳輸中斷和恢復等功能

地址:https://github.com/schollz/croc
Java 項目
12、jnativehook:獲取鍵盤和鼠標事件的 Java 庫。輕松監(jiān)聽按鍵、鼠標移動、點擊等事件
import?GlobalScreen;
import?NativeHookException;
import?NativeMouseWheelEvent;
import?NativeMouseWheelListener;
//?鼠標移動
public?class?GlobalMouseWheelListenerExample?implements?NativeMouseWheelListener?{
?public?void?nativeMouseWheelMoved(NativeMouseWheelEvent?e)?{
??System.out.println("Mosue?Wheel?Moved:?"?+?e.getWheelRotation());
?}
?public?static?void?main(String[]?args)?{
??try?{
???GlobalScreen.registerNativeHook();
??}
??catch?(NativeHookException?ex)?{
???System.err.println("There?was?a?problem?registering?the?native?hook.");
???System.err.println(ex.getMessage());
???ex.printStackTrace();
???System.exit(1);
??}
??GlobalScreen.addNativeMouseWheelListener(new?GlobalMouseWheelListenerExample());
?}
}
地址:https://github.com/kwhat/jnativehook
13、spider-flow:用流程圖的方式編寫爬蟲的平臺。無需寫代碼就可以快速完成一個簡單的爬蟲

地址:https://github.com/ssssssss-team/spider-flow
14、greenDAO:高性能的 Android ORM 庫。擁有體積小、易于使用、支持數(shù)據(jù)庫加密等特點,通過它 Android 開發(fā)者可以采用面向?qū)ο蟮姆绞讲僮鲾?shù)據(jù)庫,不需要再手寫和拼接 SQL 啦

地址:https://github.com/greenrobot/greenDAO
JavaScript 項目
15、vue-color-avatar:純前端實現(xiàn)的矢量風格頭像生成網(wǎng)站??梢酝ㄟ^搭配不同的素材,生成個性化頭像。該項目使用 Vite + Vue3 開發(fā),能夠幫助前端初學者熟悉 Vue3 語法并掌握項目搭建的相關知識

地址:https://github.com/Codennnn/vue-color-avatar
16、colorfu:自動生成由文字/顏色/圖片/紋理元素組成的壁紙

地址:https://github.com/pearmini/colorfu
17、pm2:Node.js 的進程管理工具。它容易上手操作簡單,可以有效地提高 Node.js 程序運行的穩(wěn)定性,支持自動重啟、負載均衡、不停服務重啟、性能監(jiān)控等功能,多用于生產(chǎn)環(huán)境中管理、監(jiān)控 Node.js 進程

地址:https://github.com/Unitech/pm2
18、automa:通過圖形化界面拖拽功能模塊,實現(xiàn)瀏覽器自動操作的擴展工具。輕松實現(xiàn)自動填表、截圖、定時執(zhí)行等操作。讓瀏覽器自動完成預設工作流的插件,從而減少重復性操作提高效率

地址:https://github.com/kholid060/automa
Python 項目
19、PyWebIO:快速構建 Web 應用的 Python 工具。通過該項目你可在不寫 HTML、CSS、JS 代碼的前提下,僅用 Python 快速完成一個包含數(shù)據(jù)展示、表單的小型 Web 應用頁面

地址:https://github.com/pywebio/PyWebIO
20、pottery:以 Python 的方式操作 Redis 的庫。忘記那些 Redis 命令吧,只要你知道如何使用 Python 字典,那么你就會用這個庫操作 Redis
>>>?from?pottery?import?RedisList
>>>?tel?=?RedisDict({'jack':?4098,?'sape':?4139},?redis=redis,?key='tel')
>>>?tel['guido']?=?4127
>>>?tel
RedisDict{'jack':?4098,?'sape':?4139,?'guido':?4127}
>>>?tel['jack']
4098
>>>?squares?=?RedisList([1,?4,?9,?16,?25],?redis=redis,?key='squares')
>>>?squares
RedisList[1,?4,?9,?16,?25]
>>>?squares[0]
1
地址:https://github.com/brainix/pottery
21、zulip:完全開源的企業(yè)級即時通訊項目。后端采用 Python 語言實現(xiàn)性能足夠強大,功能齊全相當于開源、免費的 Slack,擁有拖拽上傳文件、代碼高亮、Markdown 語法、應用整合、容易接入的 API 等功能,還支持 Web、PC、iOS 和 Android 主流平臺,眾多知名企業(yè)都在用,能夠有效地提高團隊溝通和辦公效率。同時該項目對新手用戶友好,如果你想加入一個不錯的 Python 開源項目,推薦你花時間研究下它一定會有所收獲

地址:https://github.com/zulip/zulip
22、webssh:簡單的 SSH 連接服務器的 Python Web 應用。該項目后端采用 Tornado Web 框架和 Python SSH 庫 paramiko,前端是 TypeScript 寫的命令行前端組件 Xterm.js 實現(xiàn)。整個項目簡單還具有實用價值,可作為 Python Web 的實戰(zhàn)項目學習

地址:https://github.com/huashengdun/webssh
23、django-debug-toolbar:Django 的調(diào)試工具欄??娠@示當前請求和響應有關的各種調(diào)試信息,包括耗時、SQL、配置、性能等信息
1. 安裝:pip install django-debug-toolbar
2.?TEMPLATES?=?[
????{
????????"BACKEND":?"django.template.backends.django.DjangoTemplates",
????????"APP_DIRS":?True,
????????#?...
????}
]
3.?INSTALLED_APPS?=?[
????#?...
????"debug_toolbar",
????"django.contrib.staticfiles",
????#?...
]
4.?增加?__debug__?URL
import?debug_toolbar
from?django.urls?import?include,?path
urlpatterns?=?[
????#?...
????path('__debug__/',?include(debug_toolbar.urls)),
]
5.?MIDDLEWARE?=?[
????#?...
????"debug_toolbar.middleware.DebugToolbarMiddleware",
????#?...
]
6.?INTERNAL_IPS?=?[
????#?...
????"127.0.0.1",
????#?...
]

地址:https://github.com/jazzband/django-debug-toolbar
Rust 項目
24、hyperfine:命令行基準測試工具??捎脕聿榭春蛯Ρ让畹暮臅r,支持多次運行的統(tǒng)計分析、結果導出等功能

地址:https://github.com/sharkdp/hyperfine
Swift 項目
25、xcode-dev-cleaner:用于清理各種 Xcode 的緩存數(shù)據(jù),釋放存儲空間。注意是清除 Xcode 緩存數(shù)據(jù),不是卸載 Xcode 哈

地址:https://github.com/vashpan/xcode-dev-cleaner
其它
26、toml:更易讀和易于維護的配置文件格式。如果你厭倦了 INI 的局限性、層層嵌套的 JSON 和 YAML 令人心驚膽戰(zhàn)的縮進語法,不防給 TOML 一個機會,它支持多種數(shù)據(jù)類型、拋棄了縮進和嵌套,而且眾多流行編程語言都有對應的庫。TOML 已經(jīng)足夠成熟,絕對值得一試

地址:https://github.com/toml-lang/toml
27、waka-readme-stats:自動在 GitHub 個人首頁展示編程時長的工具。該項目通過 WakaTime 記錄用戶在 IDE 的使用時間,統(tǒng)計編程時長和數(shù)據(jù),然后采用 GitHub Action 自動獲取并動態(tài)更新到 GitHub 個人首頁。輕而易舉地展示自己的編程時長

地址:https://github.com/anmol098/waka-readme-stats
28、PathPlanning:常見的路徑規(guī)劃算法集合。項目包含了 Python 代碼實現(xiàn)、運行過程動畫以及相關論文

地址:https://github.com/zhm-real/PathPlanning
29、howdy:為 Linux 系統(tǒng)提供人臉識別解鎖電腦的工具。通過電腦內(nèi)置的攝像頭和紅外設備,實現(xiàn)了類似 Windows Hello? 風格的身份認證,可用于登陸、鎖屏、sudo 等任何需要輸入密碼的地方

地址:https://github.com/boltgolt/howdy
30、The-Open-Book:開源的電子水墨屏閱讀設備。動手能力強的同學可跟著這個項目,從焊電路板開始親手制作出一個類 Kindle 的 4.2 英寸閱讀設備

地址:https://github.com/joeycastillo/The-Open-Book
31、fl_chart:Flutter 圖表庫。它支持折線圖、條形圖、餅圖、散點圖和雷達圖

地址:https://github.com/imaNNeoFighT/fl_chart
開源書籍
32、ugo-compiler-book:《從頭開發(fā)一個迷你 Go 語言》該書教你從頭實現(xiàn)迷你 Go 語言,內(nèi)容包含了詞法解析、語法樹構建、函數(shù)閉包、接口、CGO 的實現(xiàn)等內(nèi)容
地址:https://github.com/chai2010/ugo-compiler-book
33、archbase:教科書《計算機體系結構基礎》第三版
地址:https://github.com/foxsen/archbase
34、spring-in-action-v6-translate:《Spring 實戰(zhàn)第 6 版》中文翻譯
地址:https://github.com/LeonLi0102/spring-in-action-v6-translate
機器學習
35、best_AI_papers_2021:2021 年必看的人工智能論文列表。該項目不是簡單的羅列論文,它不僅包含相關論文的代碼、效果展示,還有深入的文章和講解視頻。通過學習這些前沿的人工智能論文,提前了解 AI 在未來更多可能性

地址:https://github.com/louisfb01/best_AI_papers_2021
36、AnimeGANv2:可以將圖片和視頻轉(zhuǎn)換成漫畫風格的工具。采用的是神經(jīng)風格遷移+生成對抗網(wǎng)絡(GAN)的組合,轉(zhuǎn)換速度快

地址:https://github.com/TachibanaYoshino/AnimeGANv2
最后
感謝您的閱讀,如果覺得內(nèi)容還不錯的話求贊、求分享、求打賞,您的每一次支持都將讓 HelloGitHub 變得更好!??
找開源項目就用:?HelloGitHub?小程序。
以上就是第?68?期的全部內(nèi)容,下個月?28?號我們不見不散!
?? 關注「HelloGitHub」第一時間收到更新??
