HelloGitHub Vol.102
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.
Clipboard History Manager for Windows. This is a free clipboard enhancement tool for Windows. It can store the content copied to the clipboard into a database (SQLite) for later retrieval, supporting features such as saving dates, total number of entries, merged pasting, grouping, quick search, and hotkey pasting. Additionally, it can share clipboard content over the network and encrypt data during transmission for protection.
Pixel Bird Game under 100KB. This project is a Flappy Bird game written in C language, featuring smooth gameplay and an installation package smaller than 100KB, suitable for Android systems 5.1 and above.
Easily Transmit Radio Signals with Your Computer. The project achieves the functionality of sending AM radio signals using just a computer, without additional hardware, by controlling the computer system bus to switch current on a specific frequency.
Open Source .NET E-commerce Platform. This project is an official open-source e-commerce platform by .NET, built on .NET Aspire. As a sample project, it adopts the latest .NET 8 and microservices architecture, and implements core e-commerce functionalities.
Fake Windows Update Tool. This is a small tool designed specifically for slacking off. After clicking the 'slack off' button, it displays the Windows Update interface, creating the illusion that the computer is upgrading, allowing you to slack off in a justified manner.
Powerful Artificial Life Simulation Tool. This project is an artificial life simulation tool based on a 2D particle engine built with CUDA. It provides a graphical user interface and a particle editor, allowing for easy simulation of soft-bodied entities, fluids, digital organisms, genetics, and evolution processes. Organism behavior is controlled by neural networks and supports real-time interaction and simulation of millions of particles.
Open Source Remake of 'Heroes of Might and Magic III'. This project is an open source remake of the classic strategy game 'Heroes of Might and Magic III', rewritten in C++ to enhance the game engine's capabilities with higher resolutions, multiplayer gaming, and custom map functionality. It is designed to run on platforms such as Windows, macOS, Android, and iOS, but requires users to prepare the necessary data files to start the game.
Pure Go Implemented ClickHouse SQL Parser. This is a ClickHouse SQL parser implemented in Go, compatible with most DML/DDL/Query statements. Its code is concise and easy to understand, and can serve as an introductory project for Go developers to learn SQL parsers.
package main import ( clickhouse "github.com/AfterShip/clickhouse-sql-parser/parser" ) query := "SELECT * FROM clickhouse" parser := clickhouse.NewParser(query) // Parse query into AST statements, err := parser.ParseStmts() if err != nil { return nil, err }
Utility for Various Streaming Media Protocols. This is a library written in Go that supports the handling of various video streaming protocols such as RTSP, WebRTC, HomeKit, FFmpeg, and RTMP. With the aid of FFMPEG, it can almost use any media format as an input source and convert it into formats suitable for mainstream streaming services and browsers.
Generate Stylish PDF Files with Go. This is a library developed in Go that is inspired by the Bootstrap framework for creating PDF files. It allows you to easily write and generate PDF files with different styles, just like using Bootstrap to create websites.
Brand New Nginx Online Management Platform. This project is an online management platform for Nginx built with Go+Vue.js. It is ready to use out of the box, feature-rich, and supports traffic statistics, viewing Nginx logs online, editing Nginx configuration files, automatic checking and reloading of configuration files, among other capabilities.
A tool for automatically updating Docker containers. This project can automatically monitor and update running Docker containers. It regularly checks for and pulls the latest image versions from Docker Hub or private image repositories, and automatically restarts the containers. Suitable for development, testing, and personal use scenarios, but not recommended for production environments.
docker run -d \ --name watchtower \ -v /var/run/docker.sock:/var/run/docker.sock \ containrrr/watchtower
Efficient and Flexible Open Source Routing Engine. This project is a high-performance routing engine developed in Java, capable of quickly calculating the distance between two or more points. It supports algorithms such as Dijkstra, A*, and Contraction Hierarchies (CH), and can be used as a Java library or a web service. Based on OpenStreetMap map data, it can implement route planning and navigation services for various modes of transportation like car, bicycle, and pedestrian.
Play J2ME Games on Android. This is a J2ME emulator for Android that supports most 2D and 3D games. It comes with a built-in virtual keyboard and is compatible with Android 4.0+.
Spring Framework for Developing AI Applications.This is an open-source Java framework initiated by the Spring team to simplify the development of applications that include AI capabilities. It easily integrates with mainstream model providers such as OpenAI, Microsoft, Amazon, Google, and Huggingface, and supports model types like chat, text-to-image generation. The framework offers functionalities such as prompt engineering, converting AI models to POJO objects, vector database integration, and RAG (Retrieval-Augmented Generation) to aid in the development of AI applications.
Tool for Creating Full-Stack, Type-Safe Next.js Projects. This is a scaffolding tool for creating full-stack and type-safe Next.js projects. It is ready to use out of the box, and a new Next.js project can be quickly created with just one command.
Visualize Markdown as Mind Map. This is a tool that supports the creation of mind maps using Markdown syntax. It is ready to use out of the box and offers various usage methods, including online, command line, and plugins for VSCode, Vim, and Emacs.
Run Postgres Database in the Browser. This project compiles the PostgreSQL database into WebAssembly (WASM) and packages it into a TypeScript/JavaScript client library. It has a compressed size of less than 3MB and can run in browsers, Node.js, Bun, and Deno environments without the need for any additional dependencies. It offers flexible storage options, supporting memory storage, local persistence, or IndexedDB.
import { PGlite } from "@electric-sql/pglite"; const db = new PGlite(); await db.query("select 'Hello world' as message;"); // -> { rows: [ { message: "Hello world" } ] }
Password Protection for Static Websites. This project enables password-protected access to HTML pages without the need for server-side support. It utilizes the AES-256 encryption algorithm and a specified password to encrypt pages that require protection. The generated pages include a password input field, and the original HTML content is only displayed after the correct password is entered.
Popular, Elegantly Designed UI Component Suite. This is a suite of UI components open-sourced by Vercel and developed with React, including components such as dashboards, cards, modal dialogs, forms, and login, ready for immediate use. After introducing the components via CLI, you will receive the source code, which can be freely modified and customized.
Open Source 2048 Game. This project is a 2048 game developed based on Kotlin and the KorGe game engine. It is free, open-source, and ad-free, supporting features such as saving, unlimited undo, AI mode, and replay. The author only provides an Android installation package, and other platforms need to be compiled by oneself.
Multi-functional Image Editing Tool for Android. This is an image editing tool designed specifically for Android. It is entirely free of charge, supporting batch processing, filters, background removal, size adjustment, and cropping, among various capabilities.
Python Asynchronous File Handling Library. In Python, traditional file I/O is blocking. This project provides asynchronous (non-blocking) file operations. Its API is similar to Python's standard library and supports async/await syntax.
async with aiofiles.open('filename', mode='r') as f: contents = await f.read() print(contents) 'My file contents'
GPU-enabled NumPy and SciPy. This is a Python library that utilizes GPU acceleration for numerical computing, which is compatible with NumPy and SciPy. You can easily migrate your existing NumPy/SciPy code to run on NVIDIA CUDA or AMD ROCm platforms, with some cases seeing a speed increase of over 100 times.
>>> import cupy as cp >>> x = cp.arange(6).reshape(2, 3).astype('f') >>> x array([[ 0., 1., 2.], [ 3., 4., 5.]], dtype=float32) >>> x.sum(axis=1) array([ 3., 12.], dtype=float32)
HTTP Client for Simulating Browser Fingerprints. This is an HTTP client library written in Python that can simulate browser TLS, JA3, and HTTP/2 fingerprints. It is ready-to-use, fast, and supports WebSocket and asynchronous operations.
from curl_cffi import requests # Notice the impersonate parameter r = requests.get("https://tools.scrapfly.io/api/fp/ja3", impersonate="chrome") print(r.json()) # output: {..., "ja3n_hash": "aa56c057ad164ec4fdcb7a5a283be9fc", ...} # the js3n fingerprint should be the same as target browser # To keep using the latest browser version as `curl_cffi` updates, # simply set impersonate="chrome" without specifying a version. # Other similar values are: "safari" and "safari_ios" r = requests.get("https://tools.scrapfly.io/api/fp/ja3", impersonate="chrome")
Offline-deployable Translation API Service. This project is a translation API service built upon the offline translation engine Argos Translate. It does not rely on third-party translation services and can easily establish its own translation API service. It supports automatic language detection, API key functionality, and access rate limiting.
Terminal-based CPU Monitoring and Stress Testing Tool. This is a command-line tool written in Python that can display CPU temperature, frequency, power, and utilization information in real-time in a graphical manner in the terminal. It also supports the installation of tools such as FIRESTARTER for performing stress tests on the CPU.
Ultra-fast Python Package Management Tool.This project is a next-generation Python package management tool developed based on Rust, capable of replacing traditional Python package and environment management tools. It is compatible with pip, pip-tools, and virtualenv commands, and is 10-100 times faster than them. Additionally, it utilizes a global dependency cache to save hard disk space more efficiently and comes out of the box supporting Windows, Linux, and macOS systems.
# On macOS and Linux. $ curl -LsSf https://astral.sh/uv/install.sh | sh # On Windows. $ powershell -c "irm https://astral.sh/uv/install.ps1 | iex" # With pip. $ pip install uv
Ultra-fast Terminal File Manager. This is a terminal file manager written in Rust, with all I/O operations being asynchronous. It offers a friendly interface, customizable freedom, and a smooth user experience, supporting image previews, code highlighting, scroll previews, and a plugin system, integrated with efficient command-line tools such as ripgrep, fd, and fzf.
Easy Tool to Backup iOS Device Data. This is a free iOS backup tool that supports features such as displaying backup progress, automatic backup scheduling, wireless backup, and encryption protection.
Free Document Scanning Tool for iPhone. This is a document scanning tool written in Swift, completely free, ad-free, and without in-app purchases. It can scan receipts, contracts, notes, etc., supports automatic text recognition, editing scans, signing, and exporting PDF files, suitable for iOS 16.0+ and visionOS 1.2+ systems.
Minimal Neural Network Implemented in C. This project demonstrates how to implement a minimalist neural network from scratch using C language. With less than 200 lines of code and the C standard library, it achieves a rudimentary neural network capable of classifying handwritten digits from the MNIST dataset.
Tool Kit for Optimizing and Deploying Deep Learning Models. This project is an Intel open-source toolkit aimed at accelerating and optimizing the deployment of deep learning models. It helps developers deploy trained models to a variety of hardware platforms, supporting deep learning frameworks such as TensorFlow, PyTorch, and ONNX.
import openvino as ov import torch import torchvision # load PyTorch model into memory model = torch.hub.load("pytorch/vision", "shufflenet_v2_x1_0", weights="DEFAULT") # convert the model into OpenVINO model example = torch.randn(1, 3, 224, 224) ov_model = ov.convert_model(model, example_input=(example,)) # compile the model for CPU device core = ov.Core() compiled_model = core.compile_model(ov_model, 'CPU') # infer the model on random data output = compiled_model({0: example.numpy()})
90-Day DevOps Free Tutorial. This project began as the author's notes for learning DevOps knowledge and has now evolved into a community-driven free tutorial on DevOps. The content covers a range of topics including DevOps concepts, Linux basics, computer networking, containerization, Kubernetes, CI/CD, monitoring, and cloud service providers.
Open-Source, Streamlined Windows System. This is an optimized version of the Windows operating system with many unnecessary components removed, enhancing its performance. The streamlined system reduces the number of processes, network, and memory usage, leading to faster boot times and a smoother user experience. Capable of running a variety of Windows software and games, it is an open-source gift for gaming enthusiasts and users seeking high performance.
Interactive Tutorial for Learning GPU Parallel Programming. This project offers 14 exercises to help learn GPU programming. You are required to write code to solve these problems. Although the code appears to be Python, it is actually CUDA code written using the numba library. More interestingly, after running the code, it generates a schematic diagram to help you understand the process of code execution. In addition, the author has made instructional videos to guide how to run the project and check the answers.
Cross-Platform Circular Menu Tool. This is a desktop pie menu tool that can be used to launch applications, simulate keyboard shortcuts, open files, and more. It is particularly suitable for use with a stylus and touchscreen and supports systems such as Windows, Linux, and macOS.
Elegant Ubuntu Configuration Plan. This project transforms a fresh Ubuntu 24.04 system into an aesthetically pleasing, fully-featured system ideal for web development. With a single command, you can have a configured GNOME desktop environment, window management tools, Alacritty terminal, Neovim and VSCode editors, and set Chrome as the default browser.
Display Weather Forecast with Fun Animations. This is a project that generates landscape images based on meteorological data and vividly displays the weather through animations, replacing the dull display of meteorological numerical values.
An English Word Book Generated by GPT-4. This project uses GPT-4 to analyze over 8,000 English words from middle school, high school, and CET-4/6 examinations to generate an English vocabulary book. The book provides detailed introductions to the meaning, etymology, prefixes, suffixes, example sentences, and historical and cultural backgrounds for each word.
Chinese Translation of 'System Design Interview: An Insider’s Guide'. This project is a Chinese translation of the book 'System Design Interview: An Insider’s Guide', aimed at teaching the skills required for system design architecture in interviews, such as how to design systems like YouTube.
- C
- C#
- C++
- Go
- Java
- JavaScript
- Kotlin
- Python
- Rust
- Swift
- AI
- Other
- Book