Interest is the best teacher.HelloGitHub Get you interested in programming!
synopsis
HelloGitHub Share interesting, entry-level open source projects on GitHub.
/521xueweihan/HelloGitHub
Here are real-world projects, introductory tutorials, black technology, open source books, open source projects of large factories, covering a variety of programming languages Python, Java, Go, C/C++, Swift ... Let you feel the charm of open source in a short period of time and become interested in programming!
The following is the content of this issue|Every month28 bug fix
C Projects
1、Ditto: Clipboard history management tool for Windows. This is a freeware Windows clipboard enhancement tool. It can store the content copied to the clipboard into a database (SQLite) for easy retrieval later, and supports setting the save date, total number of entries, merge paste, grouping, quick search and hotkey paste. In addition, you can share clipboard contents over the network and encrypt the transferred data for protection. From@Veeja Liu sharing
2、FlappyBirdFlappy Bird: Angry Bird game in 100KB. This project is an Angry Bird game (Flappy Bird) written in C. It runs smoothly, the installation package is less than 100KB, and it works on Android 5.1 and above.
3、system-bus-radio: Easily transmit radio signals using a computer. This project realizes the ability to send AM radio signals using only a computer without additional hardware by controlling the computer system bus to switch the current at a specific frequency.
C# Project
4、eShopNET e-commerce platform . NET official open source e-commerce platform , built on .NET Aspire . As a sample project , it uses the latest .NET 8 and microservices architecture , and implements the core e-commerce functionality .
5、Loaf: A tool to fake Windows updates. This is a small tool designed for fishing. When you click on the "Fishing" button, it will display the Windows Update screen and create the illusion that your computer is being updated, so you can fish in the right way. From@Liu Ruihua sharing
C++ project
6、alien: A powerful artificial life simulation tool. This project is an artificial life simulation tool built on CUDA's 2D particle engine. It provides a graphical user interface and particle editor to easily simulate processes such as soft bodies, fluids, digital organisms, genetics and evolution. Biological behavior is controlled by neural networks and supports real-time interaction and simulation of millions of particles.
7、vcmi: An open source remake of Heroes of Might and Magic III. The project is an open source remake of the classic strategy game "Magic Door of Heroes Invincible III" , it uses C++ to rewrite the game engine , support for higher resolution , multiplayer and custom maps and other features , you can run on Windows, macOS, Android and iOS and other systems, but you need to prepare their own startup data files required for the game .
Go Project
8、clickhouse-sql-parserClickHouse SQL Parser: Pure Go implementation of the ClickHouse SQL parser. This is a Go implementation of the ClickHouse SQL parser, compatible with most DML/DDL/Query statements. Its code is simple and easy to understand, and can be used as an introductory project for Go developers to learn SQL parser.
package main
import (
clickhouse "/AfterShip/clickhouse-sql-parser/parser"
)
query := "SELECT * FROM clickhouse"
parser := (query)
// Parse query into AST
statements, err := ()
if err != nil {
return nil, err
}
9、go2rtc: A processing tool that supports various streaming protocols. This is a library written in Go that supports the processing of video streaming protocols such as RTSP, WebRTC, HomeKit, FFmpeg, RTMP, and so on. With FFMPEG, it can take almost any media format as input source and convert it to a format suitable for mainstream streaming services and browsers. From@peregrinefalcon,stopgapreNo7 sharing
10、maroto: Generate beautifully styled PDF files with Go. This is a Go language library for creating PDF files , inspired by the Bootstrap framework . It allows you to use Bootstrap to create websites as easily as writing and generating different styles of PDF files. From@DeShuiYu sharing
11、nginx-ui: The new Nginx online management platform. This project is an out-of-the-box, feature-rich Nginx online management platform built with Go+ that supports traffic statistics, online viewing of Nginx logs, editing of Nginx configuration files, auto-checking and reloading of configuration files, and more. From@kekylin sharing
12、watchtower: Tool to automatically update Docker containers. This project automatically monitors and updates running Docker containers. It periodically checks for and pulls the latest image version from Docker Hub or a private image repository and automatically restarts the container. Suitable for development, testing and personal use scenarios, but not recommended for use in production environments.
docker run -d \
--name watchtower \
-v /var/run/:/var/run/ \
containrrr/watchtower
Java Project
13、graphhopper: Efficient and flexible open source route planning engine . The project is a high-performance route planning engine developed in Java , can quickly calculate the distance between two or more points . It supports Dijkstra, A* and contraction hierarchy (CH) and other algorithms , can be used as a Java library or Web service . Based on OpenStreetMap map data, it can realize route planning and navigation services for various transportation modes, such as car, bicycle and walking.
14、J2ME-Loader: Play J2ME games on Android. This is a J2ME emulator for Android that supports most 2D and 3D games. It has a built-in virtual keyboard and works with Android 4.0+.
15、spring-aiSpring framework to help develop AI applications. This is the official open source Java framework used by Spring to simplify the development of applications that include AI functionality, it can easily access the mainstream model providers such as OpenAI, Microsoft, Amazon, Google and Huggingface, as well as chat, text to generate images of the model type, support for hint engineering, AI models to POJO objects, vector database, RAG (Retrieval Augmented Generation) and other features that help develop AI applications. It supports hint engineering, AI models to POJO objects, vector databases, RAG (Retrieval Augmented Generation), and other features that help develop AI applications.
JavaScript Project
16、create-t3-app: A tool for creating full-stack, type-safe projects. This is a scaffolding tool for creating full-stack, type-safe projects. It works right out of the box and quickly creates a brand new project with a single command.
17、markmap: Visualize Markdown as a mind map. This is a tool that supports mind mapping using Markdown syntax. It comes out of the box and offers multiple ways to use it, including online, command line, and plug-ins for VSCode, Vim, and Emacs.
18、pglite: Run the Postgres database in your browser. This project compiles the PostgreSQL database into WebAssembly (WASM) and packages it into a TypeScript/JavaScript client library. It is compressed to less than 3MB and runs in browsers, Bun and Deno environments without installing any additional dependencies. Flexible storage options are provided, supporting in-memory storage, local persistence, or IndexedDB.
import { PGlite } from "@electric-sql/pglite";
const db = new PGlite();
await ("select 'Hello world' as message;");
// -> { rows: [ { message: "Hello world" } ] }
19、staticrypt: Provides password protection for static websites. This project does not require server-side support to realize the function of password-authenticated access to HTML pages. It uses the AES-256 encryption algorithm and a set password to encrypt the page to be protected. The generated page contains a password input box, and the original HTML page content will be displayed only after the correct password is entered.
20、ui: A collection of popular, beautifully designed UI components. This is a collection of popular and well-designed UI components developed by Vercel based on React, including dashboards, cards, model dialogs, forms, logins, and other components, which are ready to use. After introducing the component via CLI, you will get the source code of the component, which can be modified and customized at will.
Kotlin Project
21、game2048This project is a 2048 game based on Kotlin and KorGe game engine. This project is a 2048 game based on Kotlin and KorGe game engine. It is free, open source and ad-free, and supports archiving, infinite retractions, AI mode and playback, etc. The author only provides an Android installer. The author only provides Android installation package, other platforms need to compile their own.
22、ImageToolbox: A versatile image editing tool for Android. This is an image editing tool designed for Android. It's completely free and supports a variety of functions such as batch processing, filters, background removal, resizing and cropping.
Python Project
23、aiofiles: Python asynchronous file processing library. In Python, traditional file I/O is blocking, this project provides asynchronous (non-blocking) file operations. Its API is similar to the Python standard library and supports async/await syntax.
async with ('filename', mode='r') as f:
contents = await ()
print(contents)
'My file contents'
24、cupy: GPU versions of NumPy and SciPy, a Python library for accelerating numerical computation using the GPU, compatible with NumPy and SciPy. You can easily migrate your existing NumPy/SciPy code to run on NVIDIA CUDA or AMD ROCm platforms, in some cases up to 100x faster.
>>> import cupy as cp
>>> x = (6).reshape(2, 3).astype('f')
>>> x
array([[ 0., 1., 2.],
[ 3., 4., 5.]], dtype=float32)
>>> (axis=1)
array([ 3., 12.], dtype=float32)
25、curl_cffi: HTTP client that emulates browser fingerprints. This is an HTTP client library written in Python that emulates browser TLS, JA3 and HTTP/2 fingerprints. It's out-of-the-box, fast, and supports WebSocket and asynchronous.
from curl_cffi import requests
# Notice the impersonate parameter
r = ("/api/fp/ja3", impersonate="chrome")
print(())
# 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 = ("/api/fp/ja3", impersonate="chrome")
26、LibreTranslate: A translation API service that can be deployed offline. This project is a translation API service built based on Argos Translate, an offline translation engine. It does not rely on third-party translation services, and can easily build its own translation API service, which supports automatic language detection, API keys and access frequency restrictions.
27、s-tui: A terminal-based CPU monitoring and calibration tool. This is a command line tool written in Python that graphically displays CPU temperature, frequency, power, and utilization in the terminal in real time. It also supports installing tools such as FIRESTARTER to stress test the CPU.
Rust Project
28、uv: A super-fast Python package management tool. This project is a next-generation Rust-based Python package management tool that replaces traditional Python package and environment management tools. It is compatible with the pip, pip-tools, and virtualenv commands, is 10-100 times faster than these tools, saves more hard disk space with global dependency caching, and supports Windows, Linux, and macOS out of the box.
# On macOS and Linux.
$ curl -LsSf /uv/ | sh
# On Windows.
$ powershell -c "irm /uv/install.ps1 | iex"
# With pip.
$ pip install uv
29、yazi: A super-fast terminal file manager. This is a terminal file manager written in Rust, all I/O operations are asynchronous. It provides a friendly interface, freely customizable and smooth experience, supports image preview, code highlighting, scrolling preview and plugin system, and integrates efficient command line tools such as ripgrep, fd, fzf and so on. From@fortystory sharing
Swift Project
30、BBackupp: A tool to easily backup your iOS device data. This is a free iOS backup tool that supports showing backup progress, automatic backup schedule, wireless backup, encryption protection and more.
31、OpenScanner: A free document scanning tool for the iPhone. It's a document scanning tool written in Swift, completely free, no ads and no purchases. It scans receipts, contracts, notes, etc. It supports automatic text recognition, editing scans, signing and exporting PDF files for iOS 16.0+ and visionOS 1.2+.
artificial intelligence (AI)
32、miniMNIST-c: A minimal neural network implemented in C. This project shows how a minimal neural network can be implemented from scratch in C. With less than 200 lines of code and the C standard library, it implements a minimalist neural network capable of classifying handwritten digits in the MNIST dataset.
33、openvino: A toolkit for optimizing and deploying deep learning models. This project is an Intel open source toolkit designed to accelerate and optimize deep learning model deployment. It helps developers deploy trained models to a variety of hardware platforms and supports deep learning frameworks such as TensorFlow, PyTorch and ONNX.
import openvino as ov
import torch
import torchvision
# load PyTorch model into memory
model = ("pytorch/vision", "shufflenet_v2_x1_0", weights="DEFAULT")
# convert the model into OpenVINO model
example = (1, 3, 224, 224)
ov_model = ov.convert_model(model, example_input=(example,))
# compile the model for CPU device
core = ()
compiled_model = core.compile_model(ov_model, 'CPU')
# infer the model on random data
output = compiled_model({0: ()})
other than
34、90DaysOfDevOps: A 90-day free tutorial on DevOps. What started as the author's notes documenting his knowledge of DevOps has evolved into a community-driven, free tutorial on DevOps covering DevOps concepts, Linux fundamentals, computer networking, containers, Kubernetes, CI/CD, monitoring, and cloud service providers.
35、Atlas: An open source, streamlined version of the Windows operating system. This is an optimized Windows operating system that removes many unused components that slow down the system. The slimmed down version reduces the number of system processes, network and memory usage, resulting in a faster startup and a smoother operating experience. The system is capable of running all kinds of Windows software and games, making it an open source gift for game enthusiasts and high performance users.
36、GPU-Puzzles: An interactive tutorial for learning GPU parallel programming. This program provides 14 questions to help learn GPU programming. You need to write code to solve these problems. Although the code looks like Python, it actually uses the numba library to write CUDA code. What's more interesting is that running the code generates a schematic to help you understand how the code works. In addition, the authors have created an explainer video that shows you how to run the project and see the answers.
37、kando: Cross-platform Pie menu tool. This is a desktop Pie menu tool for launching applications, simulating keyboard shortcuts, opening files, etc. It is especially suitable for use with stylus and touchscreen, and supports Windows, Linux and macOS. From@Student Xu with a story sharing
38、omakub: A beautiful Ubuntu configuration program. This project configures a brand new Ubuntu 24.04 system into a beautiful, fully functional system for web development. With a single command, you can have a configured GNOME desktop environment, window management tools, an Alacritty terminal, Neovim and VSCode editors, and Chrome as your default browser.
39、weather_landscape: Display weather forecasts with interesting animations. This is a project to generate landscape maps based on meteorological data, which replaces the boring display of weather values by vividly showing the weather in the form of animation.
Open Source Books
40、DictionaryByGPT4: English vocabulary book generated with GPT-4. This project generates an English vocabulary book by analyzing more than 8000 English words in the middle and high school exams, as well as the fourth and sixth grade exams through GPT-4. The book describes in detail the meaning of each word, its root, affixes, example sentences, as well as its development history and cultural background.
41、SystemDesign: 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", which teaches interview skills about system design architecture, such as how to design a system like YouTube. From@Liu Ruihua sharing
ultimate
Thank you for participating in the sharing of open source projects partners, welcome more open source enthusiasts to HelloGitHub self-referral/recommendation of open source projects. If you find an interesting project on GitHub, justClick hereShare it with the big guys!
This issue have you interested in open source projects? If so, leave a comment and let me know ~ If you have not read too much, you canClick to readPast Issue Content.
Thank you for reading and if you think this issue is still a good oneAsk for Likes, Ask for Shares ❤️