HelloGitHub Vol.81
HelloGitHub shares interesting, beginner-friendly open-source projects from GitHub, updated every month on the 28th. Discover fun beginner projects, open-source books, practical tutorials, and enterprise-grade projects, helping you quickly experience and become interested in the charm of open source.
一款无需 CA 证书即可抓取 HTTPS 明文的工具。该项目基于 eBPF 技术实现了 TLS 加密的明文捕获,可用于 MySQL 数据库的查询审计、bash 命令捕获等场景,仅支持 Linux 和 Android 系统。

A tool for quickly creating DNS tunnels. This project includes DNS tunnel servers and clients written in C language, which can quickly set up DNS tunnels to transmit IPv4 data, commonly used in scenarios such as bypassing firewalls. Since the DNS port of the firewall is usually open, by disguising the traffic as DNS data packets, it is possible to break through the firewall restrictions.
从零开始写 RISC-V 处理器。该项目是采用 Verilog 语言实现一个单核 32 位的小型 RISC-V 处理器核,包含全部代码和详细的教程。RISC-V 是一种开源指令集架构,它允许任何人设计、制造和销售 RISC-V 芯片和软件。

The Swiss Army Knife for Programmers. This project bundles various small tools that programmers use in their daily development, such as timestamp conversion, various decoding, output beautification, color selectors, etc., which are easy to use and have a high aesthetic appeal.

Getting Started with Unreal Engine 5 GAS Plugin. This project is a tutorial on how to use the GameplayAbilitySystem (GAS) plugin in Unreal Engine 5. Starting from the basics of what GAS is, the author culminates in creating a simple multiplayer shooting game using GAS. If you are interested in Unreal Engine 5 and proficient in C++, this tutorial will definitely be rewarding.

一款免费、没广告的离线地图应用。适用于旅行者、游客、徒步旅行者和骑行者的 Android 和 iOS 离线地图应用,它使用 OpenStreetMap 数据,支持详细的离线地图、骑行路线、语音导航、等高线、海拔剖面、山峰和坡度等功能。

一款“老当益壮”的 OCR 引擎。这个项目最早诞生于 1985 年,几经易主在 2005 年的时候 HP 将其开源。目前,Tesseract 已经成为 OCR 领域 Star 数最多的开源项目,它支持包括中文在内的 100 多种语言,具有精准度高、跨平台等特点。
National University Emblems Font Icon Library. This project includes font icons made from the emblems of over 200 universities in China.

An Extremely Popular Tailwind CSS Component Library. As the most popular Tailwind CSS component library today, it features high aesthetics, cleaner HTML, and in-depth customization capabilities.
<ul class="menu p-3 bg-base-200 rounded-xl"> <li class="menu-title"> <span>Menu Title</span> </li> <li><a>First Menu Item</a></li> <li><a>Second Menu Item</a></li> <li><a>Third Menu Item</a></li> </ul>

An Open-Source Q&A Community. This is a Q&A community written in Go language, which supports features such as point system, asking questions, answering, tagging, etc., and is easy to deploy.

B-Tree Data Structure Implemented in Go Language. An open-source implementation of the B-Tree data structure in Go language by Google. The code is clean and well-commented, making it highly recommended for reading the source code. The B-Tree data structure enables data lookup, sequential access, insertion, and deletion operations to be completed in logarithmic time, and is widely used in databases and file systems.
CLI Code Snippet Management Tool. This project allows for the quick creation and management of code snippets through a command-line interface. It supports features like keyboard shortcuts, search functions, code highlighting, and customizable color schemes, making operation simple and convenient.

Terminal Prompt Customization Tool for Various Shells. This project comes with multiple themes ready to use out of the box and supports various shells such as PowerShell, Bash, Zsh on three operating systems: Windows, Linux, and macOS, automatically completing every command you type.

Go Implementation of Raft Algorithm. Raft is a distributed consistency algorithm (consensus algorithm), commonly used in distributed clusters to maintain consistency among arbitrary nodes during state transitions.
An Online Tool for Creating Reports. This project allows the creation of reports through online drag and drop, supporting features such as report design, graphical reports, and large screen display.

一款开源的 Kafka 管理平台。由开源社区建立和维护的 Kafka Web UI 管理工具,承诺永久免费。可方便地查看 Kafka Brokers、Topics、消息、Consumer 等情况,支持多集群管理、性能监控、访问控制等功能。

LeetCode IDE Plugin for Solving Problems. A plugin that allows you to practice LeetCode algorithm questions directly within your IDE, compatible with IntelliJ IDEA, PyCharm, GoLand, and all other JetBrains IDEs.

一款支持多种格式的 Android 电子书阅读器。适用于 Android 设备的阅读应用,支持最流行的文档格式,包括 PDF、EPUB、MOBI、DjVu、FB2、TXT、RTF、AZW、HTML、CBZ、DOC 等多种电子书格式。

Integrated Token Management Platform. This project assists teams in managing application configurations and sensitive information centrally, preventing the leakage of API TOKENs, passwords, and public keys, among other details. It offers a simple interface, client SDK, command-line tools, and API interfaces for easy central management and integration into existing projects and CI/CD pipelines. Additionally, it supports token scanning, self-hosting, and access control features to prevent leaks during git commits.

Front-end Business Code Utility Library. This project encompasses functions frequently used in front-end development, such as date formatting, browser type detection, and checking if a string is a mobile phone number.
/** * * @desc 获取操作系统类型 * @return {String} */ function getOS() { var userAgent = 'navigator' in window && 'userAgent' in navigator && navigator.userAgent.toLowerCase() || ''; var vendor = 'navigator' in window && 'vendor' in navigator && navigator.vendor.toLowerCase() || ''; var appVersion = 'navigator' in window && 'appVersion' in navigator && navigator.appVersion.toLowerCase() || ''; if (/iphone/i.test(userAgent) || /ipad/i.test(userAgent) || /ipod/i.test(userAgent)) return 'ios' if (/android/i.test(userAgent)) return 'android' if (/win/i.test(appVersion) && /phone/i.test(userAgent)) return 'windowsPhone' if (/mac/i.test(appVersion)) return 'MacOSX' if (/win/i.test(appVersion)) return 'windows' if (/linux/i.test(appVersion)) return 'linux' }
Listen to Podcasts Online with Your Friends. This project allows you to create or join a room with a few friends to listen to the same podcast without the need for registration or login. It supports listening to sources such as Xiaoyuzhou and Apple Podcast China region.

A JS Animation Library That Lets DOM Gaze Like Eyes. This is a simple animation library primarily used to calculate the position of a DOM element relative to a target, such as a mouse, another DOM element, or the value of an input field, to create interesting animations that make it act like eyes.

An IT Asset Management System. This project is an IT Asset Management System built on Laravel 8, suitable for small and medium-sized enterprises, supporting asset allocation, generation of QR code labels, asset auditing, warranty expiration reminders, and more.

A tool to easily run Windows applications on Linux. This project provides a clean and easy-to-use GUI interface, allowing users who have no programming skills to effortlessly run Windows games and software on Linux systems.

一款灵活的 Django ORM 缓存库。该项目使用 redis 作为缓存,可通过装饰器设置数据库查询结果的过期时间。
from cacheops import cached_as @cached_as(Article, timeout=120) def article_stats(): return { 'tags': list(Article.objects.values('tag').annotate(Count('id'))) 'categories': list(Article.objects.values('category').annotate(Count('id'))) }
Service for Anonymous Password Sharing of Text and Files. This project is a file-sharing service developed based on FastAPI and SQLite3, supporting functions such as sharing files and extracting files with passwords, allowing file extraction without registration.

用 Python 编写 systemd 服务的教程。许多 Linux 发行版都用 systemd 来管理系统的服务,比如开机启动、自动重启、守护进程等。该项目讲解了如何入门 systemd,并提供了一个 Python 脚本和 systemd unit 文件,可以在此基础上快速开发出 systemd 服务。
if __name__ == '__main__': import time import systemd.daemon print('Starting up ...') time.sleep(10) print('Startup complete') systemd.daemon.notify('READY=1') while True: print('Hello from the Python Demo Service') time.sleep(5)
Learn How to Write an Embedded Operating System in Rust. This tutorial starts from scratch and guides you step by step on how to develop a fully functional kernel for an embedded operating system using Rust. It includes tasks common to operating systems, such as developing a serial console, setting up virtual memory, and handling hardware exceptions. All the code in the tutorial can run on Raspberry Pi 3 and 4.

A Cross-Platform File Management Tool Written in Rust. Based on the Virtual Distributed File System (VDFS) written in Rust, it can connect devices from different operating systems such as macOS, Windows, Linux, iOS, and Android to manage all files in a unified manner. The project is still under development, and clients need to compile it themselves.

将网站变成 Mac 桌面壁纸。这是一款适用于 macOS 的桌面壁纸应用,支持将多种网站设置为壁纸,这些网站并不局限于图片网站,还可以是新闻、气象等站点。

A Project for Coloring Old Photographs. This project utilizes deep learning to implement the coloring of black and white images and videos.

一款轻量级的机器学习可视化工具。该项目是用于可视化和跟踪机器学习实验的工具,通过几行代码就可以实现跟踪、比较和可视化机器学习实验。
import wandb # 1. Start a W&B run wandb.init(project="gpt3") # 2. Save model inputs and hyperparameters config = wandb.config config.learning_rate = 0.01 # Model training code here ... # 3. Log metrics over time to visualize performance for i in range(10): wandb.log({"loss": loss})

A Collection of Chinese Personal Independent Blog Sites. If one were to say that the era of Chinese independent blogs has passed, there remains at least one place that belongs to bloggers who love freedom.
A Douban Client developed with Flutter. This project recreates Douban client features such as home, books, music, movies, discussion groups, marketplace, and personal center using Flutter.

DIY E-Ink Calendar. An ESP32-based E-Ink calendar that can operate for years on 4 AA batteries and supports weather display and other features through OpenWeatherMap.

一本动画图解数据结构与算法的入门书。《Hello,算法》一书通过动画和代码诠释数据结构和经典算法,学习曲线平滑,支持电脑、手机等多种终端在线阅读。

- C
- C#
- C++
- CSS
- Go
- Java
- JavaScript
- PHP
- Python
- Rust
- Swift
- AI
- Other
- Book