For beginners, small open source projects are easier to understand and learn. So what small open source projects are worth learning currently? This article collects and organizes some great small projects recommended by netizens on Zhihu. The code is basically within 5,000 lines. If you are interested, you can take a look~

1、SeaJS
Sea.js is a JavaScript module loading framework that follows the CommonJS specification, enabling modular development and loading mechanisms for JavaScript. Sea.js pursues simple, natural code writing and organization, and its code is very streamlined.
2、Koa
Koa is the next-generation web framework for Node.js. Designed by the Express team. It aims to provide a smaller, more expressive, and more reliable foundation for developing web applications and APIs.
3、pssh
pssh provides a parallel version of the OpenSSH tools, especially suitable for controlling situations where a large number of machines need to be connected, including parallel versions of ssh, scp, rsync, and kill commands. This project is written in Python, with clear and concise code and well-defined data structures. After reading it, you will praise it.
4、grep-at-point
When writing code, sometimes you need to check where a function/class/variable is used. This project is written in Emacs Lisp and can search for the word under the current cursor in all files with specified extensions in the project directory.
5、compile-make
This project fulfills the need for one-click compilation in Emacs. It looks for a Makefile in the project directory and executes the make command to compile. Language: Emacs Lisp; Lines of code: 19.
6、sigslot
A very streamlined cross-platform implementation of signal/slot. The source code has more than 2,000 lines, but more than half is code for template adaptation to different numbers of parameters, with less than 1,000 lines of real substance.
Gtalk Source Code Anatomy: Introduction to sigslot
7、UCOS
uC/OS II (Micro Control Operation System Two) is a ROM-based, scalable, preemptive, real-time multitasking kernel with high portability. It is especially suitable for microprocessors and controllers, and is a real-time operating system (RTOS) with performance comparable to many commercial operating systems.
8、SQLite
SQLite is a relational database management system that complies with ACID. It is contained in a relatively small C library. It is a public domain project established by D. Richard Hipp. SQLite can also be used as a desktop database.
9、thttpd
thttpd is a small, simple, portable, fast, and secure HTTP server.
10、Boa Webserver
Boa is a small web server that can be used on multiple platforms and is relatively common in embedded systems.
11、C4
A C compiler implemented with 4 functions, about 500 lines. It is basically quite complete and can compile itself.
12、GLib
GLib is a development package containing many useful C programs, such as trees, hashes, lists, etc. GLib was previously part of the GTK toolkit, but is now an independent project.
13、tj/co
Less than 300 lines, used to improve Node.js asynchronous callback syntax.
14、shadowsocks
Shadowsocks is a lightweight SOCKS proxy software based on Python (those who use it know it).
15、aosabook
This is the continuation of the awesome book aosabook: the source code for '500 Lines or Less'. The code in each chapter does not exceed 500 lines, implementing 'large systems' such as web servers, crawlers, OCR, etc. Each chapter is completed by an expert in a different field. Looking at the author list, it can be called a hall of fame in the software field.
Article source: http://code.csdn.net/news/2822568