兴趣是最好的老师, 让您对编程感兴趣!

简介
分享 GitHub 有趣的入门级开源项目。
https://github.com/521xueweihan/HelloGitHub
有实战项目、入门教程、黑科技、开源书籍、大厂开源项目等,涵盖多种编程语言 Python、Java、Go、C/C 、Swift...让你在短时间内感受到开源的魅力,对编程感兴趣!
|每个月 号更新
C 项目
1、h2o:高性能 HTTP 服务器。与传统相比 Web 充分利用服务器 HTTP/2 资源加载优先级和服务器推送技术,静态文件性能明显优于 Nginx 服务器
地址:https://github.com/h2o/h2o
2、chibicc:迷你 C 编译器。虽然只是玩具级编译器,但大部分都实现了 C11 特点,能成功编译几十万行 C 包括语言项目 Git、SQLite 等待知名项目。此外,项目结构清晰,每次提交都精心设计,代码易于理解。对编译感兴趣的学生可以从第一次提交开始学习
地址:https://github.com/rui314/chibicc
C# 项目
3、CliWrap:执行外部命令 C# 库。支持启动过程、输入/输出重定向、等待完成、管道等功能 Windows、Linux、macOS 操作系统
usingCliWrap; varresult=awaitCli.Wrap("path/to/exe") .WithArguments("--foobar") .WithWorkingDirectory("work/dir/path") .ExecuteAsync(); //输出包括: //--result.ExitCode(int) //--result.StartTime(开始时间) //--result.ExitTime(结束时间) //--result.RunTime(执行命令耗时)
地址:https://github.com/Tyrrrz/CliWrap
4、DreamScene2:小巧的 Windows 动态桌面工具。 Windows10/11 系统支持视频和网页动画播放
地址:https://github.com/he55/DreamScene2
C 项目
5、vcpkg:微软开源的 C/C 安装管理工具。 C/C 依赖的命令行工具适用于 Windows、Linux 和 macOS 操作系统
地址:https://github.com/microsoft/vcpkg
6、finalcut:用于创建基于文本的用户界面 C 图书馆。除了支持鼠标操作和处理多个文本窗口外,它还提供常见的对话框、按钮、复选框、单选按钮、输入行、列表框、状态栏等控件
地址:https://github.com/gansm/finalcut
CSS 项目
7、magic:炫酷的 CSS3 动画库
地址:https://github.com/miniMAC/magic
Go 项目
8、nali:离线查询 IP 地理信息和 CDN 服务提供商的命令行工具
$nali1.2.3.4 1.2.3.4[澳大利亚APNICDebogon-prefix网络]
地址:https://github.com/zu1k/nali
9、revive:快速易扩展 Go 代码检查工具 golint 更快更灵活,深受广大影响 Go 开发者的爱
地址:https://github.com/mgechev/revive
10、go-chart:Go 原图表库。支持折线图、柱状图、饼图等。
packagemain import( "os" "github.com/wcharczuk/go-chart/v2" ) funcmain(){ graph:=chart.Chart{ Series:[]chart.Series{ chart.ContinuousSeries{ XValues:[]float64{1.0,2.0,3.0,4.0,5.0}, YValues:[]float64{1.0,2.0,3.0,4.0,5.0}, }, }, } f,_:=os.Create("output.png") deferf.Close() graph.Render(chart.PNG,f) }
地址:https://github.com/wcharczuk/go-chart
11、filestash:在线文件管理工具。在浏览器上管理 FTP、SFTP、Git、S3、MySQL、Dropbox 支持文件编辑、图片管理、视频转码等服务中的文件和数据Office 文档、全文搜索等功能
地址:https://github.com/mickael-kerjean/filestash
12、vitess:用于横向扩展 MySQL 基于数据库的集群系统。 Go 语言的并发特性很容易处理数千个连接。根据配置规则,自动优化影响数据库性能的查询,支持主故障转移和备份的自动处理
地址:https://github.com/vitessio/vitess
Java 项目
13、thingsboard:完全开源的物联网 IoT 平台。采用行业标准物联网协议 MQTT、CoAP 和 HTTP 连接设备,支持数据收集、处理、可视化和设备管理。通过该项目,物联网平台的建设可以快速实现,成为电信、智能城市、环境监测等行业的首选
地址:https://github.com/thingsboard/thingsboard
14、from-java-to-kotlin:展示 Java 和 Kotlin 语法差异项目。 Java 基础程序员可以快速启动 Kotlin
地址:https://github.com/MindorksOpenSource/from-java-to-kotlin
15、graal:Oracle 开源高性能跨语言虚拟机。用它启动的程序占用更低的内存和更短的启动时间,并支持多种编程语言的运行,如 Python、Ruby、C/C 、Java 。通过 Polyglot API 更是打破了不同语言之间的壁垒,实现多语言混合编程。目前部分功能还处于实验阶段,生产环境慎用
import org.graalvm.polyglot.*;
class Polyglot {
public static void main(String[] args) {
Context context = Context.newBuilder().allowIO(true).build();
Value array = context.eval("python", "[1,2,42,4]");
int result = array.getArrayElement(2).asInt();
System.out.println(result);
}
}
/**
* 运行结果
* 执行:javac Polyglot.java
* 输出:42
*/
地址:https://github.com/oracle/graal
16、glide:流畅快速的 Android 图片加载库。为了实现快速加载和展示图像,Glide 会自动缩减像素采样、缓存、积极重用减少垃圾回收。使用上一行代码就可以实现图片加载和展示,同时网络请求部分可灵活接入任何库
Glide.with(fragment).load(url).into(imageView);
地址:https://github.com/bumptech/glide
17、jjwt:适用于 Java 和 Android 的 JWT(JSON Web Token)库
import io.jsonwebtoken.Jwts;
import io.jsonwebtoken.SignatureAlgorithm;
import io.jsonwebtoken.security.Keys;
import java.security.Key;
Key key = Keys.secretKeyFor(SignatureAlgorithm.HS256);
String jws = Jwts.builder().setSubject("HelloGitHub").signWith(key).compact();
// 得到 JWS 字符串
地址:https://github.com/jwtk/jjwt
JavaScript 项目
18、handle:汉字版 Wordle 游戏
地址:https://github.com/antfu/handle
19、noclip:电子游戏关卡的数字博物馆。该项目包含了很多游戏的场景模型,可在线自由浏览
地址:https://github.com/magcius/noclip.website
20、ts-node:可直接在 Node.js 上执行 TypeScript 代码的库。通过 JIT 方式将 TypeScript 代码转换成 JavaScript,实现不需要预编译即可在 Node.js 上运行 TypeScript 代码
地址:https://github.com/TypeStrong/ts-node
21、summernote:基于 jQuery 的编辑器库。可用来创建所见即所得(WYSIWYG)编辑器,支持 Bootstrap 3、4 和 5
地址:https://github.com/summernote/summernote
22、yn:面向程序员的本地 Markdown 笔记工具。一款适合程序员的笔记工具,拥有和其它工具不一样的体验
技术笔记:可直接在文档中运行代码块(默认支持 JS 代码,其它语言需配置)
制作辅助工具:可在文档中嵌入 HTML 组件来制作辅助工具
画图和图表:支持嵌入多种图形、思维导图、Plantunl、Drawio、Mermaid 、ECharts
工作日报:支持任务代办列表,使用“宏替换”功能可以方便地生成日报周报
地址:https://github.com/purocean/yn
Kotlin 项目
23、RocketXPlugin:加速 Android APK 编译的插件。它会自动识别未改动模块并在编译流程中替换为 AAR,最后只编译改动过的模块,从而实现加速的效果
// app module 的 build.gradle 加入
apply plugin: 'com.rocketx'
// 在根目录的 build.gradle 加入
buildscript {
dependencies {
classpath 'io.github.trycatchx:rocketx:1.0.17'
}
}
依赖 AS 插件 android studio setting->plugins-> marketplace 搜索 RocketX 安装
地址:https://github.com/trycatchx/RocketXPlugin
PHP 项目
24、codefever:由蒲公英团队开源的代码托管平台。界面清爽后端采用 PHP 编写,支持 Docker 一键部署
❤️ 完整开源:毫无保留的完整开源,无任何编译或加密代码
⌨️ 代码对比:支持提交代码的不同版本支持高亮显示对比
🙅🏻♀️ 分支保护:分支保护功能让代码提交安全可控,代码 Review 更容易清晰
👥 多人协作:支持多人团队协作,并可以设置每个成员的角色和权限
🔌 Webhook:支持 Webhook 功能,可轻松和其它系统进行集成
地址:https://github.com/PGYER/codefever
25、PrestaShop:PHP 写的开源电商平台。功能齐全、部署方便、适配移动端。虽然前端支持高度自定义,但是现成的前端模版需要付费
地址:https://github.com/PrestaShop/PrestaShop
Python 项目
26、Python:用 Python 实现所有算法。该项目是用 Python 语言实现各种算法的集合,主要用于教育和学习。包括搜索、排序、数据结构、机器学习、密码、神经网络等方面
地址:https://github.com/TheAlgorithms/Python
27、drf-yasg:为 Django Rest Framework 接口自动生成 Swagger 接口文档的库
地址:https://github.com/axnsan12/drf-yasg
28、tstock:在命令行看股票走势的工具
地址:https://github.com/Gbox4/tstock
29、python-mini-projects:一个简单的 Python 迷你脚本集合。虽然代码简单但其中不乏实用的 Python 脚本,比如图片添加水印、批量下载图片、发送电子邮件、定时截屏等
地址:https://github.com/Python-World/python-mini-projects
Rust 项目
30、tui-rs:用来构建丰富的终端用户界面的库
地址:https://github.com/fdehau/tui-rs
Swift 项目
31、vapor:流行的 Swift 语言 Web 框架。核心框架基于非阻塞事件驱动库 SwiftNIO 构建,除此之外还提供了 ORM、模版引擎、用户身份验证等模块,可用来快速创建网站、接口等服务
import Vapor
let app = try Application(.detect())
defer { app.shutdown() }
app.get("hello") { req in
return "Hello, world."
}
try app.run()
地址:https://github.com/vapor/vapor
32、DevUtils-app:macOS 上的开发者实用工具箱。单机应用无需联网,内含开发者开发时经常用到的 30 多种工具,比如:URL 解码、JSON 格式化、正则匹配、时间戳转化等,而且还会根据剪贴板的内容,自动推荐对应的处理工具,实用且高效
地址:https://github.com/DevUtilsApp/DevUtils-app
其它
33、svg-path-editor:在线 SVG 编辑器
地址:https://github.com/Yqnn/svg-path-editor
34、Arduino:开源电子平台,可用来制作嵌入式项目。Arduino 提供的电路板安装简单、价格便宜,而且电路图完全开源。官方还提供了配套的开发工具,加上交互式的开发模式使得上手变得极为简单。软硬件的完全开源让开发者社区十分活跃,为社区提供了丰富的教程、实战项目、三方资源。如果你想动手做个机器人,就从 Arduino 开始吧!
地址:https://github.com/arduino/Arduino
35、macos-web:在线体验 macOS 系统。该项目使用 Svelte 复刻了 macOS 操作系统的部分操作体验,虽然已实现的功能较少,但更新积极未来可期
地址:https://github.com/PuruVJ/macos-web
36、resume:简历模板。不需要懂 LaTeX 语法就可以用,适合用来做一页纸简历
地址:https://github.com/billryan/resume
37、teslamate:自建特斯拉的日志平台。该项目可以将车主的特斯拉行驶数据收集、存储、展示,而且方便地支持 Docker 部署
地址:https://github.com/adriankumpf/teslamate
38、HowToCook:程序员做饭指南。一份极其详尽的菜谱,里面没有模糊的量词和看不懂的操作,菜品从主食到甜品应有尽有
地址:https://github.com/Anduin2017/HowToCook
39、db-tutorial:一份关于数据库的教程。内容涵盖了 MySQL、Redis、ES、MongoDB 从入门到面试等多方面的知识
地址:https://github.com/dunwu/db-tutorial
40、pushdeer:无 APP 推送服务。该项目可以实现不安装庞大的应用,就可以收到自定义的及时推送、告警和通知。还可以选择自行搭建服务(免费)或使用已有的在线服务(收费),支持快应用、iOS、macOS、Android 等客户端
地址:https://github.com/easychen/pushdeer
机器学习
41、ColossalAI:高效的分布式人工智能训练系统。它能帮助用户在提升人工智能训练效率的同时降低训练成本,从而适应快速迭代的算法和模型,将 AI 大模型以低成本便捷推广到更多应用场景
地址:https://github.com/hpcaitech/ColossalAI
最后
感谢您的阅读!看完还不过瘾?
找开源项目: HelloGitHub 小程序
开源项目安装或运行遇到问题,就看这篇文章
以上就是本期的全部内容,如果觉得本期内容还不错的话 ,您的支持让 HelloGitHub 变得更好!❤️