HelloGitHub Vol.108
HelloGitHub shares interesting and beginner-friendly open source projects on GitHub, updated on the 28th of each month. Here you will find fun and beginner-level open source projects, open source books, practical projects, and enterprise-level projects, allowing you to quickly appreciate the charm of open source and develop an interest in it.
A Minimalist Windows Timer.This is a lightweight and easy-to-use Windows timer that integrates time display, countdown, and Pomodoro clock functions. Written in C, it is compact and resource-efficient, featuring a transparent interface and rich functionalities. Users can adjust the size and position of the interface, set timeout actions (lock screen/notify/shutdown), and customize colors and fonts to meet personalized needs.

Unix Command-Line Task Queue Tool. This is a lightweight command-line queue tool that allows users to add tasks to a queue and execute them in sequence in the background. It supports running on systems like Linux, FreeBSD, and macOS, suitable for scenarios that require the sequential execution of multiple scripts or commands.
# 将命令加入队列并在后台执行 nq COMMAND # 等待所有队列中的任务完成 nq -w # 例如,将 make clean 命令加入队列 nq make clean # 将 make depends 命令加入队列 nq make depends # 将 make all 命令加入队列 nq make all # 查看当前任务日志 nqtail
Take You Back to the Game Engine of Half-Life. This is an open-source game engine, primarily used for running and modifying games developed with the GoldSrc engine. GoldSrc is the game engine used by Valve to develop classic games like Half-Life. Xash3D FWGS offers a compatible, cross-platform game engine to let users play these classic games on modern systems, mobile devices, and handheld consoles, as well as perform deep modifications and extensions, such as adding touch controls, voice chat, and renderer options.

Open-source Singing Synthesis Tool. This is a tool for creating and editing singing synthesis works, compatible with UTAU's sound libraries and resamplers. It has a simple and intuitive interface, supports the cooperation of mouse and keyboard operations, and provides MIDI editing, lyric adjustment, tone modification, and other features, suitable for Windows, Linux, and macOS platforms.

Interactive ASCII Chart Generator. This is an interactive ASCII style chart generator that can convert expressions similar to Markdown into ASCII art form. It supports generating mathematical expressions, sequence diagrams, tree diagrams, tables, flowcharts, etc., and can export charts as WebAssembly for display and interaction on web pages.

A Tool for Transmitting Data via Sound. This is an innovative tool for data transmission, capable of sending small amounts of data between devices using sound. It employs Frequency-Shift Keying (FSK) transmission protocol and incorporates Error-Correcting Codes (ECC) to enhance the reliability of data transmission, with a transfer speed of 8-16 bytes per second.

A Mini-Map Plugin for 'Black Myth: Wukong'. This is a real-time map plugin designed specifically for 'Black Myth: Wukong'. It is completely free and easy to install, supporting real-time location tracking, navigation, key point identification, and features like map zooming, shrinking, and hiding.

Beautiful Arctic Blue Color Scheme. This is an open-source Arctic Blue theme color scheme, including 16 soft shades, suitable for applications such as code editors, terminals, and web design. Even if you can't visit the Arctic in person, you can use this tranquil blue to immerse your visual experience in a journey.

Go Language Library for Generating GraphQL Servers. This project is a Go language library for rapidly constructing GraphQL services, capable of parsing GraphQL schema files (.graphql) and generating corresponding Go code. It emphasizes type safety and supports features such as custom models, type mapping, middleware, and resolvers.

Quickly Identify the Culprit Responsible for Using a Lot of Cache. This is a command-line tool that quickly finds the largest cache files and processes consuming space in the system. It is simple to use, convenient, and supports JSON, table, and histogram output formats.

A tool for backing up WeChat chat records with one click. This project is a utility developed in Go language that enables one-click exportation of WeChat chat records from the PC client, assisting users in effortlessly backing up, exporting, and locating important conversations, suitable for the Windows platform.

Java Deserialization Vulnerability Attack Tool. This is a tool specifically designed to generate payloads that exploit Java deserialization vulnerabilities for testing and verification purposes in Java applications. By encapsulating user-specified commands into specific gadget chains and serializing them into byte streams, it allows the execution of specified commands within the target Java application.

Out-of-the-box Cloud Storage Resource Transfer Platform. This project is a cloud storage resource search and transfer platform built on Vue 3 and Express, supporting multi-resource search, Douban popular charts, one-click cloud storage resource transfer, multi-user functionality, and perfectly adapted for both mobile and PC ends.

Bring GitHub Notifications to Your System Menu Bar. This is an open-source, free GitHub notification management tool that integrates GitHub notifications into the user's menu bar and supports Windows, Linux, and macOS platforms.

Minimalist Markdown Collaboration Platform. This is a real-time collaboration platform based on Markdown, featuring a fresh interface and practical functions, supporting multiple people to edit the same document simultaneously, and synchronize content in real-time, which is very suitable for small teams to share and manage documents.

Make Benchmarking Easy and Efficient. This is a plug-and-play benchmarking tool that helps developers quickly and accurately assess code performance. It provides high-precision measurement results and intuitive visual reports, supporting JavaScript and C++ languages.
import { run, bench, boxplot, summary } from 'mitata'; function fibonacci(n) { if (n <= 1) return n; return fibonacci(n - 1) + fibonacci(n - 2); } bench('fibonacci(40)', () => fibonacci(40)); boxplot(() => { summary(() => { bench('Array.from($size)', function* (state) { const size = state.get('size'); yield () => Array.from({ length: size }); }).range('size', 1, 1024); }); }); await run();

An Impressive React Animation Library. This project is a React component library that combines animation and interaction, including a variety of types such as text animations and background effects. Each component provides both JavaScript and TypeScript versions and offers comprehensive support for CSS and Tailwind CSS, catering to different technology stacks and helping developers quickly build outstanding user interfaces.

Turn Android Phone into a Dash Cam. This is an open-source dashcam application for mobile phones that turns your phone into a dashcam. It continuously records audio and video in the background and can save the last 30 minutes of content when needed. All operations are processed locally without the need for an internet connection, protecting user privacy.

Convert eBooks to Audiobooks with One Click. This is a desktop tool that can convert eBooks in EPUB format into audiobooks in M4B format. It uses the Kokoro-82M voice synthesis model, which produces smooth and natural sounding results, supports CUDA acceleration, and is available in multiple languages, including Chinese, English, Japanese, and more.

A Habit Tracking Tool Without Setting Goals. This is a self-hosted habit tracking web application developed with Python, which helps users easily record and manage their daily habits. It features a mobile-adaptive intuitive interface, focusing on continuous habit formation rather than merely pursuing goal achievement, making the cultivation of good habits more natural.

A Deep Comparison Tool for Python Objects. This is a Python library designed for deep comparison, searching, and manipulation of Python object data. It provides various modules to handle the differences of Python objects such as dictionaries, iterables, and strings, as well as content searching, hash generation, and incremental updates, among other functionalities.

Make NGINX Configurations More Secure. This is an active static analysis tool for NGINX configurations, focusing on discovering security issues within the configurations. It is capable of detecting various common NGINX configuration vulnerabilities, such as server-side request forgery, host header poisoning, and path traversal, and is usable from the command line or within Docker and Kubernetes.

Python Framework for Easily Creating Native Desktop Applications. This is a simple and easy-to-use Python GUI framework, designed specifically for building cross-platform native desktop applications. It combines the simplicity and readability of Python with the native experience of the operating system, supporting a rich set of components and the ability to display dynamic web pages.
import toga def button_handler(widget): print("hello") def build(app): box = toga.Box() button = toga.Button("Hello world", on_press=button_handler, style={"margin": 50, "flex": 1}) box.add(button) return box def main(): return toga.App("First App", "org.beeware.toga.examples.tutorial", startup=build) if __name__ == "__main__": main().main_loop()

Bilibili Live Slicing Assistant. This is a slicing tool specifically designed for bilibili live streaming, helping users to generate and manage slices in real-time during the live broadcast. It supports real-time slicing, live caching, editing slices, recording time points, submitting content, and multi-account functionality.

Indeed, Rust also has an Interpreter. This is an interactive Rust programming tool similar to Jupyter Notebook and IPython. It provides an interactive Rust programming environment where users can execute Rust code in real time and view the results.
One-stop In-App Purchase Solution. This project is a Swift library designed to simplify the implementation of in-app purchases and subscriptions, supporting platforms such as iOS, watchOS, tvOS, macOS, and visionOS.

Microsoft's Open Source AI Agent Beginner's Tutorial. This project is a tutorial on AI intelligent agents (AI Agents) crafted by Microsoft specifically for beginners, divided into 10 courses, including detailed instructions, videos, and sample code.

Machine Learning Code Converter Across Frameworks. This project can convert machine learning models, tools, and libraries from one framework to another. Developers can easily complete code transformations using simple functions and supports mainstream frameworks such as TensorFlow, PyTorch, and JAX.
import ivy import torch import tensorflow as tf def torch_fn(x): x = torch.abs(x) return torch.sum(x) x1 = torch.tensor([1., 2.]) x1 = tf.convert_to_tensor([1., 2.]) # Transpilation happens eagerly tf_fn = ivy.transpile(test_fn, source="torch", target="tensorflow") # tf_fn is now tensorflow code and runs efficiently ret = tf_fn(x1)
Open Source AI Meeting Assistant. This is an AI-driven real-time meeting recording and summary generation tool that can be used offline. It is completely free and open source, supporting self-hosting, semantic search, content export, and more, suitable for Windows and macOS platforms.

Starting from Zero to Train a Vision Multi-Modality Model. This project is a step-by-step guide on how to train a 26M parameter vision multi-modality model from scratch, including a complete training process and a full set of tools, costing only 1.3 yuan and taking only 1 hour.

AI Agent Visualization Development Platform. This is a Python-based visual development platform for AI agents that is powerful and easy to use. It supports building workflows, running test cases, memory management, file uploads, structured outputs, RAG (Retrieval-Augmented Generation), multimodality, and evaluation, while also being compatible with over 100 large model service providers.

Create Your Own MIDI Keyboard Light Show. This is an open-source project that uses an Arduino development board to control the lighting of an 88-key MIDI (Musical Instrument Digital Interface) keyboard. It consists of a desktop control program and an Arduino program that can read MIDI keyboard inputs and control the lighting strip effects in real-time.

JupyterLab Theme for Enhanced Visual Experience. This project offers a cozy, unified, and colorful interface for JupyterLab that is easy to install and switch between, with built-in color schemes, supporting both JupyterLab v3 and v4 versions.

Open Source Script for One-Click Network Quality Detection. This is a convenient script for network quality testing, capable of quickly assessing network quality and performance, supporting both Chinese and English languages, TCP large packet delays for three networks, return route, internet speed test, and international internet connectivity features.

Summary of Overseas Website Experience. This project is a compilation of the author's experiences in developing an overseas website, covering aspects such as overseas company registration, bank account opening, payment system integration, and website development.
A Handwriting Note App That Understands You Better. This is an open-source handwriting note application that supports platforms such as Android, iOS, Windows, macOS, and Linux. It offers features like night mode, highlighting of multi-line formulas, and password protection, making it suitable for scenarios like taking class notes and organizing work ideas.

Rust Data Structures and Algorithms Open Source Book. This is an open-source book explaining Rust data structures and algorithms, with support for Simplified/Traditional Chinese and English versions. The book consists of 10 chapters, covering Rust fundamentals, computer science concepts, algorithm analysis, basic data structures, recursion, searching, sorting, trees, graphs, and practical applications.
The Coherent Programmer. This is a book about how programmers can manage their emotions and professional mindset, helping them free themselves from negative emotions, face their inner selves more peacefully, and thus achieve 'coherence'.
The Art of Problem Solving in Software Engineering: How to Make MySQL Better. This is a book that analyzes and solves MySQL issues through practical case studies, combined with in-depth discussions to help readers better understand computer fundamentals such as logical reasoning, data structures, and algorithms.