HelloGitHub Vol.111
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.
Tools for Exploring Windows Security Mechanisms.This is a tool written in C language for researching Windows security mechanisms. It can extract sensitive information such as plaintext passwords, hash values, PIN codes, Kerberos tickets, etc. from memory, and supports advanced operations such as pass-the-hash, Golden Ticket, DCSync, etc. It is widely used in security research, penetration testing and system security analysis scenarios.

WPF Desktop Application Auto-upgrade Component.This is an auto-update library specifically designed for WinForms and WPF desktop applications. With just a few lines of code, you can easily integrate functions such as automatically detecting new versions, prompting pop-ups, and downloading and installing packages into desktop applications.
Windows File Management Multi-tab Extension Tool.This is a file explorer enhancement tool specifically designed for Windows 11. It can automatically merge multiple windows into a single-window multi-tab mode. It supports path deduplication, tab search, batch opening/closing/restoring, etc., easily bidding farewell to the trouble of messy desktop windows.

One-click Tool to Shut Down Windows Defender.This is a tool for disabling Windows Defender. It supports one-click installation and persistent effectiveness. It realizes the complete disabling of the system's built-in Defender real-time protection service by directly calling the Windows Security Center (WSC) interface and registering a virtual antivirus software. At the same time, it supports booting self-start to ensure that the disabled state still takes effect after restart.

Ready-to-use Game Shifter.This is a completely free and open-source Windows game acceleration tool. It achieves flexible adjustment of game speed by hooking the system time function and provides a simple and easy-to-use interface, compatible with multiple single-player games. Do not use it in online games to avoid account suspension!

Faster and Compact Vector Retrieval and Clustering Engine.This is a high-performance and lightweight similarity search and clustering engine with a single header file design. It can be embedded in mainstream databases and supports vector and multimodal data (text, images, geographic coordinates). It implements efficient approximate nearest neighbor search based on the HNSW algorithm and is compatible with multiple programming languages and precision types. It is suitable for scenarios such as recommendation systems, vector databases, intelligent retrieval, and geospatial analysis.
#include <usearch/index.hpp> #include <usearch/index_dense.hpp> using namespace unum::usearch; int main(int argc, char **argv) { metric_punned_t metric(3, metric_kind_t::l2sq_k, scalar_kind_t::f32_k); // If you plan to store more than 4 Billion entries - use `index_dense_big_t`. // Or directly instantiate the template variant you need - `index_dense_gt<vector_key_t, internal_id_t>`. index_dense_t index = index_dense_t::make(metric); float vec[3] = {0.1, 0.3, 0.2}; index.reserve(10); // Pre-allocate memory for 10 vectors index.add(42, &vec[0]); // Pass a key and a vector auto results = index.search(&vec[0], 5); // Pass a query and limit number of results for (std::size_t i = 0; i != results.size(); ++i) // You can access the following properties of every match: // results[i].element.key, results[i].element.vector, results[i].distance; std::printf("Found matching key: %zu", results[i].member.key); return 0; }
Cross-platform Batch Rename Tool.This is a command-line batch renaming tool written entirely in Go language, supporting regular expressions, automatically resolving conflicts, undoing, and other functions.

Real-time Log Viewing Tool with Built-in Web Interface.This is a lightweight real-time log viewing tool that requires no installation and is ready to use out of the box. It has a built-in Web interface, allowing you to view and filter logs in real-time like tail -f through a browser. It supports multiple input modes and custom parsers.
# Use with any shell command $ tail -f file.log | logdy WebUI started, visit http://localhost:8080 # Read log files $ logdy follow app-out.log --full-read WebUI started, visit http://localhost:8080

File List Program Supporting Multiple Storages.This is a file list program based on Gin and SolidJS, supporting multiple storage methods such as local storage, Aliyun Disk, OneDrive, and Google Drive. It is completely open source (forked from AList) and maintained by the community.

Tool for Finding Available Domains with One Click.This is a command-line tool for quickly querying available domains. It can intelligently generate domain combinations based on keywords, prefixes, suffixes and various top-level domains, and quickly detect their availability.

Personal Digital Library for Java Development.This is an open-source, self-hosted e-book management web application that supports PDF and ePub e-book formats. It is developed with Java (Spring Boot) + Angular and supports functions such as automatic acquisition of book information, sharing of books, synchronization of reading progress, and multi-user management.

Open Source Strategy Card Game.This is an open source rule engine and simulator designed for Magic: The Gathering players. It is a card game similar to Hearthstone with single-player adventures, tasks, multiple AI battle modes. It supports online battles, custom card and expansion features and is compatible with Windows, macOS, Linux and Android platforms.

ESLint Plugin to Improve JavaScript Code Quality.This is an ESLint plugin integrated with more than 100 high-quality JavaScript code inspection rules, comprehensively covering multiple aspects such as code style, performance, security and readability.
Notepad Designed Specifically for Programmers.This is a sticky note application specifically for developers, whose strength lies in the ability to easily store different content in chunks, be it snippets of code or Markdown text! It supports automatic syntax highlighting, automatic formatting, calculator mode, multi-cursor editing, global hotkeys and other features, suitable for Windows, macOS, and Linux.

Making Dynamic Videos with React.This is a platform that can generate videos through code. Developers can dynamically generate video content using web technologies (such as CSS, Canvas, SVG, WebGL), React components, variables and functions, supporting complex animations and effects.

Minimalist Typing Word Memorization Website.This is a web-based word memorization software that helps users remember words through keyboard input. It has a simple interface, smooth interaction, and supports functions such as word pronunciation, error statistics, and a new word list.

Open Source Fitness Guidance Platform.This is a free and open-source fitness guidance platform that provides rich fitness actions and video demonstrations. It is built with Next.js + TailwindCSS and supports creating fitness plans, progress tracking and multi-language functionality.

Professional Android Torch Application.This is a free, ad-free, and offline usable torch application that is compatible with Android 13 and above systems. It realizes multi-level brightness adjustment through hardware interfaces and supports modes such as SOS, Morse code signals, BMP, and timed blinking. It is very suitable for use in hiking, camping, night running and other scenarios.

Essential Android Apps for Wilderness Survival.This is an open-source Android app specifically designed for hiking, camping, and wilderness survival scenarios. It utilizes the phone's sensors to provide practical functions such as offline navigation, sunset reminders, photo mapping, and path tracking. All functions can be used in a no-network environment.

macOS Mouse Enhancement Tool.This is a mouse enhancement tool specifically designed for macOS, which makes up for the lack of support for non-Apple mice in the system. Users can customize various behaviors of third-party mice on Mac, including smooth scrolling, direction reversal, mouse gestures and button mapping functions.

Efficient Data Duplication and Backup Tool.This is a highly efficient and secure duplication and backup tool that can accurately identify duplicate data even if the file structure or location changes. It uses content-defined chunking deduplication algorithm to significantly save storage space. It has multiple compression options such as lz4, zstd, zlib, and lzma built-in, and supports SSH remote backup.
Open Source Web Application Firewall.This project is an open source Web Application Firewall developed in Python, which can be seamlessly integrated into existing environments (Linux, Docker, K8s, etc.). It is built on Nginx, with a secure default configuration, a simple and user-friendly web interface, supports automatic HTTPS A+ rating configuration, security headers, and a rich plugin system. It can detect common attack patterns, restrict access, prevent malicious visits from bots and crawlers, protecting your website, API, and web applications.

Tool for Converting E-books to Audiobooks.This open-source tool can effortlessly convert e-books into audiobooks, supporting various common formats such as EPUB, MOBI, PDF, and more. It extracts e-book text through calibre and utilizes Text-to-Speech technology to generate audiobooks that include chapters and metadata, supporting over 1000 languages, including Chinese.

Terminal Interactive systemd Management Tool.This is a systemd management tool with a terminal user interface (TUI) that supports fuzzy searching, automatic preview, smart sudo, shortcut keys, etc., simplifying the management experience of systemd units such as services and timers.

Must-have ROM Manager for Emulator Game Players.This is a ROM management and emulator platform developed based on Python, supporting the direct running of games in the browser. Users can easily scan local games, automatically grab game covers, and uniformly manage multi-platform ROM resources through a concise web interface, compatible with more than 400 game platforms.

Minimal File Sharing and Short Link Platform.This is a lightweight web application written in Rust that integrates file sharing, online clipboard, and URL shortening. It is secure, reliable, and easy to deploy, supporting features such as automatic expiration, setting passwords, and protection levels.

One-stop Multilingual Development Environment Management Tool.This is a development environment management tool written in Rust. It integrates multi-language toolchain switching, environment variable management and task automation. It easily solves problems such as multi-version programming languages, environment isolation and automated construction. It can replace multiple tools such as asdf, nvm, pyenv, direnv and make.

More User-Friendly Port Viewing Tool.This is a humanized and user-friendly command-line tool designed specifically for Linux. It is used to monitor sockets and local ports. It displays port and process network connection information in a beautiful and compact table in real time. It supports filtering, sorting, and formatted output and can be used as a replacement for netstat.

Apple Open-Sourced Lightweight Virtual Machine.This is an officially open-sourced lightweight virtualization container tool by Apple, used to create and run Linux containers on Mac. It is developed in Swift and optimized for Apple chips (such as M1, M2 chips). It aims to provide efficient and native container experiences for macOS users, supports OCI standard container images, and can be seamlessly connected to mainstream mirror repositories such as Docker Hub.

Instant Workspace Switching on macOS.This is a virtual workspace manager designed specifically for macOS, enabling ultra-fast and seamless switching between multiple tasks without animations. It provides an immediate workspace switching experience by eliminating the waiting animations when switching applications on macOS. It supports multiple monitors, picture-in-picture, focus/cursor management, and other functions.

Claude Coding Assistant in Terminal.This project is an AI coding assistant open-sourced by Claude officially. Integrated into the terminal, it can understand the entire codebase and help developers complete various coding tasks more efficiently through simple natural language commands.

Google Gemini Command Line Tool.This project is the official open-source command line tool of Gemini, integrating the powerful capabilities of Google Gemini into the terminal environment. It is based on a million-level context and can understand the architecture and logic of large codebases. It supports multimodal input and output, Google search, and MCP and other functions.

LLM Principles and Practice Tutorial from Scratch.This project is a tutorial to help beginners systematically learn the principles and practices of large language models (LLMs). Through detailed tutorials and practical cases, it gradually leads readers to deeply understand the basics of natural language processing (NLP), the Transformer architecture, and the basic principles of pre-trained language models, and enables them to implement and train their own large language models hands-on.

Lightweight vLLM Built from Scratch.This project is a lightweight vLLM (large language model inference engine) implemented in Python. The core code is only over 1000 lines. It has a clear structure and is easy to read. The inference speed is comparable to the original vLLM and integrates inference optimization techniques such as prefix caching, tensor parallelism, and Torch compilation.
from nanovllm import LLM, SamplingParams llm = LLM("/YOUR/MODEL/PATH", enforce_eager=True, tensor_parallel_size=1) sampling_params = SamplingParams(temperature=0.6, max_tokens=256) prompts = ["Hello, Nano-vLLM."] outputs = llm.generate(prompts, sampling_params) outputs[0]["text"]
Tool for Optimizing AI Prompts.This is a pure front-end implemented prompt optimizer that helps users quickly write higher-quality prompts. It supports multiple mainstream AI models and custom API addresses, and can compare the effects before and after optimization in real time.

Tool for Automatically Generating arXiv Paper Summaries Daily.This project can automatically obtain papers on arxiv and use large language models to summarize them, generating Chinese summaries.

DIY Wireless Signal Jammer.This is a 2.4GHz communication jammer based on ESP32 and nRF24 module. The code is open source and can be DIY or developed further. It interferes with the communication of Bluetooth, BLE, WiFi and RC devices by generating noise and sending invalid data packets, making them unable to work properly.

Browser Plugin for Zooming Images on Hover.This is a browser plugin that automatically zooms videos and images on a webpage when the mouse hovers over them. It supports Chrome, Firefox, and Edge browsers.

Tutorial on Building Kubernetes Cluster the Hard Way.This project aims to help beginners deeply understand the core components and working principles of K8s by manually building a Kubernetes cluster from scratch. It provides a detailed guide on installing, configuring and running a highly available K8s cluster completely manually without using automated tools.
CUDA Tutorial for Beginners in High-performance Computing.This is a CUDA tutorial and question bank prepared specifically for beginners in high-performance computing (HPC), including 200 CUDA-implemented operators, study notes, and hands-on practice of self-written performance benchmarking against official HGEMM and FlashAttention-2. It is suitable for interview preparation related to model inference optimization and operator optimization.
OBS Background Removal Plugin.This is an open-source OBS Studio plugin that can automatically recognize human figures and remove backgrounds during recording or live streaming, enabling users to easily change video backgrounds and supports platforms such as Windows, macOS and Ubuntu.

- C
- C#
- C++
- Go
- Java
- JavaScript
- Kotlin
- Objective-C
- Python
- Rust
- Swift
- AI
- Other