HelloGitHub Vol.87
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 Mini Text Editor Implemented with Less Than 1,000 Lines of Code. This project is a mini text editor written in C by the author of Redis, which supports syntax highlighting and search functions. It does not rely on third-party libraries, and the code is concise and elegant, with less than 1,000 lines after removing comments and blank lines, and it is contained in a single file, making the source code very refreshing to read.
Unified Log Service for Terminals. Open-sourced by Meituan's tech team, this is a complete front-end logging system that includes client SDK, log processing, and management platform. It is suitable for real-time log collection in terminal scenarios such as mobile APPs, Web, mini-programs, and IoT.
Tool for Wrapping Executable Files as Windows Service. This project allows Windows applications that originally do not support startup at boot to be set as automatically starting at boot, with the entire process only requiring two commands.
Tool for Redrawing Images with Geometric Shapes. This project allows images to be redrawn using geometric shapes such as circles, triangles, and rectangles, and the results can be exported in formats like SVG, PNG, JPG, and GIF.
Ready-to-Use Open Source Privacy Computing Platform. Typically when we query data, the data provider will certainly know our query conditions, otherwise, the results cannot be returned. However, in some cases, the querying party does not want others to know the query conditions, yet still wants to obtain results. This may sound like an impossible task to complete. But don't worry, there's a specialized technical field called privacy computing. If you don't understand it, this open source privacy computing platform, PrimiHub, allows you to experience the charm of privacy computing without a background in privacy computing technology, enabling easy achievement of 'data is usable but not visible'!
# 第一步:下载 git clone https://github.com/primihub/primihub.git # 第二步:启动容器 cd primihub && docker-compose up -d # 第三步:进入容器 docker exec -it primihub-node0 bash # 第四步:执行隐私求交计算 ./primihub-cli --task_config_file="example/psi_ecdh_task_conf.json" I20230616 13:40:10.683375 28 cli.cc:524] all node has finished I20230616 13:40:10.683745 28 cli.cc:598] SubmitTask time cost(ms): 1419 # 查看结果 cat data/result/psi_result.csv "intersection_row" X3 ...
A Streaming Data Platform Fully Compatible with the Kafka API. This project can be regarded as a rewrite of Kafka in C++, designed to be lighter, faster, and more cost-effective. It is simple to deploy and user-friendly, with no external dependencies such as JVM or ZooKeeper.
A Powerful Free Video Editing Software. Although this software is free, it doesn't lag behind paid video editing tools in terms of functionality, and it can be used as an open-source alternative to Premiere. It features a Chinese interface and intuitive operation, supports hundreds of audio and video formats, native material editing, and multiple timeline features, and is applicable to Windows, Linux, and macOS systems.
SQLite Visualization Management Tool. This is a practical desktop management tool for SQLite databases that supports the creation and editing of SQLite database files. It allows users to create, define, modify, and delete tables and indexes through a graphical interface, as well as perform operations such as executing SQL and exporting data.
Docker-based PDF File Generation Service. It supports launching a service through Docker that interacts with Chromium and LibreOffice through an API. You can easily convert documents in formats such as web pages, HTML, Markdown, Word, Excel, etc., into PDF files by calling the interface.
curl \ --request POST 'https://demo.gotenberg.dev/forms/chromium/convert/url' \ --form 'url="https://sparksuite.github.io/simple-html-invoice-template/"' \ -o my.pdf
High-Performance HTTP Request Router in Go Language. This project features a streamlined structure with only three core files. It implements efficient routing through the use of a Radix tree data structure. Notably, the well-known Gin framework also leverages it.
package main import ( "fmt" "net/http" "log" "github.com/julienschmidt/httprouter" ) func Index(w http.ResponseWriter, r *http.Request, _ httprouter.Params) { fmt.Fprint(w, "Welcome!\n") } func Hello(w http.ResponseWriter, r *http.Request, ps httprouter.Params) { fmt.Fprintf(w, "hello, %s!\n", ps.ByName("name")) } func main() { router := httprouter.New() router.GET("/", Index) router.GET("/hello/:name", Hello) log.Fatal(http.ListenAndServe(":8080", router)) }
A Command-Line Presentation Tool. This command-line tool allows you to easily create and present slides in the terminal. It comes ready-to-use and supports Markdown syntax.
A Powerful Code Search Platform. This project enables semantic indexing and analysis of code repositories, supports regular expression search, provides auto-completion when inputting search criteria, and has IDE-like functionality for jumping to definitions and references. It can be used to build an internal code search platform for a company, assisting programmers with cross-project code search, code review, and code tracking.
Go Compiler Built for 'Small-scale' Situations. This is a lightweight Go compiler based on LLVM that can compile Go code into executables for scenarios such as development boards, the Internet of Things, WebAssembly, and more.
Your First Java Game Development Framework. This project is a 2D game development engine based on JavaFX. It requires no installation and features a simple API, enabling you to easily package your developed game into an executable JAR file. Everything has been designed to make you fall in love with game development.
public class BasicGameApp extends GameApplication { @Override protected void initSettings(GameSettings settings) { settings.setWidth(800); settings.setHeight(600); settings.setTitle("Basic Game App"); } public static void main(String[] args) { launch(args); } }
Powerful Survey Questionnaire System. This is a Java-based survey and examination system that supports more than 20 types of questions, import questionnaires from Excel, whitelist responses, public inquiries, data export, and more features.
A Collaborative Knowledge Base System Similar to Notion. It features a refreshing and clean interface with support for offline use. It integrates note-taking, knowledge base, and data table functionalities, and these elements can be combined flexibly.
Deploy Your Personal ChatGPT Web Application for Free. This project offers not only a more user-friendly chat interface for ChatGPT, but also supports one-click deployment to Vercel. All you need to do is provide an OpenAI API Key to have your own private ChatGPT service for free.
Comment System Based on GitHub Discussions. This project is a comment system implemented using the GitHub Discussions API. It is free, ad-free, and database-free, supporting features like custom themes and multi-language.
Mini Program Image Library Generator. This project allows developers of mini programs to create images through JSON, supporting the drawing of text, images, QR codes, various layouts, custom fonts, rounded corners, and more.
A Library for Patching npm Dependencies. When there is a bug in a third-party library that your project depends on, and you need to manually add a piece of code to fix it, this library makes it easy to apply the patch, and supports npm, yarn, pnpm, and more.
Customizable Novel Reader. This lightweight Android reader is ad-free, features a clean interface, and supports custom book sources, local import of novels, multiple page-turning modes, and filtering. Please note, it only functions as a reader and does not provide novel content itself. Importing book sources is required upon initial installation.
Fully Automated Anime Subscription and Download Tool. This project is a tool written in Python for automatically subscribing to and downloading animations. Users simply need to subscribe to anime on Mikan Project and make a few configuration adjustments to comfortably follow their favorite series.
Open Source MOOC Platform Built with Django. This project is a Massive Open Online Course (MOOC) platform jointly open-sourced by MIT and Harvard University. It provides content management and learning management services. The platform supports online lectures, course creation, previewing before publishing, content libraries, student feedback, exams, and other functions. Although it is rich in features, the interface is quite rudimentary.
Fluent Design Style PyQt Component Library. A Fluent Design style component library for PyQt/PySide, which includes various aesthetically pleasing and practical components, supporting the switching of light and dark themes as well as customizable theme colors.
Powerful Python Library for Image Stitching. This is a Python library developed based on the stitching module of OpenCV for quickly stitching images, supporting use in Python scripts and command-line modes.
import stitching stitcher = stitching.Stitcher() # 多个文件 panorama = stitcher.stitch(["img1.jpg", "img2.jpg", "img3.jpg"]) # 通配符 panorama = stitcher.stitch(["img?.jpg"])
Python Library for Symbolic Computation. This is a comprehensive and pure Python-written computer algebra system (CAS), suitable for solving complex mathematical problems. It supports functions such as equation solving, discrete mathematics, calculus, logical computation, geometry, probability, and statistics.
>>> from sympy import Symbol, cos >>> x = Symbol('x') >>> e = 1/cos(x) >>> print(e.series(x, 0, 10)) 1 + x**2/2 + 5*x**4/24 + 61*x**6/720 + 277*x**8/8064 + O(x**10)
Command Line Hex Viewer. This is a command line hex viewer written in Rust, which is simple and pure with a very comfortable color output effect.
Open-Source Flash Player Simulator. This is an Adobe Flash Player simulator developed in Rust, capable of being embedded on websites through WebAssembly, used with browser plugins, or played locally via the command line for Flash files. It leverages Rust and WebAssembly technology to address the various memory safety issues inherent in the original Flash Player. Although Flash has become a thing of the past, it still contains many enjoyable animations and games that should not be forgotten.
Location Simulator for iOS Devices. This is a macOS application that can easily modify the location information of iOS and iPadOS devices. There is no need to jailbreak or install apps on the mobile device. Just connect the device to the computer via USB or WiFi, and you can easily complete location modification.
SwiftUI Cheat Sheet. This project is a SwiftUI 2.0 cheat sheet that includes code snippets ready for copy-paste and screenshots of the running effects.
Microsoft's Open-Sourced Beginner's Guide to AI. This is a completely free AI course for those with no prior knowledge, consisting of 24 lessons over 12 weeks. You will learn about the history of AI, basic concepts, mainstream frameworks, as well as knowledge in the fields of Computer Vision (CV) and Natural Language Processing (NLP).
Drag-to-Edit GAN Completes P-Graph Editing. This is the official source code of DragGAN, which supports image editing through mouse dragging. Anyone can easily modify the posture, expression, shape, layout, and more of objects in the image by precisely controlling the direction of pixels. For example, it enables a dog that was originally standing in the picture to sit down.
Google’s Open-Source Cross-Platform Machine Learning Framework. This is a machine learning toolkit that can be effortlessly deployed to mobile devices, the web, PCs, and IoT devices. It includes models for object detection, image classification, face recognition, gesture recognition, text classification, language detection, and audio classification.
Amazing macOS Screensavers Collection. Here you will find a variety of macOS screensavers with different styles, patterns, and fun elements, sure to have one that suits your taste.
A Checklist to Protect Your Digital Security and Privacy. This is a list that teaches you how to safeguard your personal information, including aspects such as passwords, web browsing, emails, social networks, mobile phones, and computers.
Advanced R Language Console. This project serves as an alternative to the default R console, supporting features like auto-completion, multi-line editing, and syntax highlighting, making it more convenient and user-friendly.
Google's Open Source Core Web Vitals. These metrics can help webmasters improve the user experience of their websites, encompassing three aspects: LCP (Loading Performance), FID (Interactivity), and CLS (Visual Stability).
An Open-Source RISC-V Processor Made in China. The 'XiangShan' is an open-source RISC-V processor project initiated by the Institute of Computing Technology, Chinese Academy of Sciences.
A Book on How to Write Clean Code. This book begins with an explanation of what constitutes Clean Code and step-by-step teaches you how to write code that is concise, easy to understand, and maintainable, to help you develop good coding habits.
- C
- C#
- C++
- Go
- Java
- JavaScript
- Kotlin
- Python
- Rust
- Swift
- AI
- Other
- Book