興趣是最好的老師,HelloGitHub 讓你對(duì)編程感興趣!
簡(jiǎn)介
HelloGitHub 分享 GitHub 上有趣、入門(mén)級(jí)的開(kāi)源項(xiàng)目。
這里有實(shí)戰(zhàn)項(xiàng)目、入門(mén)教程、黑科技、開(kāi)源書(shū)籍、大廠開(kāi)源項(xiàng)目等,涵蓋多種編程語(yǔ)言 Python、Java、Go、C/C++、Swift...讓你在短時(shí)間內(nèi)感受到開(kāi)源的魅力,對(duì)編程產(chǎn)生興趣!
以下為本期內(nèi)容|每個(gè)月 28 號(hào)更新
C 項(xiàng)目
1、toybox:該項(xiàng)目將 200 多個(gè)常用的 Linux 命令行工具,做成一個(gè)可執(zhí)行文件。從而可以讓 Android 這種原本不支持 Linux 命令的系統(tǒng),也得以用上 ls、find、ps 等命令。還可以用于快速構(gòu)建最小的 Linux 環(huán)境
2、the_silver_searcher:比 ack 更快的命令行搜索工具。速度快、功能強(qiáng)大、使用簡(jiǎn)單,支持 Linux、Windows、macOS 操作系統(tǒng),還能夠整合到 Vim 和 Emacs 等編輯器
ack test_blah ~/code(8G)/ 104.66s user 4.82s system 99% cpu 1:50.03 totalag test_blah ~/code(8G)/ 4.67s user 4.58s system 286% cpu 3.227 total復(fù)制代碼
3、WindTerm:支持 SSH/Telnet/Serial/Shell/Sftp 的終端工具。雖然該軟件完全免費(fèi),但部分代碼尚未完全開(kāi)源,對(duì)安全敏感的同學(xué)可以再觀望下
C# 項(xiàng)目
4、wavefunctioncollapse:基于波函數(shù)坍縮 (WFC) 算法,實(shí)現(xiàn)的無(wú)限城市示例。城市里有房子、樓梯、樹(shù)木、連接房屋的通道,你可以在城市中自由移動(dòng)、跳躍、飛行,但不論你怎么移動(dòng)都找不到盡頭,因?yàn)檫@座城市會(huì)無(wú)限延伸
5、NETworkManager:管理和解決網(wǎng)絡(luò)問(wèn)題的工具。它集成了 IP 和端口掃描、WiFi 分析器、跟蹤路由、DNS 查詢等工具
C++ 項(xiàng)目
6、ppsspp:能夠運(yùn)行在 Android 和 PC 上的開(kāi)源 PSP 模擬器。下載地址
7、leocad:用來(lái)創(chuàng)建虛擬樂(lè)高模型的 CAD 工具。適用于 Windows、Linux 和 macOS 系統(tǒng)
CSS 項(xiàng)目
8、csshake:用 CSS 實(shí)現(xiàn)抖動(dòng)效果
Go 項(xiàng)目
9、MangoDB:真正開(kāi)源的 MongoDB 替代品。它底層采用 PostgreSQL 作為存儲(chǔ)引擎,用 Go 語(yǔ)言實(shí)現(xiàn)了 MongoDB 協(xié)議,所以幾乎兼容所有的 MongoDB 庫(kù),遷移起來(lái)毫無(wú)負(fù)擔(dān)。如果你用不到 MongoDB 的高級(jí)功能,還受限于它的開(kāi)源協(xié)議,那么這個(gè)項(xiàng)目可作為 MongoDB 的開(kāi)源替代方案。它才剛剛起步,建議觀望一段時(shí)間或做足測(cè)試再用于生產(chǎn)環(huán)境
10、caddy:用 Go 編寫(xiě)的輕量級(jí) Web 服務(wù)器。它相較于 Apache、Nginx 這些知名 Web 服務(wù)器,獨(dú)特點(diǎn)在于提供了編譯好的可執(zhí)行文件,實(shí)現(xiàn)了真正的開(kāi)箱即用。無(wú)需任何配置即可擁有免費(fèi)的 HTTPS、自動(dòng)把 Markdown 文件轉(zhuǎn)化成 HTML 等人性化的功能。如果是搭建中小型的 Web 服務(wù),它完全夠用而且省時(shí)省心
11、croc:可以讓任意兩臺(tái)計(jì)算機(jī),安全方便地傳輸文件和文件夾的工具。輕松實(shí)現(xiàn)端到端加密的跨平臺(tái)文件傳輸,還支持多文件傳輸、傳輸中斷和恢復(fù)等功能
Java 項(xiàng)目
12、jnativehook:獲取鍵盤(pán)和鼠標(biāo)事件的 Java 庫(kù)。輕松監(jiān)聽(tīng)按鍵、鼠標(biāo)移動(dòng)、點(diǎn)擊等事件
import GlobalScreen;import NativeHookException;import NativeMouseWheelEvent;import NativeMouseWheelListener;// 鼠標(biāo)移動(dòng)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()); }}復(fù)制代碼
13、spider-flow:用流程圖的方式編寫(xiě)爬蟲(chóng)的平臺(tái)。無(wú)需寫(xiě)代碼就可以快速完成一個(gè)簡(jiǎn)單的爬蟲(chóng)
14、greenDAO:高性能的 Android ORM 庫(kù)。擁有體積小、易于使用、支持?jǐn)?shù)據(jù)庫(kù)加密等特點(diǎn),通過(guò)它 Android 開(kāi)發(fā)者可以采用面向?qū)ο蟮姆绞讲僮鲾?shù)據(jù)庫(kù),不需要再手寫(xiě)和拼接 SQL 啦
JavaScript 項(xiàng)目
15、vue-color-avatar:純前端實(shí)現(xiàn)的矢量風(fēng)格頭像生成網(wǎng)站。可以通過(guò)搭配不同的素材,生成個(gè)性化頭像。該項(xiàng)目使用 Vite + Vue3 開(kāi)發(fā),能夠幫助前端初學(xué)者熟悉 Vue3 語(yǔ)法并掌握項(xiàng)目搭建的相關(guān)知識(shí)
16、colorfu:自動(dòng)生成由文字/顏色/圖片/紋理元素組成的壁紙。在線嘗試
17、pm2:Node.js 的進(jìn)程管理工具。它容易上手操作簡(jiǎn)單,可以有效地提高 Node.js 程序運(yùn)行的穩(wěn)定性,支持自動(dòng)重啟、負(fù)載均衡、不停服務(wù)重啟、性能監(jiān)控等功能,多用于生產(chǎn)環(huán)境中管理、監(jiān)控 Node.js 進(jìn)程
18、automa:通過(guò)圖形化界面拖拽功能模塊,實(shí)現(xiàn)瀏覽器自動(dòng)操作的擴(kuò)展工具。輕松實(shí)現(xiàn)自動(dòng)填表、截圖、定時(shí)執(zhí)行等操作。讓瀏覽器自動(dòng)完成預(yù)設(shè)工作流的插件,從而減少重復(fù)性操作提高效率
Python 項(xiàng)目
19、PyWebIO:快速構(gòu)建 Web 應(yīng)用的 Python 工具。通過(guò)該項(xiàng)目你可在不寫(xiě) HTML、CSS、JS 代碼的前提下,僅用 Python 快速完成一個(gè)包含數(shù)據(jù)展示、表單的小型 Web 應(yīng)用頁(yè)面
20、pottery:以 Python 的方式操作 Redis 的庫(kù)。忘記那些 Redis 命令吧,只要你知道如何使用 Python 字典,那么你就會(huì)用這個(gè)庫(kù)操作 Redis
>>> from pottery import RedisList>>> tel = RedisDict({jack: 4098, sape: 4139}, redis=redis, key=tel)>>> tel[guido] = 4127>>> telRedisDict{jack: 4098, sape: 4139, guido: 4127}>>> tel[jack]4098>>> squares = RedisList([1, 4, 9, 16, 25], redis=redis, key=squares)>>> squaresRedisList[1, 4, 9, 16, 25]>>> squares[0]1復(fù)制代碼
21、zulip:完全開(kāi)源的企業(yè)級(jí)即時(shí)通訊項(xiàng)目。后端采用 Python 語(yǔ)言實(shí)現(xiàn)性能足夠強(qiáng)大,功能齊全相當(dāng)于開(kāi)源、免費(fèi)的 Slack,擁有拖拽上傳文件、代碼高亮、Markdown 語(yǔ)法、應(yīng)用整合、容易接入的 API 等功能,還支持 Web、PC、iOS 和 Android 主流平臺(tái),眾多知名企業(yè)都在用,能夠有效地提高團(tuán)隊(duì)溝通和辦公效率。同時(shí)該項(xiàng)目對(duì)新手用戶友好,如果你想加入一個(gè)不錯(cuò)的 Python 開(kāi)源項(xiàng)目,推薦你花時(shí)間研究下它一定會(huì)有所收獲
22、webssh:簡(jiǎn)單的 SSH 連接服務(wù)器的 Python Web 應(yīng)用。該項(xiàng)目后端采用 Tornado Web 框架和 Python SSH 庫(kù) paramiko,前端是 TypeScript 寫(xiě)的命令行前端組件 Xterm.js 實(shí)現(xiàn)。整個(gè)項(xiàng)目簡(jiǎn)單還具有實(shí)用價(jià)值,可作為 Python Web 的實(shí)戰(zhàn)項(xiàng)目學(xué)習(xí)
23、django-debug-toolbar:Django 的調(diào)試工具欄。可顯示當(dāng)前請(qǐng)求和響應(yīng)有關(guān)的各種調(diào)試信息,包括耗時(shí)、SQL、配置、性能等信息
1. 安裝:pip install django-debug-toolbar2. TEMPLATES = [ { "BACKEND": "django.template.backends.django.DjangoTemplates", "APP_DIRS": True, # ... }]3. INSTALLED_APPS = [ # ... "debug_toolbar", "django.contrib.staticfiles", # ...]4. 增加 __debug__ URLimport debug_toolbarfrom django.urls import include, pathurlpatterns = [ # ... path(__debug__/, include(debug_toolbar.urls)),]5. MIDDLEWARE = [ # ... "debug_toolbar.middleware.DebugToolbarMiddleware", # ...]6. INTERNAL_IPS = [ # ... "127.0.0.1", # ...]復(fù)制代碼
Rust 項(xiàng)目
24、hyperfine:命令行基準(zhǔn)測(cè)試工具。可用來(lái)查看和對(duì)比命令的耗時(shí),支持多次運(yùn)行的統(tǒng)計(jì)分析、結(jié)果導(dǎo)出等功能
Swift 項(xiàng)目
25、xcode-dev-cleaner:用于清理各種 Xcode 的緩存數(shù)據(jù),釋放存儲(chǔ)空間。注意是清除 Xcode 緩存數(shù)據(jù),不是卸載 Xcode 哈
其它
26、toml:更易讀和易于維護(hù)的配置文件格式。如果你厭倦了 INI 的局限性、層層嵌套的 JSON 和 YAML 令人心驚膽戰(zhàn)的縮進(jìn)語(yǔ)法,不防給 TOML 一個(gè)機(jī)會(huì),它支持多種數(shù)據(jù)類型、拋棄了縮進(jìn)和嵌套,而且眾多流行編程語(yǔ)言都有對(duì)應(yīng)的庫(kù)。TOML 已經(jīng)足夠成熟,絕對(duì)值得一試。查看文檔
27、waka-readme-stats:自動(dòng)在 GitHub 個(gè)人首頁(yè)展示編程時(shí)長(zhǎng)的工具。該項(xiàng)目通過(guò) WakaTime 記錄用戶在 IDE 的使用時(shí)間,統(tǒng)計(jì)編程時(shí)長(zhǎng)和數(shù)據(jù),然后采用 GitHub Action 自動(dòng)獲取并動(dòng)態(tài)更新到 GitHub 個(gè)人首頁(yè)。輕而易舉地展示自己的編程時(shí)長(zhǎng)
28、PathPlanning:常見(jiàn)的路徑規(guī)劃算法集合。項(xiàng)目包含了 Python 代碼實(shí)現(xiàn)、運(yùn)行過(guò)程動(dòng)畫(huà)以及相關(guān)論文
29、howdy:為 Linux 系統(tǒng)提供人臉識(shí)別解鎖電腦的工具。通過(guò)電腦內(nèi)置的攝像頭和紅外設(shè)備,實(shí)現(xiàn)了類似 Windows Hello? 風(fēng)格的身份認(rèn)證,可用于登陸、鎖屏、sudo 等任何需要輸入密碼的地方
30、The-Open-Book:開(kāi)源的電子水墨屏閱讀設(shè)備。動(dòng)手能力強(qiáng)的同學(xué)可跟著這個(gè)項(xiàng)目,從焊電路板開(kāi)始親手制作出一個(gè)類 Kindle 的 4.2 英寸閱讀設(shè)備
31、fl_chart:Flutter 圖表庫(kù)。它支持折線圖、條形圖、餅圖、散點(diǎn)圖和雷達(dá)圖
開(kāi)源書(shū)籍
32、ugo-compiler-book:《從頭開(kāi)發(fā)一個(gè)迷你 Go 語(yǔ)言》該書(shū)教你從頭實(shí)現(xiàn)迷你 Go 語(yǔ)言,內(nèi)容包含了詞法解析、語(yǔ)法樹(shù)構(gòu)建、函數(shù)閉包、接口、CGO 的實(shí)現(xiàn)等內(nèi)容。在線閱讀
33、archbase:教科書(shū)《計(jì)算機(jī)體系結(jié)構(gòu)基礎(chǔ)》第三版。在線閱讀
34、spring-in-action-v6-translate:《Spring 實(shí)戰(zhàn)第 6 版》中文翻譯。在線閱讀
機(jī)器學(xué)習(xí)
35、best_AI_papers_2021:2021 年必看的人工智能論文列表。該項(xiàng)目不是簡(jiǎn)單的羅列論文,它不僅包含相關(guān)論文的代碼、效果展示,還有深入的文章和講解視頻。通過(guò)學(xué)習(xí)這些前沿的人工智能論文,提前了解 AI 在未來(lái)更多可能性
36、AnimeGANv2:可以將圖片和視頻轉(zhuǎn)換成漫畫(huà)風(fēng)格的工具。采用的是神經(jīng)風(fēng)格遷移+生成對(duì)抗網(wǎng)絡(luò)(GAN)的組合,轉(zhuǎn)換速度快。在線嘗試
最后
如果你在 GitHub 上發(fā)現(xiàn)了有趣的開(kāi)源項(xiàng)目,就分享給大家伙吧。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/125670.html