From 49927a60f70406dc36c1ae846cbac0ad4fbdb952 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Tue, 7 Nov 2017 14:51:27 +0800 Subject: [PATCH 1/9] Cryptography: Add libhydrogen,remove libmcrypt,update licenses --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 3ac57ae..4e31431 100644 --- a/README.md +++ b/README.md @@ -213,14 +213,14 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin ## Cryptography *Cryptography and Encryption Libraries* -* [Bcrypt](http://bcrypt.sourceforge.net/) - A cross platform file encryption utility. Encrypted files are portable across all supported operating systems and processors. +* [Bcrypt](http://bcrypt.sourceforge.net/) - A cross platform file encryption utility. Encrypted files are portable across all supported operating systems and processors. [BSD] * [BeeCrypt](http://beecrypt.sourceforge.net/) * [Botan](http://botan.randombit.net/) - A crypto library for C++. [BSD-2] -* [Crypto++](http://www.cryptopp.com/) - A free C++ class library of cryptographic schemes. [Boost] +* [Crypto++](https://github.com/weidai11/cryptopp) - A free C++ class library of cryptographic schemes. [Boost] [website](http://www.cryptopp.com/) * [GnuPG](https://www.gnupg.org/) - A complete and free implementation of the OpenPGP standard. [GPL] * [GnuTLS](http://www.gnutls.org/) - A secure communications library implementing the SSL, TLS and DTLS protocols. [LGPL2.1] -* [Libgcrypt](http://www.gnu.org/software/libgcrypt/) -* [libmcrypt]() +* [Libgcrypt](http://www.gnu.org/software/libgcrypt/) - A general purpose cryptographic library originally based on code from GnuPG. [LGPLv2.1+] +* [libhydrogen](https://github.com/jedisct1/libhydrogen) - A lightweight, secure, easy-to-use crypto library for constrained environments. [ISC] * [LibreSSL](http://www.libressl.org/) - A free version of the SSL/TLS protocol forked from OpenSSL in 2014. [?] * [libsodium](https://github.com/jedisct1/libsodium) - P(ortable|ackageable) NaCl-based crypto library, opinionated and easy to use. [ISC] * [LibTomCrypt](https://github.com/libtom/libtomcrypt) - A fairly comprehensive, modular and portable cryptographic toolkit. [WTFPL] From 3635ef17062a198da8c71ccc3c9b8f526dec4c23 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 13:52:47 +0800 Subject: [PATCH 2/9] Networking: Add libwebsockets --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4e31431..0fa44e4 100644 --- a/README.md +++ b/README.md @@ -471,6 +471,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [Dyad.c](https://github.com/rxi/dyad) - Asynchronous networking for C. [MIT] * [libcurl](http://curl.haxx.se/libcurl/) - Multiprotocol file transfer library. [MIT/X derivate license] * [libjingle](https://code.google.com/p/libjingle/) - Google talk voice and P2P interoperability library. [BSD] +* [libwebsockets](https://github.com/warmcat/libwebsockets) - A lightweight pure C WebSocket implementation that provides both client and server libraries. [LGPL2.1 + static link exception] [website](https://libwebsockets.org/) * [Mongoose](https://github.com/cesanta/mongoose) - Extremely lightweight webserver. [GPL2] * [Muduo](https://github.com/chenshuo/muduo) - A C++ non-blocking network library for multi-threaded server in Linux. [BSD] * [net_skeleton](https://github.com/cesanta/fossa) - TCP client/server library for C/C++. [GPL2] From 913b21f3d10720ad45bdceb9127c6949aca415ff Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 14:12:38 +0800 Subject: [PATCH 3/9] Cryptography: Add description and license for BeeCrypt --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0fa44e4..10fc3b7 100644 --- a/README.md +++ b/README.md @@ -214,7 +214,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin *Cryptography and Encryption Libraries* * [Bcrypt](http://bcrypt.sourceforge.net/) - A cross platform file encryption utility. Encrypted files are portable across all supported operating systems and processors. [BSD] -* [BeeCrypt](http://beecrypt.sourceforge.net/) +* [BeeCrypt](http://beecrypt.sourceforge.net/) - A portable and fast cryptography library. [LGPLv2.1+] * [Botan](http://botan.randombit.net/) - A crypto library for C++. [BSD-2] * [Crypto++](https://github.com/weidai11/cryptopp) - A free C++ class library of cryptographic schemes. [Boost] [website](http://www.cryptopp.com/) * [GnuPG](https://www.gnupg.org/) - A complete and free implementation of the OpenPGP standard. [GPL] From 65a74eca1e0f6fd7289ec802e2ccabc4228d68e3 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 15:28:13 +0800 Subject: [PATCH 4/9] Networking: Add libquic --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 10fc3b7..7a9ff83 100644 --- a/README.md +++ b/README.md @@ -471,6 +471,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [Dyad.c](https://github.com/rxi/dyad) - Asynchronous networking for C. [MIT] * [libcurl](http://curl.haxx.se/libcurl/) - Multiprotocol file transfer library. [MIT/X derivate license] * [libjingle](https://code.google.com/p/libjingle/) - Google talk voice and P2P interoperability library. [BSD] +* [libquic](https://github.com/devsisters/libquic) - A QUIC protocol library extracted from Chromium's QUIC Implementation. [BSD] * [libwebsockets](https://github.com/warmcat/libwebsockets) - A lightweight pure C WebSocket implementation that provides both client and server libraries. [LGPL2.1 + static link exception] [website](https://libwebsockets.org/) * [Mongoose](https://github.com/cesanta/mongoose) - Extremely lightweight webserver. [GPL2] * [Muduo](https://github.com/chenshuo/muduo) - A C++ non-blocking network library for multi-threaded server in Linux. [BSD] From 5108aa0b072ad15d70cf3bdcce3b3a7259e51c9d Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 15:47:27 +0800 Subject: [PATCH 5/9] Networking: Remove net_skeleton(fossa) --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 7a9ff83..5558132 100644 --- a/README.md +++ b/README.md @@ -475,7 +475,6 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [libwebsockets](https://github.com/warmcat/libwebsockets) - A lightweight pure C WebSocket implementation that provides both client and server libraries. [LGPL2.1 + static link exception] [website](https://libwebsockets.org/) * [Mongoose](https://github.com/cesanta/mongoose) - Extremely lightweight webserver. [GPL2] * [Muduo](https://github.com/chenshuo/muduo) - A C++ non-blocking network library for multi-threaded server in Linux. [BSD] -* [net_skeleton](https://github.com/cesanta/fossa) - TCP client/server library for C/C++. [GPL2] * [nope.c](https://github.com/riolet/nope.c) - A C language-based ultra-light software platform for scalable server-side and networking applications. Think node.js for C programmers. [GPL2] * [Onion](https://github.com/davidmoreno/onion) - HTTP server library in C designed to be lightweight and easy to use. [Apache2/GPL2] * [POCO](https://github.com/pocoproject) :zap: - C++ class libraries and frameworks for building network- and internet-based applications that run on desktop, server, mobile and embedded systems. [Boost] [website](http://pocoproject.org/) From 0ae4420f7760eb34bf7beb5e9b0da201610b280a Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 15:55:05 +0800 Subject: [PATCH 6/9] Miscellaneous: Remove SLDR --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index 5558132..5fa1582 100644 --- a/README.md +++ b/README.md @@ -618,7 +618,6 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [semver.c](https://github.com/h2non/semver.c) - A semver parser and render in ANSI C. [MIT] * [Serial Communication Library](https://github.com/wjwwood/serial) - Cross-platform, Serial Port library written in C++. [MIT] * [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. [PublicDomain] -* [SLDR](https://github.com/cesanta/sldr) - Super Light DNS Resolver. [GPL2/Commercial] * [SLRE](https://github.com/cesanta/slre) - Super Light Regexp engine for C/C++. [GPL2/Commercial] * [Stage](https://github.com/rtv/Stage) - Mobile robot simulator. [GPL2] * [stdman](https://github.com/jeaye/stdman) Formatted C++11/14 stdlib man pages (from cppreference). [MIT] From 96dda0cad7822b6b921bac575041da71c76f43ab Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 16:06:49 +0800 Subject: [PATCH 7/9] Add Regular Expression section --- README.md | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 5fa1582..c9c5976 100644 --- a/README.md +++ b/README.md @@ -30,6 +30,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin - [Networking](#networking) - [PDF](#pdf) - [Physics](#physics) + - [Regular Expression](#regular-expression) - [Robotics](#robotics) - [Scientific Computing](#scientific-computing) - [Scripting](#scripting) @@ -505,6 +506,13 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [ofxBox2d](https://github.com/vanderlin/ofxBox2d) - openFrameworks wrapper for Box2D. [BSD-like] * [Simbody](https://github.com/simbody/simbody) - High-performance C++ multibody dynamics/physics library for simulating articulated biomechanical and mechanical systems like vehicles, robots, and the human skeleton. [Apache2] +## Regular Expression + +* [CppVerbalExpressions](https://github.com/VerbalExpressions/CppVerbalExpressions) - C++ regular expressions made easy. [MIT] +* [PCRE](http://pcre.org/) - A regular expression C library inspired by the regular expression capabilities in Perl. [BSD] +* [RE2](https://github.com/google/re2) - A software library for regular expressions via a finite-state machine using automata theory. [BSD-3-Clause] +* [SLRE](https://github.com/cesanta/slre) - Super Light Regexp engine for C/C++. [GPLv2/Commercial] + ## Robotics * [MOOS-IvP](http://moos-ivp.org) - A set of open source C++ modules for providing autonomy on robotic platforms, in particular autonomous marine vehicles. @@ -593,7 +601,6 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [{fmt}](https://github.com/fmtlib/fmt) :zap: - Small, safe and fast formatting library for C++. [Simplified BSD] * [FastFormat](http://www.fastformat.org) - Fast, Safe C++ Formatting inspired by log4j and Pantheios [Simplified BSD] * [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] -* [CppVerbalExpressions](https://github.com/VerbalExpressions/CppVerbalExpressions) - C++ regular expressions made easy. [MIT] * [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] * [c-smart-pointers](https://github.com/Snaipe/libcsptr) - Smart pointers for the (GNU) C programming language. [MIT] * [cxx-prettyprint](https://github.com/louisdx/cxx-prettyprint) - A pretty printing library for C++ containers. [Boost] @@ -608,9 +615,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [libnih](https://github.com/keybuk/libnih) - A lightweight library of C functions and structures. [GPL2.1] * [libusb](http://www.libusb.org/) - A universal USB library which allows for portable access to USB devices. [LGPL2] * [Mach7](https://github.com/solodon4/Mach7) - A Pattern-matching library for C++. [BSD] -* [PCRE](http://pcre.org/) - A regular expression C library inspired by the regular expression capabilities in Perl. [BSD] * [pdqsort](https://github.com/orlp/pdqsort) - Pattern-defeating quicksort. [zlib] -* [RE2](https://github.com/google/re2) - A software library for regular expressions via a finite-state machine using automata theory. * [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Commercial] * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] @@ -618,7 +623,6 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [semver.c](https://github.com/h2non/semver.c) - A semver parser and render in ANSI C. [MIT] * [Serial Communication Library](https://github.com/wjwwood/serial) - Cross-platform, Serial Port library written in C++. [MIT] * [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. [PublicDomain] -* [SLRE](https://github.com/cesanta/slre) - Super Light Regexp engine for C/C++. [GPL2/Commercial] * [Stage](https://github.com/rtv/Stage) - Mobile robot simulator. [GPL2] * [stdman](https://github.com/jeaye/stdman) Formatted C++11/14 stdlib man pages (from cppreference). [MIT] * [stb](https://github.com/nothings/stb) :zap: - A range of single-file libraries for C/C++. [PublicDomain] From 2a3f6f5ce911d6c00d19cde6ffbd1cb907f9255e Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 16:21:00 +0800 Subject: [PATCH 8/9] Miscellaneous: Move `HTTP Parser` to Networking section --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index c9c5976..fd8962c 100644 --- a/README.md +++ b/README.md @@ -30,7 +30,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin - [Networking](#networking) - [PDF](#pdf) - [Physics](#physics) - - [Regular Expression](#regular-expression) + - [Regular Expression](#regular-expression) - [Robotics](#robotics) - [Scientific Computing](#scientific-computing) - [Scripting](#scripting) @@ -470,6 +470,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [cpr](https://github.com/whoshuu/cpr) - A modern C++ HTTP requests library with a simple but powerful interface. Modeled after the Python Requests module. [MIT] [website](https://whoshuu.github.io/cpr/) * [curlcpp](https://github.com/JosephP91/curlcpp) - An object oriented C++ wrapper for CURL(libcurl). [MIT] * [Dyad.c](https://github.com/rxi/dyad) - Asynchronous networking for C. [MIT] +* [HTTP Parser](https://github.com/nodejs/http-parser) :zap: - A http request/response parser for C. [MIT] * [libcurl](http://curl.haxx.se/libcurl/) - Multiprotocol file transfer library. [MIT/X derivate license] * [libjingle](https://code.google.com/p/libjingle/) - Google talk voice and P2P interoperability library. [BSD] * [libquic](https://github.com/devsisters/libquic) - A QUIC protocol library extracted from Chromium's QUIC Implementation. [BSD] @@ -606,7 +607,6 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [cxx-prettyprint](https://github.com/louisdx/cxx-prettyprint) - A pretty printing library for C++ containers. [Boost] * [DynaPDF](http://www.dynaforms.com/) - An easy-to-use PDF generation library. [Commercial] * [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. -* [HTTP Parser](https://github.com/nodejs/http-parser) :zap: - A http request/response parser for C. [MIT] * [Kangaru](https://github.com/gracicot/kangaru) - A dependency injection container for C++11 and C++14. [MIT] * [Klib](https://github.com/attractivechaos/klib) - Small and lightweight implementations of common algorithms and data structures. [MIT] * [libsigc++](http://libsigc.sourceforge.net/) - A typesafe callback system for standard C++. [LGPL] From aea9ee18ae8045597c57b6e56cdbb278e2672837 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Fri, 17 Nov 2017 16:41:55 +0800 Subject: [PATCH 9/9] Game Engine: Add KlayGE --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fd8962c..a8fdf9a 100644 --- a/README.md +++ b/README.md @@ -287,6 +287,7 @@ A curated list of awesome C/C++ frameworks, libraries, resources, and shiny thin * [GamePlay](https://github.com/gameplay3d/GamePlay) - A cross-platform native C++ game framework for creating 2D/3D mobile and desktop games. [Apache2] * [Godot](https://github.com/godotengine/godot) - A fully featured, open source, MIT licensed, game engine. [MIT] * [Grit](http://www.gritengine.com/) - Community project to build a free game engine for implementing open world 3D games. [MIT] +* [KlayGE](https://github.com/gongminmin/KlayGE) - a cross-platform open source game engine with plugin-based architecture. [GPLv2] [website](http://www.klayge.org/) * [Oxygine](http://oxygine.org/) - A cross-platform 2D C++ game engine. [MIT] * [Panda3D](https://github.com/panda3d/panda3d) - A game engine, a framework for 3D rendering and game development for Python and C++ programs. [Modified BSD] [website](https://www.panda3d.org/) * [Polycode](https://github.com/ivansafrin/Polycode) - A cross-platform framework for creative code in C++ (with Lua bindings). [MIT] [website](http://polycode.org/)