From 82a30b5262188cc2d50a003a4a452041e142faf2 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 19 Dec 2023 12:55:11 +0900 Subject: [PATCH 001/154] Add Office Open XML category (#1477) --- README.md | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 5cf422447..d2373ab54 100644 --- a/README.md +++ b/README.md @@ -37,6 +37,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny - [Memory Allocation](#memory-allocation) - [Multimedia](#multimedia) - [Networking](#networking) + - [Office Open XML](#office-open-xml) - [PDF](#pdf) - [Physics](#physics) - [Reflection](#reflection) @@ -875,6 +876,17 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [PcapPlusPlus](https://github.com/seladb/PcapPlusPlus) - a multiplatform C++ network sniffing and packet parsing and crafting framework. [Unlicense] * [ZeroMQ](https://github.com/zeromq/libzmq) - High-speed, modular asynchronous communication library. [LGPL3/MPL2] [website](http://zeromq.org/) +## Office Open XML +*Libraries for parsing and manipulating xlsx, pptx, docx, etc.* + +* [DuckX](https://github.com/amiremohamadi/DuckX) - C++ library for creating and modifying Microsoft Word (.docx) files. [MIT] +* [FreeXL](https://www.gaia-gis.it/fossil/freexl/index) - an open source library to extract valid data from within Spreadsheets. [MPL/GPL-2/LGPL-2] +* [libxls](https://github.com/libxls/libxls) - Read binary Excel files from C/C++ [BSD-2-Clause] +* [libxlsxwriter](https://github.com/jmcnamara/libxlsxwriter) - A C library for creating Excel XLSX files. [BSD-2-Clause] [website](https://libxlsxwriter.github.io/) +* [OpenXLSX](https://github.com/troldal/OpenXLSX) - A C++ library for reading, writing, creating and modifying Microsoft Excel® (.xlsx) files. [BSD-3-Clause] +* [SimpleXlsxWriter](https://sourceforge.net/projects/simplexlsx/) - XLSX files writer for Microsoft Excel 2007 and above. [zlib] +* [XLSX I/O](https://github.com/brechtsanders/xlsxio) - C library for reading and writing .xlsx files. [MIT] + ## PDF *Libraries for parsing and manipulating PDF documents.* @@ -1093,7 +1105,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [CPPItertools](https://github.com/ryanhaining/cppitertools) - Range-based for loop add-ons inspired by the Python builtins and itertools library. [BSD-2-Clause] * [date](https://github.com/HowardHinnant/date) - A date and time library based on the C++11/14/17 header. [MIT] [website](https://howardhinnant.github.io/date/date.html) * [D++ (DPP)](https://github.com/brainboxdotcc/DPP) - A lightweight, high performance and scalable C++ library for creating Discord Bots. [Apache2] [website](https://dpp.dev) -* [DuckX](https://github.com/amiremohamadi/DuckX) - C++ library for creating and modifying Microsoft Word (.docx) files. [MIT] * [DynaMix](https://github.com/iboB/dynamix) - A library which allows you to compose and modify objects at run time. [MIT] * [emio](https://github.com/Viatorus/emio) - A safe and fast high-level and low-level character input/output library. [MIT] * [faker-cxx](https://github.com/cieslarmichal/faker-cxx) - C++20 Faker library for generating fake (but realistic) data for testing and development. [MIT] From b232d7ce7b4e4489e22c2083d15e420cb98d2a06 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 20 Dec 2023 11:31:30 +0900 Subject: [PATCH 002/154] Add quickjs (embeddedable javascript engine) (#1478) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d2373ab54..6d81aafff 100644 --- a/README.md +++ b/README.md @@ -991,6 +991,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) * [pocketpy](https://github.com/blueloveTH/pocketpy) - C++17 header-only Python interpreter for game scripting. [MIT] [website](https://pocketpy.dev/) * [pybind11](https://github.com/pybind/pybind11) - Seamless operability between C++11 and Python. [BSD] +* [QuickJS](https://bellard.org/quickjs/) - a small and embeddable Javascript engine. [MIT] * [SIP](https://riverbankcomputing.com/software/sip/intro) - C or C++ Bindings Generator for Python v2 and v3. [GPL] * [sol2](https://github.com/ThePhD/sol2) - A C++ <-> Lua API wrapper with advanced features and top notch performance. [MIT] * [SWIG](https://github.com/swig/swig) - A wrapper/interface Generator that let you link your c++ code to Javascript, Perl, PHP, Python, Tcl and Ruby. [GPL/Output not licensed] [website](http://www.swig.org/) From 2600811976adbca1e23fd229b99fb85f8a67d59c Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 21 Dec 2023 02:50:12 +0900 Subject: [PATCH 003/154] Add iguana (universal serialization engine) (#1479) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6d81aafff..4e0573aa8 100644 --- a/README.md +++ b/README.md @@ -1012,6 +1012,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [FastBinaryEncoding](https://github.com/chronoxor/FastBinaryEncoding) - Fast Binary Encoding is ultra fast and universal serialization solution for C++, C#, Go, Java, JavaScript, Kotlin, Python, Ruby, Swift. [MIT] * [FlatBuffers](https://github.com/google/flatbuffers) - A Memory efficient serialization library. [Apache2] * [Kaitai Struct](http://kaitai.io) - A declarative language to describe various binary data structures and a compiler to generate C++ parser code. [GPLv3+][MIT][Apache2] +* [iguana](https://github.com/qicosmos/iguana) - a modern, universal and easy-to-use serialization engine developed in C++20 and C++17. [Apache2] * [MessagePack](https://github.com/msgpack/msgpack-c) - Efficient binary serialization format "like JSON" for C and C++. [Apache2] [website](http://msgpack.org/) * [mrpt-serialization](https://github.com/mrpt/mrpt/) - Versioned serialization to binary or text formats. [BSD] [website](https://docs.mrpt.org/reference/latest/group_mrpt_serialization_grp.html) * [nanopb](https://github.com/nanopb/nanopb) - Small code-size Protocol Buffers implementation in ANSI C. [Zlib] From eb668ad064ac9fbfe03271883b41813f5830c28e Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 23 Dec 2023 23:43:34 +0900 Subject: [PATCH 004/154] Add cpp-sort (sorting algorithms) (#1480) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4e0573aa8..0bc75ecfc 100644 --- a/README.md +++ b/README.md @@ -1033,6 +1033,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Sorting ++ [cpp-sort](https://github.com/Morwenn/cpp-sort) - Sorting algorithms & related tools for C++14. [MIT] * [pdqsort](https://github.com/orlp/pdqsort) - Pattern-defeating quicksort. [zlib] * [Timsort](https://github.com/gfx/cpp-TimSort) - A templated stable sorting function which outperforms quicksort-based algorithms including std::sort, for reversed or semi-sorted data. [MIT] * [Indiesort](https://github.com/mattreecebentley/plf_indiesort) - A sort wrapper which enables the use of std::sort (& other random-access sort functions) with non-random-access containers, and also improves sort performance for large/non-trivially-copyable types in random-access containers and arrays. [zLib] [website](https://plflib.org/indiesort.htm) From 7f2faf9c17500dfe69a47905836105ace2250c46 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 26 Dec 2023 15:50:37 +0900 Subject: [PATCH 005/154] Add lunasvg(svg rendering library) (#1481) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0bc75ecfc..5bd215e5d 100644 --- a/README.md +++ b/README.md @@ -587,6 +587,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Irrlicht](http://irrlicht.sourceforge.net/) - A high performance realtime 3D engine written in C++. [zlib] * [libigl](https://github.com/libigl/libigl) - Simple C++ geometry processing library. [MPL2] * [LLGL](https://github.com/LukasBanana/LLGL) - Low Level Graphics Library (LLGL) is a thin abstraction layer for the modern graphics APIs. [BSD-3-Clause] +* [LunaSVG](https://github.com/sammycage/lunasvg) - a standalone SVG rendering library in C++. [MIT] * [magnum](https://github.com/mosra/magnum) - Lightweight and modular C++11/C++14 graphics middleware for games and data visualization. [MIT] [website](http://magnum.graphics) * [micro-gl](https://github.com/micro-gl/micro-gl) - Realtime, Embeddable, Headers Only C++11 CPU vector graphics. no STD lib, no FPU and no GPU required. [CUSTOM] [website](https://micro-gl.github.io/docs/microgl) * [NanoVG](https://github.com/memononen/nanovg) - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations. [Zlib] From 508c09239ee199efcc78226e0cd1a460f78b96a8 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 27 Dec 2023 23:48:51 +0900 Subject: [PATCH 006/154] Add TGUI (Cross-platform modern c++ GUI) (#1482) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5bd215e5d..067607d8a 100644 --- a/README.md +++ b/README.md @@ -565,6 +565,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [RmlUi](https://github.com/mikke89/RmlUi) - The HTML/CSS User Interface library evolved. Fork of libRocket. [MIT] * [Sciter](http://sciter.com/) - Sciter is an embeddable HTML/CSS/scripting engine aimed to be used as an UI layer of modern desktop applications. [Free/Commercial] * [Slint](https://github.com/slint-ui/slint) - Lightweight GUI toolkit for desktop and embedded. [GPL/Free/Proprietary] [website](https://slint.dev/) +* [TGUI](https://github.com/texus/TGUI) - Cross-platform modern c++ GUI. [Zlib] [website](https://tgui.eu/) * [wxWidgets](http://wxwidgets.org/) - A C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base. [Own LGPL] * [xtd](https://github.com/gammasoft71/xtd) - Modern C++17/20 framework to create console (CLI), forms (GUI like WinForms) and tunit (unit tests like Microsoft Unit Testing Framework) applications on Windows, macOS, Linux, iOS and android. [MIT] * [Yue](https://github.com/yue/yue) - A library for creating native cross-platform GUI apps. [LGPLv2] From 4cabd41087a6f9dea673028d7d6e96929bfe7cca Mon Sep 17 00:00:00 2001 From: Bader-eddine Ouaich <49657842+baderouaich@users.noreply.github.com> Date: Sat, 30 Dec 2023 00:06:16 +0100 Subject: [PATCH 007/154] Add tgbotxx (Telegram Bot C++ Library) (#1483) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 067607d8a..9349a03fd 100644 --- a/README.md +++ b/README.md @@ -1148,6 +1148,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [stb](https://github.com/nothings/stb) :zap: - A range of single-file libraries for C/C++. [PublicDomain] * [StringZilla](https://github.com/ashvardanian/StringZilla) - the Godzilla of string libraries, splitting, sorting, and shuffling large textual datasets faster than you can say "Tokyo Tower". [Apache-2.0] * [StrTk](https://www.partow.net/programming/strtk/index.html) - A C++ library consisting of high performance string processing routines. [MIT] +* [tgbotxx](https://github.com/baderouaich/tgbotxx) - Telegram Bot C++ Library. [MIT] * [Tulip Indicators](https://tulipindicators.org) - A C library of over 100 financial technical analysis indicators. [LGPL] * [ub-canaries](https://github.com/regehr/ub-canaries) - A collection of C/C++ programs that try to get compilers to exploit undefined behavior. * [value-category-cheatsheet](https://github.com/jeaye/value-category-cheatsheet) A PDF cheatsheet for lvalues, rvalues, and the like. [Jank copyleft] From 173d6bb4b8ff075f72d84c9b6f856fb39381288b Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 30 Dec 2023 16:22:49 +0900 Subject: [PATCH 008/154] Add lwlog (logging library) (#1484) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9349a03fd..b5c097cac 100644 --- a/README.md +++ b/README.md @@ -721,6 +721,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Log4cpp](http://log4cpp.sourceforge.net/) - A library of C++ classes for flexible logging to files, syslog, IDSA and other destinations. [LGPL] * [log4cplus](https://github.com/log4cplus/log4cplus) - A simple to use C++ logging API providing thread-safe, flexible, and arbitrarily granular control over log management and configuration. [BSD & Apache2] * [loguru](https://github.com/emilk/loguru) - A lightweight C++ logging library. [PublicDomain] +* [lwlog](https://github.com/ChristianPanov/lwlog) - Very fast synchronous and asynchronous C++17 logging library. [MIT] * [plog](https://github.com/SergiusTheBest/plog) - Portable and simple log for C++ in less than 1000 lines of code. [MPL2] * [reckless](https://github.com/mattiasflodin/reckless) - Low-latency, high-throughput, asynchronous logging library for C++. [MIT] * [spdlog](https://github.com/gabime/spdlog) - Super fast, header only, C++ logging library. From e67a6a9540658d139439058ab2108b0170fdcc1c Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 3 Jan 2024 00:20:41 +0900 Subject: [PATCH 009/154] Add Jolt Physics (rigid body physics library), sort by library name (#1485) --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index b5c097cac..0ebf7990d 100644 --- a/README.md +++ b/README.md @@ -910,10 +910,11 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Box2D](https://github.com/erincatto/Box2D) - A 2D physics engine for games. [BSD-like] * [Bullet](https://github.com/bulletphysics/bullet3) - A 3D physics engine for games. [zlib] [website](http://bulletphysics.org) * [Chipmunk](https://github.com/slembcke/Chipmunk2D) - A fast and lightweight 2D game physics library. [MIT] [website](https://chipmunk-physics.net/) +* [Jolt Physics](https://github.com/jrouwe/JoltPhysics) - A multi core friendly rigid body physics and collision detection library. [MIT] +* [Kratos](https://github.com/KratosMultiphysics/Kratos) - framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. [BSD] [website](http://www.cimne.com/kratos/) * [LiquidFun](https://github.com/google/liquidfun) - A 2D physics engine for games. [BSD-like] * [Newton Dynamics](https://github.com/MADEAPPS/newton-dynamics) - An integrated solution for real time simulation of physics environments. [zlib] * [ODE](http://www.ode.org/) - Open Dynamics Engine - An open source, high performance library for simulating rigid body dynamics. [BSD&LGPL] -* [Kratos](https://github.com/KratosMultiphysics/Kratos) - framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. [BSD] [website](http://www.cimne.com/kratos/) * [ofxBox2d](https://github.com/vanderlin/ofxBox2d) - openFrameworks wrapper for Box2D. [BSD-like] * [PhysX](https://github.com/NVIDIAGameWorks/PhysX-3.4) - An open-source realtime physics engine middleware SDK developed by Nvidia as a part of Nvidia GameWorks software suite. [BSD-3-Clause] * [PlayRho](https://github.com/louis-langholtz/PlayRho) - An interactive physics engine & library. [Zlib] From 83e3d2b060c74b5fc24e9a2949607ce40d7dc197 Mon Sep 17 00:00:00 2001 From: Ryan Hardy <155328211+ryyHardy@users.noreply.github.com> Date: Tue, 2 Jan 2024 18:50:53 -0500 Subject: [PATCH 010/154] Add The Cherno's C++ playlist to Videos (#1486) Add TheCherno's C++ playlist to Videos --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0ebf7990d..75af5aae3 100644 --- a/README.md +++ b/README.md @@ -1367,6 +1367,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Caleb Curry's C Programming Tutorials](https://www.youtube.com/playlist?list=PL_c9BZzLwBRKKqOc9TJz1pP0ASrxLMtp2) - An all-in-one playlist of tutorials for C programming. * [C Programming Tutorials](https://www.youtube.com/playlist?list=PL78280D6BE6F05D34) - All of TheNewBoston's C programming tutorials are right here. * [Bo Qian's playlist](https://www.youtube.com/user/BoQianTheProgrammer/playlists) - Boost Library, C++ Standard Library, Modern C++, Advanced C++, Advanced STL, ... +* [The Cherno's C++ Playlist](https://www.youtube.com/playlist?list=PLlrATfBNZ98dudnM48yfGUldqGD0S4FFb) - Extensive C++ tutorial series by The Cherno. ## Websites *Useful C or C++ related websites.* From 52c951b335889d2519df72c19c0a8e9d3ea6eca4 Mon Sep 17 00:00:00 2001 From: Miguel Nischor Date: Sat, 6 Jan 2024 19:36:24 -0400 Subject: [PATCH 011/154] Added C++ team blog (#1487) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 75af5aae3..fd3be0f62 100644 --- a/README.md +++ b/README.md @@ -1408,6 +1408,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Sutter’s Mill](https://herbsutter.com/gotw/) * [Vorbrodt's C++ Blog](https://vorbrodt.blog/) * [foonathan::blog()](https://foonathan.net/index.html) +* [C++ Team Blog](https://devblogs.microsoft.com/cppblog/) - Dev blog from the Microsoft Visual C++ team ## Other Awesome Projects *Collection of useful codes, snippets, ...* From 25af87818406d7ea4b0e8292aae2b9f8a51b2200 Mon Sep 17 00:00:00 2001 From: Ash Vardanian <1983160+ashvardanian@users.noreply.github.com> Date: Mon, 8 Jan 2024 00:35:32 +0000 Subject: [PATCH 012/154] Added Unum and other ML libraries (#1488) --- README.md | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index fd3be0f62..d6d6c5338 100644 --- a/README.md +++ b/README.md @@ -344,6 +344,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [dynamic_bitset](https://github.com/pinam45/dynamic_bitset) - A C++17 header-only dynamic bitset. [MIT] * [Hashmaps](https://github.com/goossaert/hashmap) - Implementation of open addressing hash table algorithms in C++. [MIT] * [Hopscotch map](https://github.com/Tessil/hopscotch-map) - A fast header-only hash map which uses hopscotch hashing for collisions resolution. [MIT] +* [flat_hash_map](https://github.com/skarupke/flat_hash_map) - A very fast flat hashtable with Fibonacci hashing. * [LSHBOX](https://github.com/RSIA-LIESMARS-WHU/LSHBOX) - A c++ toolbox of locality-sensitive hashing (LSH), provides several popular LSH algorithms, also support Python and MATLAB. [GPL] * [parallel-hashmap](https://github.com/greg7mdp/parallel-hashmap) - A family of header-only, very fast and memory-friendly hashmap and btree containers [Apache2] [website](https://greg7mdp.github.io/parallel-hashmap/) * [PGM-index](https://github.com/gvinciguerra/PGM-index) - A data structure that enables fast lookup, predecessor, range searches and updates in arrays of billions of items using orders of magnitude less space than traditional indexes. [Apache2] [website](https://pgm.di.unipi.it) @@ -428,6 +429,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [UnQLite](https://github.com/symisc/unqlite) - A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] [website](https://unqlite.org/) * [upscaledb](https://upscaledb.com) - An embedded "typed" key/value store with a built-in query interface. [GPLv3] * [TigerBeetleDB C++ client (Community)](https://github.com/kassane/tigerbeetle-cpp) - TigerBeetle is a financial accounting database designed for mission critical safety and performance to power the future of financial services. [BSL-1.0] +* [UStore](https://github.com/unum-cloud/ustore) - Multi-Modal database for BLOBs, JSON, and graphs. [Apache2] * [Velox](https://github.com/facebookincubator/velox) - A C++ vectorized database acceleration library aimed to optimizing query engines and data processing systems. [Apache-2.0] [website](https://velox-lib.io/) ## Data visualization @@ -732,16 +734,20 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Machine Learning * [Caffe](https://github.com/BVLC/caffe) - A fast framework for neural networks. [BSD] +* [catboost](https://github.com/catboost/catboost) - A fast, scalable, high performance Gradient Boosting on Decision Trees library. [Apache2] * [CCV](https://github.com/liuliu/ccv) - C-based/Cached/Core Computer Vision Library, A Modern Computer Vision Library. [BSD] * [darknet](https://github.com/pjreddie/darknet) - Open source neural network framework written in C and CUDA. [PublicDomain] [website](https://pjreddie.com/darknet/) * [Dlib](https://github.com/davisking/dlib) :zap: - A modern C++11 machine learning, computer vision, numerical optimization, and deep learning toolkit. [Boost] [website](http://dlib.net/) +* [FAISS](https://github.com/facebookresearch/faiss) - A library for efficient similarity search and clustering of dense vectors. [MIT] * [Fido](https://github.com/FidoProject/Fido) - A highly-modular C++ machine learning library for embedded electronics and robotics. [MIT] [website](http://fidoproject.github.io/) * [flashlight](https://github.com/facebookresearch/flashlight) - A fast, flexible machine learning library from Facebook AI Research written entirely in C++ and based on the ArrayFire tensor library. [BSD-3-Clause] [website](https://fl.readthedocs.io/en/latest/) +* [ggml](https://github.com/ggerganov/ggml) - Tensor library for machine learning with 16-bit and 4-bit quantization support. [MIT] * [libsvm](https://github.com/cjlin1/libsvm) - A simple, easy-to-use, efficient library for Support Vector Machines. [BSD-3-Clause] [website](https://www.csie.ntu.edu.tw/~cjlin/libsvm/) * [m2cgen](https://github.com/BayesWitnesses/m2cgen) - A CLI tool to transpile trained classic ML models into a native C code with zero dependencies. [MIT] * [MeTA](https://github.com/meta-toolkit/meta) - A modern C++ data sciences toolkit. [MIT] [website](https://meta-toolkit.org/) * [Minerva](https://github.com/dmlc/minerva) - A fast and flexible system for deep learning. [Apache2] * [mlpack](https://github.com/mlpack/mlpack) - A scalable c++ machine learning library. [LGPLv3] [website](http://www.mlpack.org/) +* [ncnn](https://github.com/Tencent/ncnn) - A high-performance neural network inference computing framework optimized for mobile platforms. [BSD] * [OpenCV](https://github.com/Itseez/opencv) :zap: - Open Source Computer Vision Library. [BSD] [website](http://opencv.org/) * [oneDAL](https://github.com/oneapi-src/oneDAL) - A powerful machine learning library that helps speed up big data analysis. [Apache] * [ONNX runtime](https://github.com/microsoft/onnxruntime) - C and C++ library for training and inference ONNX models. ONNX is a standard that AI models can be converted into, regardless of the library they are trained with. [MIT] [website](https://onnxruntime.ai/) @@ -749,9 +755,9 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [RNNLIB](https://github.com/szcom/rnnlib) - RNNLIB is a recurrent neural network library for sequence learning problems. [GPLv3] * [SHOGUN](https://github.com/shogun-toolbox/shogun) - The Shogun Machine Learning Toolbox. [GPLv3] * [sofia-ml](https://code.google.com/p/sofia-ml/) - The suite of fast incremental algorithms for machine learning. [Apache2] +* [USearch](https://github.com/unum-cloud/usearch) - Fast search and clustering library for vectors and strings. [Apache2] * [VLFeat](https://github.com/vlfeat/vlfeat) - The VLFeat open source library implements popular computer vision algorithms specialising in image understanding and local featurexs extraction and matching. [BSD-2-Clause] [website](http://www.vlfeat.org/) * [xgboost](https://github.com/dmlc/xgboost) - Scalable, Portable and Distributed Gradient Boosting (GBDT, GBRT or GBM) Library, for Python, R, Java, Scala, C++ and more. Runs on single machine, Hadoop, Spark, Flink and DataFlow. [Apache2] -* [ncnn](https://github.com/Tencent/ncnn) - A high-performance neural network inference computing framework optimized for mobile platforms. [BSD] ## Math @@ -784,6 +790,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [OpenBLAS](https://github.com/xianyi/OpenBLAS) - An optimized BLAS library based on GotoBLAS2 1.13 BSD version. [BSD 3-clause] [website](http://www.openblas.net/) * [PCG-rand](https://www.pcg-random.org/) - PCG is a family of simple fast space-efficient statistically good algorithms for random number generation. Unlike many general-purpose RNGs, they are also hard to predict. [Apache] * [QuantLib](https://github.com/lballabio/quantlib) - A free/open-source library for quantitative finance. [Modified BSD] [website](http://quantlib.org/) +* [SimSIMD](https://github.com/ashvardanian/SimSIMD) - Vector distance functions for x86 AVX2, AVX-512, Arm NEON, and SVE. [Apache2] * [StatsLib](https://github.com/kthohr/stats) - A C++ header-only library of statistical distribution functions. [Apache2] [website](https://www.kthohr.com/statslib.html) * [SymEngine](https://github.com/symengine/symengine) - Fast symbolic manipulation library, a rewriting of SymPy's core in C++. [MIT] * [TinyExpr](https://github.com/codeplea/tinyexpr) - A C library for parsing and evaluating math expressions from strings. [zlib] @@ -865,6 +872,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [PicoHTTPParser](https://github.com/h2o/picohttpparser) - A tiny, primitive, fast HTTP request/response parser. [MIT] * [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/) * [Proxygen](https://github.com/facebook/proxygen) - Facebook's collection of C++ HTTP libraries including an easy to use HTTP server. [BSD] +* [RedPanda](https://github.com/redpanda-data/redpanda) - Streaming data platform for developers. Kafka API compatible. 10x faster. [BSL] * [RakNet](https://github.com/OculusVR/RakNet) - A cross platform, open source, C++ networking engine for game programmers. [BSD] * [restclient-cpp](https://github.com/mrtazz/restclient-cpp) - Simple REST client for C++. It wraps libcurl for HTTP requests. [MIT] * [Seasocks](https://github.com/mattgodbolt/seasocks) - Simple, small, C++ embeddable webserver with WebSockets support. [BSD] @@ -872,6 +880,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Tufão](https://github.com/vinipsmaker/tufao) - An asynchronous web framework for C++ built on top of Qt. [LGPL2] * [uriparser](https://github.com/uriparser/uriparser) - Strictly RFC 3986 compliant URI parsing and handling library. [BSD-3-Clause] * [uWebSockets](https://github.com/uNetworking/uWebSockets) - µWS is one of the most lightweight, efficient & scalable WebSocket & HTTP server implementations available. [Zlib] +* [UCall](https://github.com/unum-cloud/ucall) - A high-performance SIMD-accelerated RPC library on io_uring. [Apache2] * [WAFer](https://github.com/riolet/WAFer) - A C language-based ultra-light software platform for scalable server-side and networking applications. Think node.js for C programmers. [GPL2] * [Wangle](https://github.com/facebook/wangle) - A client/server application framework to build asynchronous, event-driven modern C++ services. [Apache-2.0] * [wdt](https://github.com/facebook/wdt) - An embeddedable library (and command line tool) aiming to transfer data between 2 systems as fast as possible over multiple TCP paths. [BSD-3-Clause] From cd10802e68126e5b0efc320c0df634557cf67a56 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 9 Jan 2024 01:34:05 +0900 Subject: [PATCH 013/154] Add LuaBridge3 (binder Lua, LuaJIT, Luau and Ravi to C++) (#1489) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d6d6c5338..fc7f2fdc0 100644 --- a/README.md +++ b/README.md @@ -999,6 +999,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libffi](https://github.com/libffi/libffi) - A portable foreign-function interface library. [MIT] [website](https://sourceware.org/libffi/) * [Lua](http://www.lua.org/) - A minimal and fast scripting engine for configuration files and basic application scripting. [MIT] * [LuaBridge](https://github.com/vinniefalco/LuaBridge) - A lightweight, dependency-free library for binding Lua to C++. [MIT] +* [LuaBridge3](https://github.com/kunitoki/LuaBridge3) - A lightweight, dependency-free library for binding Lua, LuaJIT, Luau and Ravi to C++. [MIT] * [luacxx](https://github.com/dafrito/luacxx) - C++11 API for creating Lua bindings. [MIT] * [nbind](https://github.com/charto/nbind) - Magical headers that make your C++ library accessible from JavaScript. [MIT] * [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) From 2911d97096a46bac83f31f3d172ac04b053633f9 Mon Sep 17 00:00:00 2001 From: Uno <148621783+Udoheud@users.noreply.github.com> Date: Fri, 12 Jan 2024 11:38:48 +0800 Subject: [PATCH 014/154] Add Infinity, the AI-native database for LLM and RAM (#1490) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fc7f2fdc0..e4e71fa9e 100644 --- a/README.md +++ b/README.md @@ -111,6 +111,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [FunctionalPlus](https://github.com/Dobiasd/FunctionalPlus) - Functional Programming Library for C++. Write concise and readable C++ code. [MIT] * [GLib](https://wiki.gnome.org/Projects/GLib) - GLib provides the core application building blocks for libraries and applications written in C. [LGPL] * [itlib](https://github.com/iboB/itlib) - A collection of std-like single-header C++ libraries [MIT] +* [Infinity](https://github.com/infiniflow/infinity) - The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2] * [JUCE](https://github.com/julianstorer/JUCE) - An all-encompassing C++ class library for developing cross-platform software. [Core-Module: ISC, Rest: GPL2/GPL3/Proprietary] [website](http://www.juce.com/) * [Kigs framework](https://github.com/Kigs-framework/kigs) - A free and open source C++ modular multi-purpose cross platform RAD framework. [MIT] [website](https://kigs-framework.org/) * [libPhenom](https://github.com/facebook/libphenom) - libPhenom is an eventing framework for building high performance and high scalability systems in C. [Apache2] From fbae428b4818eb3ec45b11fc93fbdeca8463e7cf Mon Sep 17 00:00:00 2001 From: Uno <148621783+Udoheud@users.noreply.github.com> Date: Sat, 13 Jan 2024 11:40:07 +0800 Subject: [PATCH 015/154] Move Infinity to the Database category. (#1491) Apologies. I should have put Infinity under the Database category instead of the framework category.. --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index e4e71fa9e..8e7001b6f 100644 --- a/README.md +++ b/README.md @@ -111,7 +111,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [FunctionalPlus](https://github.com/Dobiasd/FunctionalPlus) - Functional Programming Library for C++. Write concise and readable C++ code. [MIT] * [GLib](https://wiki.gnome.org/Projects/GLib) - GLib provides the core application building blocks for libraries and applications written in C. [LGPL] * [itlib](https://github.com/iboB/itlib) - A collection of std-like single-header C++ libraries [MIT] -* [Infinity](https://github.com/infiniflow/infinity) - The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2] * [JUCE](https://github.com/julianstorer/JUCE) - An all-encompassing C++ class library for developing cross-platform software. [Core-Module: ISC, Rest: GPL2/GPL3/Proprietary] [website](http://www.juce.com/) * [Kigs framework](https://github.com/Kigs-framework/kigs) - A free and open source C++ modular multi-purpose cross platform RAD framework. [MIT] [website](https://kigs-framework.org/) * [libPhenom](https://github.com/facebook/libphenom) - libPhenom is an eventing framework for building high performance and high scalability systems in C. [Apache2] @@ -404,6 +403,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [DuckDB](https://duckdb.org/) - in-process SQL OLAP Database Management System. [MIT] * [hiberlite](https://github.com/paulftw/hiberlite) - C++ Object-relational mapping for sqlite3. [BSD] * [Hiredis](https://github.com/redis/hiredis) - A minimalistic C client library for the Redis database. [BSD] +* [Infinity](https://github.com/infiniflow/infinity) - The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2] * [Kvrocks](https://github.com/apache/incubator-kvrocks) - A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol. [Apache2] * [LevelDB](https://github.com/google/leveldb) - A fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. [BSD] * [libpqxx](https://github.com/jtv/libpqxx) - The official C++ client API for PostgreSQL. [BSD-3-Clause] From 1a587287de07541f7e9330dc9c78ff3f451b6c12 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 16 Jan 2024 10:28:11 +0900 Subject: [PATCH 016/154] Add Rapidgzip (#1493) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8e7001b6f..2b57e78ff 100644 --- a/README.md +++ b/README.md @@ -271,6 +271,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [miniz](https://github.com/richgel999/miniz) - Single C source file Deflate/Inflate compression library with zlib-compatible API, ZIP archive reading/writing, PNG writing. [MIT] * [Minizip](https://github.com/nmoinvaz/minizip) - Zlib with latest bug fixes that supports PKWARE disk spanning, AES encryption, and IO buffering. [zlib] * [minizip-ng](https://github.com/zlib-ng/minizip-ng) - Fork of the popular zip manipulation library found in the zlib distribution. [zlib] +* [Rapidgzip](https://github.com/mxmlnkn/rapidgzip) - Gzip Decompression and Random Access for Modern Multi-Core Machines. [Apache-2/MIT] * [smaz](https://github.com/antirez/smaz) - Small strings compression library. [BSD] * [Snappy](https://google.github.io/snappy/) - A fast compressor/decompressor. [BSD] * [ZLib](http://zlib.net/) - A very compact compression library for data streams. [zlib] From f8447e2872b6818c48f7ece23cb5afe53aed49df Mon Sep 17 00:00:00 2001 From: Bright Chen <1021774709@qq.com> Date: Tue, 16 Jan 2024 14:23:55 +0800 Subject: [PATCH 017/154] Add bRPC(industrial-grade RPC framework) (#1492) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 2b57e78ff..2c3de84e6 100644 --- a/README.md +++ b/README.md @@ -657,6 +657,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Apache Thrift](https://thrift.apache.org/) - Efficient cross-language IPC/RPC, works between C++, Java, Python, PHP, C#, and many more other languages. Originally developed by Facebook. [Apache2] * [Boost.Interprocess](https://github.com/boostorg/interprocess) - Header-only Boost library that supports kernel-level shared memory and memory-mapped files, with in-built synchronization mechanisms (semaphores, mutexes, and more). [Boost] [website](https://boost.org/libs/interprocess) +* [bRPC](https://github.com/apache/brpc) - bRPC is an Industrial-grade RPC framework using C++ Language, which is often used in high performance system such as Search, Storage, Machine learning, Advertisement, Recommendation etc. [Apache2] [website](https://brpc.apache.org/) * [Cap'n Proto](https://github.com/capnproto/capnproto) - Fast data interchange format and capability-based RPC system. [MIT] [website](https://capnproto.org/) * [eCAL](https://github.com/continental/ecal) - Pub/sub, client/server, C++/Python/C#, various message protocols (protobuf, capnproto ..). [Apache2] [website](http://www.ecal.io/) * [gRPC](https://github.com/grpc/grpc) - A high performance, open source, general-purpose RPC framework. [BSD] [website](http://www.grpc.io/) From 078bf95eb0052e2f99da6f5918f417de3b9770b7 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 16 Jan 2024 23:59:33 +0900 Subject: [PATCH 018/154] sort Compression list (#1494) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 2c3de84e6..64cac0271 100644 --- a/README.md +++ b/README.md @@ -260,7 +260,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [bzip3](https://github.com/kspalaiologos/bzip3) - A better and stronger spiritual successor to BZip2. [LGPL] * [FiniteStateEntropy](https://github.com/Cyan4973/FiniteStateEntropy) - New generation entropy codecs : Finite State Entropy and Huff0. * [heatshrink](https://github.com/atomicobject/heatshrink) - data compression library for embedded/real-time systems [ISC] -* [PhysicsFS](https://icculus.org/physfs/) - A library to provide abstract access to various archives. It is intended for use in video games, and the design was somewhat inspired by Quake 3's file subsystem. [zlib] * [KArchive](https://api.kde.org/frameworks/karchive/html/index.html) - A library for creating, reading, writing and manipulating file archives like zip and tar. It also provides transparent compression and decompression of data, using formats like gzip, via a subclass of QIODevice. [LGPL] * [libarchive](https://github.com/libarchive/libarchive) - Multi-format archive and compression library. [New BSD] [website](http://www.libarchive.org/) * [LZ4](https://github.com/lz4/lz4) - Extremely Fast Compression algorithm. [BSD] [website](http://www.lz4.org/) @@ -271,6 +270,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [miniz](https://github.com/richgel999/miniz) - Single C source file Deflate/Inflate compression library with zlib-compatible API, ZIP archive reading/writing, PNG writing. [MIT] * [Minizip](https://github.com/nmoinvaz/minizip) - Zlib with latest bug fixes that supports PKWARE disk spanning, AES encryption, and IO buffering. [zlib] * [minizip-ng](https://github.com/zlib-ng/minizip-ng) - Fork of the popular zip manipulation library found in the zlib distribution. [zlib] +* [PhysicsFS](https://icculus.org/physfs/) - A library to provide abstract access to various archives. It is intended for use in video games, and the design was somewhat inspired by Quake 3's file subsystem. [zlib] * [Rapidgzip](https://github.com/mxmlnkn/rapidgzip) - Gzip Decompression and Random Access for Modern Multi-Core Machines. [Apache-2/MIT] * [smaz](https://github.com/antirez/smaz) - Small strings compression library. [BSD] * [Snappy](https://google.github.io/snappy/) - A fast compressor/decompressor. [BSD] From 7df8634e3a1e6bace4bb22e400a0638be4a77332 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 19 Jan 2024 23:48:07 +0900 Subject: [PATCH 019/154] Add srell (regex library) (#1495) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 64cac0271..b02503cd7 100644 --- a/README.md +++ b/README.md @@ -965,6 +965,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [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/Proprietary] * [sregex](https://github.com/openresty/sregex) - A non-backtracking NFA/DFA-based Perl-compatible regex engine library for matching on large data streams. [BSD] +* [SRELL](https://www.akenotsuki.com/misc/srell/en/) - Unicode-aware regular expression template library for C++. [BSD] ## Robotics From 9a5d9d17dafda35dd097b297fa3eceef9d8db5a1 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 26 Jan 2024 23:30:15 +0900 Subject: [PATCH 020/154] Add mINI (ini file reader/writer library) (#1496) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b02503cd7..3870d17cf 100644 --- a/README.md +++ b/README.md @@ -335,6 +335,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [inipp](https://github.com/mcmtroffaes/inipp) - Simple header-only C++ ini parser and generator. [MIT] * [libconfig](https://github.com/hyperrealm/libconfig) - C, C++ library for processing structured configuration files. [LGPL-2.1] [website](https://hyperrealm.github.io/libconfig/) * [libconfuse](https://github.com/martinh/libconfuse) - Small configuration file parser library for C. [ISC] +* [mINI](https://github.com/metayeti/mINI) - INI file reader and writer. [MIT] * [simpleini](https://github.com/brofield/simpleini) - Cross-platform C++ library providing a simple API to read and write INI-style configuration files. [MIT] * [toml++](https://github.com/marzer/tomlplusplus) - Header-only TOML parser and serializer for C++17 and later. [MIT] [website](https://marzer.github.io/tomlplusplus/) * [toml11](https://github.com/ToruNiina/toml11) - a C++11 (or later) header-only toml parser/encoder depending only on C++ standard library. [MIT] From df1b40f28e48d31f8cb0cab9c4156712a7b3990c Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 27 Jan 2024 23:31:25 +0900 Subject: [PATCH 021/154] Add hat-trie (HAT trie library) (#1497) --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index 3870d17cf..3014928a7 100644 --- a/README.md +++ b/README.md @@ -344,9 +344,10 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [C++ B-tree](https://github.com/algorithm-ninja/cpp-btree) - A template library that implements ordered in-memory containers based on a B-tree data structure. [Apache2] * [dynamic_bitset](https://github.com/pinam45/dynamic_bitset) - A C++17 header-only dynamic bitset. [MIT] +* [flat_hash_map](https://github.com/skarupke/flat_hash_map) - A very fast flat hashtable with Fibonacci hashing. * [Hashmaps](https://github.com/goossaert/hashmap) - Implementation of open addressing hash table algorithms in C++. [MIT] +* [hat-trie](https://github.com/Tessil/hat-trie) - C++ implementation of a fast and memory efficient HAT-trie. [MIT] * [Hopscotch map](https://github.com/Tessil/hopscotch-map) - A fast header-only hash map which uses hopscotch hashing for collisions resolution. [MIT] -* [flat_hash_map](https://github.com/skarupke/flat_hash_map) - A very fast flat hashtable with Fibonacci hashing. * [LSHBOX](https://github.com/RSIA-LIESMARS-WHU/LSHBOX) - A c++ toolbox of locality-sensitive hashing (LSH), provides several popular LSH algorithms, also support Python and MATLAB. [GPL] * [parallel-hashmap](https://github.com/greg7mdp/parallel-hashmap) - A family of header-only, very fast and memory-friendly hashmap and btree containers [Apache2] [website](https://greg7mdp.github.io/parallel-hashmap/) * [PGM-index](https://github.com/gvinciguerra/PGM-index) - A data structure that enables fast lookup, predecessor, range searches and updates in arrays of billions of items using orders of magnitude less space than traditional indexes. [Apache2] [website](https://pgm.di.unipi.it) From b6edbcfee929fd92ae2ba036e5e03094f6830cc4 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 28 Jan 2024 02:06:39 +0900 Subject: [PATCH 022/154] add tree containers (st_tree, tree.hh) (#1498) --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 3014928a7..71f1a0a0e 100644 --- a/README.md +++ b/README.md @@ -358,7 +358,9 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [robin-hood-hashing](https://github.com/martinus/robin-hood-hashing) - Fast & memory efficient hashtable based on robin hood hashing for C++14. [MIT] * [robin-map](https://github.com/Tessil/robin-map) - Fast hash map and hash set using robin hood hashing. [MIT] * [sparsepp](https://github.com/greg7mdp/sparsepp) - A fast, memory efficient hash map for C++. [BSD 3-clause] +* [st_tree](https://github.com/erikerlandson/st_tree) - A fast and flexible c++ template class for tree data structures. [Apache-2.0] * [svector](https://github.com/martinus/svector) - Compact SVO optimized vector for C++17 or higher. [MIT] +* [tree.hh](https://github.com/kpeeters/tree.hh) - An STL-like C++ header-only tree library. [GPL2+] * [unordered_dense](https://github.com/martinus/unordered_dense) - A fast & densely stored hashmap and hashset based on robin-hood backward shift deletion. [MIT] ## Cryptography From 73619060a1e71e8d4e3d84e9a56a31adb2369d9a Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 12 Feb 2024 23:37:18 +0900 Subject: [PATCH 023/154] Add Reindexer (#1500) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 71f1a0a0e..9c7604923 100644 --- a/README.md +++ b/README.md @@ -421,6 +421,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [nanodbc](https://github.com/nanodbc/nanodbc) - A small C++ wrapper for the native C ODBC API. [MIT] * [ODB](https://www.codesynthesis.com/products/odb/) - An open-source, cross-platform, and cross-database object-relational mapping (ORM) system for C++. [GPLv2] * [redis3m](https://github.com/luca3m/redis3m) - Wrapper of hiredis with clean C++ interface, supporting sentinel and ready to use patterns. [Apache2] +* [Reindexer](https://github.com/Restream/reindexer) - Embeddable, in-memory, document-oriented database with a high-level Query builder interface. [Apache2] [website](https://reindexer.io/) * [RocksDB](https://github.com/facebook/rocksdb) - Embedded key-value store for fast storage from facebook. [BSD] * [SimDB](https://github.com/LiveAsynchronousVisualizedArchitecture/simdb) - High performance, shared memory, lock free, cross platform, single file, minimal dependencies, C++11 key-value store. [Apache2] * [SOCI](https://github.com/SOCI/soci) - A database abstraction layer for C++. [Boost] From 3e10e576b633da5951874a83190cb8ab23ed8414 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 18 Feb 2024 07:54:00 +0900 Subject: [PATCH 024/154] add TermOx (terminal UI library), sort CLI category (#1501) * add termox, sort CLI category, normalilze entry name * revert linenoise position --- README.md | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index 9c7604923..6929e96eb 100644 --- a/README.md +++ b/README.md @@ -225,16 +225,19 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Argh!](https://github.com/adishavit/argh) - A minimalist, frustration-free, header-only argument handler. [BSD] * [argparse](https://github.com/p-ranav/argparse) - Argument Parser for Modern C++. [MIT] - * [Taywee/args](https://github.com/taywee/args) - A simple header-only C++ argument parser library. [MIT] + * [args](https://github.com/taywee/args) - A simple header-only C++ argument parser library. [MIT] * [Boost.Program_options](https://github.com/boostorg/program_options) - A library to obtain program options via conventional methods such as command line and config file. [Boost] [website](https://boost.org/libs/program_options) * [Clara](https://github.com/catchorg/Clara) - A simple to use, composable, command line parser for C++ 11 and beyond. [Boost] * [cli](https://github.com/daniele77/cli) - A cross-platform header only C++14 library for interactive command line interfaces (Cisco style). [Boost] * [CLI11](https://github.com/CLIUtils/CLI11) - Header only single or multi-file C++11 library for simple and advanced CLI parsing. [BSD] * [clipp](https://github.com/muellan/clipp) - Easy to use, powerful and expressive command line argument handling for C++11/14/17 contained in a single header file. [MIT] - * [jarro2783/cxxopts](https://github.com/jarro2783/cxxopts) - Lightweight C++ command line option parser. [MIT] + * [cpp-terminal](https://github.com/jupyter-xeus/cpp-terminal) - Small header only C++ library for writing multiplatform terminal applications. [MIT] + * [cxxopts](https://github.com/jarro2783/cxxopts) - Lightweight C++ command line option parser. [MIT] * [docopt.cpp](https://github.com/docopt/docopt.cpp) - A library to generate option parser from docstring. [MIT/Boost] * [FINAL CUT](https://github.com/gansm/finalcut) - Library for creating terminal applications with text-based widgets. [LGPL] + * [FTXUI](https://github.com/ArthurSonzogni/FTXUI) - C++ Functional Terminal User Interface. [MIT] * [gflags](https://gflags.github.io/gflags/) - Commandline flags module for C++. [BSD] + * [imtui](https://github.com/ggerganov/imtui) - Immediate Mode Text-based User Interface. [MIT] * [indicators](https://github.com/p-ranav/indicators/) - Activity indicators for Modern C++. [MIT] * [linenoise](https://github.com/antirez/linenoise) - A small self-contained alternative to readline and libedit. [BSD-2-Clause] * [linenoise-ng](https://github.com/arangodb/linenoise-ng) - A small, portable GNU readline replacement for Linux, Windows and MacOS which is capable of handling UTF-8 characters. [BSD] @@ -247,9 +250,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [tabulate](https://github.com/p-ranav/tabulate) - Table Maker for Modern C++. [MIT] * [TCLAP](http://tclap.sourceforge.net) - A mature, stable and feature-rich library for defining and accessing command line arguments in ANSI C++. [MIT] * [termbox](https://github.com/nsf/termbox) - A C library for writing text-based user interfaces. [MIT] - * [cpp-terminal](https://github.com/jupyter-xeus/cpp-terminal) - Small header only C++ library for writing multiplatform terminal applications. [MIT] - * [FTXUI](https://github.com/ArthurSonzogni/FTXUI) - C++ Functional Terminal User Interface. [MIT] - * [imtui](https://github.com/ggerganov/imtui) - Immediate Mode Text-based User Interface. [MIT] + * [TermOx](https://github.com/a-n-t-h-o-n-y/TermOx) - C++17 Terminal User Interface(TUI) Library. [MIT] ## Compression *Compression and Archiving Libraries* From 065a83dc05db9981e185d28c596c5f6152f27628 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 23 Feb 2024 23:54:10 +0900 Subject: [PATCH 025/154] Add miniscript (embed scripting language) (#1502) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6929e96eb..cec9614e8 100644 --- a/README.md +++ b/README.md @@ -1011,6 +1011,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [LuaBridge](https://github.com/vinniefalco/LuaBridge) - A lightweight, dependency-free library for binding Lua to C++. [MIT] * [LuaBridge3](https://github.com/kunitoki/LuaBridge3) - A lightweight, dependency-free library for binding Lua, LuaJIT, Luau and Ravi to C++. [MIT] * [luacxx](https://github.com/dafrito/luacxx) - C++11 API for creating Lua bindings. [MIT] +* [MiniScript](https://miniscript.org/) - scripting language modern, elegant, easy to learn, and easy to embed in your own C# or C++ projects. [MIT] * [nbind](https://github.com/charto/nbind) - Magical headers that make your C++ library accessible from JavaScript. [MIT] * [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) * [pocketpy](https://github.com/blueloveTH/pocketpy) - C++17 header-only Python interpreter for game scripting. [MIT] [website](https://pocketpy.dev/) From da22bce3c92862eb917cf0ce36b6d16a2e60f0a1 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 25 Feb 2024 01:00:06 +0900 Subject: [PATCH 026/154] add png libraries (#1503) --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index cec9614e8..8b27629b8 100644 --- a/README.md +++ b/README.md @@ -621,6 +621,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [CImg](http://cimg.eu/) - A small, open source, C++ toolkit for image processing. [Own LGPL or GPL] * [CxImage](https://www.codeproject.com/Articles/1300/CxImage) - An image processing and conversion library to load, save, display, transform BMP, JPEG, GIF, PNG, TIFF, MNG, ICO, PCX, TGA, WMF, WBMP, JBG, J2K images. [zlib] * [Dlib](https://github.com/davisking/dlib) :zap: - A modern C++11 machine learning, computer vision, numerical optimization, and deep learning toolkit. [Boost] [website](http://dlib.net/) +* [fpng](https://github.com/richgel999/fpng) - Super fast C++ .PNG writer/reader. [Unlicense] * [FreeImage](http://freeimage.sourceforge.net/) - An open source library that supports popular graphics image formats and others as needed by today's multimedia applications. [GPL2 or GPL3] * [GD](https://github.com/libgd/libgd) - GD Graphics Library, famously used in PHP for image loading/manipulation & thumbnail generation. [custom permissive license, requires mention in user docs] [website](http://libgd.github.io/) * [DCMTK](http://dicom.offis.de/dcmtk.php.en) - DICOM Toolkit. @@ -631,6 +632,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libfacedetection](https://github.com/ShiqiYu/libfacedetection) - Open source library for face detection in images. The face detection speed can reach 1500FPS. [BSD] * [libjpeg-turbo](https://github.com/libjpeg-turbo/libjpeg-turbo) - A JPEG image codec that uses SIMD instructions to accelerate baseline JPEG encoding and decoding. [IJG & BSD-3-Clause & zlib] [website](https://libjpeg-turbo.org/) * [libjxl](https://github.com/libjxl/libjxl) - JPEG XL image format reference implementation. [BSD-3-Clause] +* [libpng](https://github.com/pnggroup/libpng) - the reference library for use in applications that read, create, and manipulate PNG (Portable Network Graphics) raster image files. [libpng-2.0] [website](https://libpng.sourceforge.io/) * [libspng](https://github.com/randy408/libspng) - Simple, modern libpng alternative. [BSD-2] [website](https://libspng.org/) * [libvips](https://github.com/jcupitt/libvips) - A fast image processing library with low memory needs. [LGPL] [website](http://www.vips.ecs.soton.ac.uk/) * [LodePNG](https://github.com/lvandeve/lodepng) - PNG encoder and decoder in C and C++. [Zlib] From be6a9236d2b119a840a2dd6e74a25838f43fe644 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 25 Feb 2024 15:39:20 +0900 Subject: [PATCH 027/154] add CCTZ (time-zone, civil-time translating library) (#1504) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8b27629b8..2935ba5fc 100644 --- a/README.md +++ b/README.md @@ -1130,6 +1130,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Argon2](https://github.com/P-H-C/phc-winner-argon2) - The password hash Argon2, winner of PHC. [CC0/Apache2] * [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPL2] * [Boost.Signals2](https://github.com/boostorg/signals2) - An implementation of a managed signals and slots system. [Boost] [website](https://boost.org/libs/signals2) +* [CCTZ](https://github.com/google/cctz) - a C++ library for translating between absolute and civil times using the rules of a time zone. [Apache-2.0] * [Cheat Sheets of HackingCPP](https://hackingcpp.com/cpp/cheat_sheets.html) - Cool cheat sheets and infographics for algorithms, views, containers, randomness, etc. * [Concord](https://github.com/Cogmasters/concord) - A Discord API wrapper library written in C. [MIT] [website](https://cogmasters.github.io/concord) * [CPPItertools](https://github.com/ryanhaining/cppitertools) - Range-based for loop add-ons inspired by the Python builtins and itertools library. [BSD-2-Clause] From 80e5cef89614846781a78b4cddf1ea8fc0da0bd6 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 25 Feb 2024 18:54:29 +0900 Subject: [PATCH 028/154] sort Miscellaneous category (#1505) --- README.md | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/README.md b/README.md index 2935ba5fc..3db81284f 100644 --- a/README.md +++ b/README.md @@ -1130,38 +1130,40 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Argon2](https://github.com/P-H-C/phc-winner-argon2) - The password hash Argon2, winner of PHC. [CC0/Apache2] * [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPL2] * [Boost.Signals2](https://github.com/boostorg/signals2) - An implementation of a managed signals and slots system. [Boost] [website](https://boost.org/libs/signals2) +* [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] * [CCTZ](https://github.com/google/cctz) - a C++ library for translating between absolute and civil times using the rules of a time zone. [Apache-2.0] * [Cheat Sheets of HackingCPP](https://hackingcpp.com/cpp/cheat_sheets.html) - Cool cheat sheets and infographics for algorithms, views, containers, randomness, etc. * [Concord](https://github.com/Cogmasters/concord) - A Discord API wrapper library written in C. [MIT] [website](https://cogmasters.github.io/concord) * [CPPItertools](https://github.com/ryanhaining/cppitertools) - Range-based for loop add-ons inspired by the Python builtins and itertools library. [BSD-2-Clause] +* [cxx-prettyprint](https://github.com/louisdx/cxx-prettyprint) - A pretty printing library for C++ containers. [Boost] * [date](https://github.com/HowardHinnant/date) - A date and time library based on the C++11/14/17 header. [MIT] [website](https://howardhinnant.github.io/date/date.html) * [D++ (DPP)](https://github.com/brainboxdotcc/DPP) - A lightweight, high performance and scalable C++ library for creating Discord Bots. [Apache2] [website](https://dpp.dev) * [DynaMix](https://github.com/iboB/dynamix) - A library which allows you to compose and modify objects at run time. [MIT] * [emio](https://github.com/Viatorus/emio) - A safe and fast high-level and low-level character input/output library. [MIT] * [faker-cxx](https://github.com/cieslarmichal/faker-cxx) - C++20 Faker library for generating fake (but realistic) data for testing and development. [MIT] +* [FastFormat](http://www.fastformat.org) - Fast, Safe C++ Formatting inspired by log4j and Pantheios. [Simplified BSD] * [fccf](https://github.com/p-ranav/fccf) - A command-line tool that recursively searches a directory to find C/C++ source code matching a search string. [MIT] * [{fmt}](https://github.com/fmtlib/fmt) :zap: - Small, safe and fast formatting library for C++. [Simplified BSD] [website](https://fmt.dev) -* [FastFormat](http://www.fastformat.org) - Fast, Safe C++ Formatting inspired by log4j and Pantheios. [Simplified BSD] +* [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. * [hedley](https://github.com/nemequ/hedley) - A C/C++ header file designed to smooth over some platform-specific annoyances. [website](https://nemequ.github.io/hedley/) -* [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] -* [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] -* [cxx-prettyprint](https://github.com/louisdx/cxx-prettyprint) - A pretty printing library for C++ containers. [Boost] * [icecream-cpp](https://github.com/renatoGarcia/icecream-cpp) - A small printing library for debugging purposes. [MIT] * [inja](https://github.com/pantor/inja) - A Template Engine for Modern C++. [MIT] -* [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. * [Jinja2С++](https://github.com/jinja2cpp/Jinja2Cpp) - almost full-conformance template engine implementation. [website](https://jinja2cpp.github.io/) * [jwt-cpp](https://github.com/Thalhammer/jwt-cpp) - A header only library for creating and validating JSON web tokens in 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++](https://github.com/libsigcplusplus/libsigcplusplus) - A typesafe callback system for standard C++. [LGPL] [website](https://libsigcplusplus.github.io/libsigcplusplus) * [libcpuid](https://github.com/anrieff/libcpuid) - A small C library for x86 CPU detection and feature extraction. [BSD] * [libenvpp](https://github.com/ph3at/libenvpp) - A modern C++ library for type-safe environment variable parsing. [Apache-2.0] * [libevil](https://github.com/avati/libevil) - The Evil License Manager. [GPLv3] * [libnih](https://github.com/keybuk/libnih) - A lightweight library of C functions and structures. [GPL2.1] +* [libsigc++](https://github.com/libsigcplusplus/libsigcplusplus) - A typesafe callback system for standard C++. [LGPL] [website](https://libsigcplusplus.github.io/libsigcplusplus) * [libusb](https://libusb.info/) - 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] * [mio](https://github.com/mandreyel/mio) - Cross-platform C++11 header-only library for memory mapped file IO. [MIT] * [PEGTL](https://github.com/taocpp/PEGTL) - The Parsing Expression Grammar Template Library. [MIT] +* [pprint](https://github.com/p-ranav/pprint) - Pretty Printer for Modern C++. [MIT] +* [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] +* [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] * [scnlib](https://github.com/eliaskosunen/scnlib) - scanf for modern C++. [Apache-2.0] [website](https://v1.scnlib.dev/) * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] @@ -1170,8 +1172,8 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. [PublicDomain] * [SimpleSignal](https://github.com/larspensjo/SimpleSignal) - High performance C++11 signals. [PublicDomain] * [Stage](https://github.com/rtv/Stage) - Mobile robot simulator. [GPL2] -* [stdman](https://github.com/jeaye/stdman) - A tool that parses archived HTML files from [cppreference](https://cppreference.com) and generates groff-formatted manual pages for Unix-based systems. [MIT] * [stb](https://github.com/nothings/stb) :zap: - A range of single-file libraries for C/C++. [PublicDomain] +* [stdman](https://github.com/jeaye/stdman) - A tool that parses archived HTML files from [cppreference](https://cppreference.com) and generates groff-formatted manual pages for Unix-based systems. [MIT] * [StringZilla](https://github.com/ashvardanian/StringZilla) - the Godzilla of string libraries, splitting, sorting, and shuffling large textual datasets faster than you can say "Tokyo Tower". [Apache-2.0] * [StrTk](https://www.partow.net/programming/strtk/index.html) - A C++ library consisting of high performance string processing routines. [MIT] * [tgbotxx](https://github.com/baderouaich/tgbotxx) - Telegram Bot C++ Library. [MIT] @@ -1181,8 +1183,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [VarTypes](https://github.com/szi/vartypes) - A feature-rich, object-oriented framework for managing variables in C++ / Qt4. [LGPL] * [ZBar](http://zbar.sourceforge.net/) - A barcode scanner library, which allows to scan photos/images/video streams for barcodes and return their value. [LGPL2] * [ZXing](https://github.com/zxing/zxing/) - An open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. [Apache] -* [pprint](https://github.com/p-ranav/pprint) - Pretty Printer for Modern C++. [MIT] -* [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] # Software *Software for creating a development environment.* From f20a669e0c6025483686762e73bc837b110ea427 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 27 Feb 2024 23:15:29 +0900 Subject: [PATCH 029/154] Add OpenJPEG(JPEG 2000 library) (#1506) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3db81284f..5408e7ee5 100644 --- a/README.md +++ b/README.md @@ -642,6 +642,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [OpenCV](https://github.com/opencv) :zap: - Open source computer vision. [Apache2] [website](https://opencv.org) * [OpenEXR](http://www.openexr.com/) - Cross-platform library for high dynamic range imaging. [Modified BSDF] * [OpenImageIO](https://github.com/OpenImageIO/oiio) - Powerful image and texture wrangling library with support for a wide number of common lossy and RAW formats. [Modified BSD] +* [OpenJPEG](https://github.com/uclouvain/openjpeg) - an open-source JPEG 2000 codec written in C language. [BSD-2-Clause] * [SAIL](https://github.com/happy-sea-fox/sail) - Easy-to-use cross-platform image decoding library with pluggable image codecs. [MIT] * [Simd](https://github.com/ermig1979/Simd) - C++ image processing library with using of SIMD: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX-512, VMX(Altivec) and VSX(Power7), NEON for ARM. [MIT] * [stb-image](https://github.com/nothings/stb/blob/master/stb_image.h) - STB single-header image loading library. [Public Domain] From e23f033a6c758378d5f3fe015a50f55b1db9d706 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 28 Feb 2024 22:24:00 +0900 Subject: [PATCH 030/154] Add Xalan C (#1508) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5408e7ee5..18d1a23d4 100644 --- a/README.md +++ b/README.md @@ -1115,6 +1115,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [TinyXML](http://sourceforge.net/projects/tinyxml/) - A simple, small, minimal, C++ XML parser that can be easily integrating into other programs. [zlib] * [TinyXML2](https://github.com/leethomason/tinyxml2) - A simple, small, efficient, C++ XML parser that can be easily integrating into other programs. [zlib] * [TinyXML++](https://github.com/rjpcomputing/ticpp) - A completely new interface to TinyXML that uses MANY of the C++ strengths. Templates, exceptions, and much better error handling. [MIT] +* [Xalan C](https://github.com/apache/xalan-c) - A library and a command line program to transform XML documents using a stylesheet that conforms to XSLT 1.0 standards. [Apache-2.0] [website](https://xalan.apache.org/) * [Xerces-C++](http://xerces.apache.org/xerces-c/) - A validating XML parser written in a portable subset of C++. [Apache2] ## Yaml From 85c11f2b3dc3b30465f9145822aa6a283892443f Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 29 Feb 2024 23:22:24 +0900 Subject: [PATCH 031/154] Add CRCpp (CRC library) (#1509) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 18d1a23d4..61e9d3956 100644 --- a/README.md +++ b/README.md @@ -1132,6 +1132,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Argon2](https://github.com/P-H-C/phc-winner-argon2) - The password hash Argon2, winner of PHC. [CC0/Apache2] * [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPL2] * [Boost.Signals2](https://github.com/boostorg/signals2) - An implementation of a managed signals and slots system. [Boost] [website](https://boost.org/libs/signals2) +* [CRCpp](https://github.com/d-bahr/CRCpp) - Easy to use and fast C++ CRC library. [BSD-3-Clause] * [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] * [CCTZ](https://github.com/google/cctz) - a C++ library for translating between absolute and civil times using the rules of a time zone. [Apache-2.0] * [Cheat Sheets of HackingCPP](https://hackingcpp.com/cpp/cheat_sheets.html) - Cool cheat sheets and infographics for algorithms, views, containers, randomness, etc. From 9cc00cb9d72defd020ec6e4daae79888f3cd0655 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 3 Mar 2024 23:39:00 +0900 Subject: [PATCH 032/154] Add SaneCppLibraries (platform abstraction libraries) (#1510) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 61e9d3956..a3cea66b4 100644 --- a/README.md +++ b/README.md @@ -123,6 +123,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Qt](https://github.com/qt) :zap: - A cross-platform application and UI framework. [GPL/LGPL/Proprietary] [website](https://www.qt.io) * [Reason](http://code.google.com/p/reason/) - A cross platform framework designed to bring the ease of use of Java, .Net, or Python to developers who require the performance and strength of C++. [GPL2] * [ROOT](https://root.cern.ch/) - A set of OO frameworks with all the functionality needed to handle and analyze large amounts of data in a very efficient way. Used at CERN. [LGPL] +* [SaneCppLibraries](https://github.com/Pagghiu/SaneCppLibraries) - a set of C++ platform abstraction libraries for macOS, Windows and Linux. [MIT] [website](https://pagghiu.github.io/SaneCppLibraries/) * [Seastar](https://github.com/scylladb/seastar) - An advanced, open-source C++ framework for high-performance server applications on modern hardware. [Apache-2.0 License] [seastar.io](http://seastar.io/) * [STLport](http://www.stlport.org/) - An exemplary version of STL. [Free] * [STXXL](http://stxxl.sourceforge.net/) - Standard Template Library for Extra Large Data Sets. [Boost] From e36131502f7331087f763afafbc41ea6c2f6a08f Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 6 Mar 2024 00:44:25 +0900 Subject: [PATCH 033/154] Add frozen (constexpr container library) (#1511) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a3cea66b4..90ec38127 100644 --- a/README.md +++ b/README.md @@ -347,6 +347,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [C++ B-tree](https://github.com/algorithm-ninja/cpp-btree) - A template library that implements ordered in-memory containers based on a B-tree data structure. [Apache2] * [dynamic_bitset](https://github.com/pinam45/dynamic_bitset) - A C++17 header-only dynamic bitset. [MIT] * [flat_hash_map](https://github.com/skarupke/flat_hash_map) - A very fast flat hashtable with Fibonacci hashing. +* [frozen](https://github.com/serge-sans-paille/frozen) - a header-only, constexpr alternative to gperf for C++14 users. [Apache-2.0] * [Hashmaps](https://github.com/goossaert/hashmap) - Implementation of open addressing hash table algorithms in C++. [MIT] * [hat-trie](https://github.com/Tessil/hat-trie) - C++ implementation of a fast and memory efficient HAT-trie. [MIT] * [Hopscotch map](https://github.com/Tessil/hopscotch-map) - A fast header-only hash map which uses hopscotch hashing for collisions resolution. [MIT] From ad5e46fefb44480a0f7ff4595eeb829962ea1f3e Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 7 Mar 2024 23:51:00 +0900 Subject: [PATCH 034/154] Add RapidFuzz (Levenshtein Distance library) (#1513) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 90ec38127..149a756e2 100644 --- a/README.md +++ b/README.md @@ -1169,6 +1169,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [pprint](https://github.com/p-ranav/pprint) - Pretty Printer for Modern C++. [MIT] * [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] * [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] +* [RaipdFuzz](https://github.com/rapidfuzz/rapidfuzz-cpp) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] [website](https://rapidfuzz.github.io/rapidfuzz-cpp/) * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] * [scnlib](https://github.com/eliaskosunen/scnlib) - scanf for modern C++. [Apache-2.0] [website](https://v1.scnlib.dev/) * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] From 182d81798cd48046aa9b76c78f9c073f43e8b8fa Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Stjepan=20Jurekovi=C4=87?= Date: Sat, 9 Mar 2024 02:49:33 +0100 Subject: [PATCH 035/154] Added 100 C++ Mistakes and How to Avoid Them (#1512) Hi, Stjepan from Manning here. I thought this tile might be a good match for your list. Thank you for considering it. Best, --- books.md | 1 + 1 file changed, 1 insertion(+) diff --git a/books.md b/books.md index 4f418d477..b291f86a8 100644 --- a/books.md +++ b/books.md @@ -20,6 +20,7 @@ ## C++ +* [100 C++ Mistakes and How to Avoid Them](https://www.manning.com/books/100-c-plus-plus-mistakes-and-how-to-avoid-them) * [C++ Annotations](http://cppannotations.sourceforge.net/) * [C++ Cookbook](http://staff.ppu.edu/dkhalid/O'Reilly%20-%20C++%20Cookbook%20%282007%29.pdf) (PDF) * [C++ GUI Programming With Qt 3](http://www.computer-books.us/cpp_0010.php) From 110f7aba22aad93ad92f8612699188ca544d1940 Mon Sep 17 00:00:00 2001 From: Navid Jalili <81755097+Navid-JL@users.noreply.github.com> Date: Sun, 10 Mar 2024 07:54:55 +0330 Subject: [PATCH 036/154] Add SPICE Toolkit to the Robotics section (#1515) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 149a756e2..53af8c08d 100644 --- a/README.md +++ b/README.md @@ -988,6 +988,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [ROS](http://wiki.ros.org/) - Robot Operating System provides libraries and tools to help software developers create robot applications. [BSD] * [Ruckig](https://github.com/pantor/ruckig) - Real-time motion generation for robots and machines. [MIT] [website](https://ruckig.com) * [YARP (Yet Another Robot Platform)](https://github.com/robotology/yarp) - Library and toolkit for communication and device interfaces. [BSD-3-Clause] [website](http://www.yarp.it/) +* [SPICE Toolkit](https://github.com/arturania/cspice) - Library and toolkit for computing geometric information used in planning and analyzing science observations obtained from robotic spacecraft. [MIT] [website](https://naif.jpl.nasa.gov/naif/toolkit.html) ## Scientific Computing From bd4fccd147241a2b1afec800f097df6a721f5fe4 Mon Sep 17 00:00:00 2001 From: Matheus Werny <46067952+Spixmaster@users.noreply.github.com> Date: Sun, 10 Mar 2024 21:10:57 +0100 Subject: [PATCH 037/154] Added mailio (#1516) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 53af8c08d..02bbe02ef 100644 --- a/README.md +++ b/README.md @@ -875,6 +875,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [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/) * [Lithium](https://matt-42.github.io/lithium/) - Build high performance C++ HTTP servers without being a C++ expert. [MIT] * [lwIP](http://savannah.nongnu.org/projects/lwip/) - A lightweight TCP/IP stack. [Modified BSD] +* [mailio](https://github.com/karastojko/mailio) - mailio is a cross platform C++ library for MIME format and SMTP, POP3 and IMAP protocols. [BSD] * [Mongoose](https://github.com/cesanta/mongoose) - Extremely lightweight webserver. [GPL2] * [MQTT-C](https://github.com/LiamBindle/MQTT-C) - A portable MQTT C client for embedded systems and PCs alike. [MIT] [website](https://liambindle.ca/MQTT-C) * [mTCP](https://github.com/mtcp-stack/mtcp) - Highly scalable user-level TCP stack for multicore systems. [Modified BSD] From 472a1957afc1e75c714cf17365608b39b36a7d27 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 13 Mar 2024 19:20:17 +0900 Subject: [PATCH 038/154] Add fixed-containers (constexpr containers) (#1517) * Add fixed-containers * add description --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 02bbe02ef..f0c3c9640 100644 --- a/README.md +++ b/README.md @@ -346,6 +346,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [C++ B-tree](https://github.com/algorithm-ninja/cpp-btree) - A template library that implements ordered in-memory containers based on a B-tree data structure. [Apache2] * [dynamic_bitset](https://github.com/pinam45/dynamic_bitset) - A C++17 header-only dynamic bitset. [MIT] +* [fixed-containers](https://github.com/teslamotors/fixed-containers) - Header-only C++20 library that provides fixed capacity constexpr containers. [MIT] * [flat_hash_map](https://github.com/skarupke/flat_hash_map) - A very fast flat hashtable with Fibonacci hashing. * [frozen](https://github.com/serge-sans-paille/frozen) - a header-only, constexpr alternative to gperf for C++14 users. [Apache-2.0] * [Hashmaps](https://github.com/goossaert/hashmap) - Implementation of open addressing hash table algorithms in C++. [MIT] From 2d34a68bf37d152ce679d05cdc57c5ab0c97f3de Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 20 Mar 2024 16:39:10 +0900 Subject: [PATCH 039/154] Add libfork (tasking library with coroutine) (#1518) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index f0c3c9640..301d1f5a2 100644 --- a/README.md +++ b/README.md @@ -307,6 +307,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Libclsph](https://github.com/libclsph/libclsph) - An OpenCL based GPU accelerated SPH fluid simulation library. [MIT] * [libdill](https://github.com/sustrik/libdill/) - Introduces structured concurrency in C. [MIT] * [libdispatch](https://github.com/apple/swift-corelibs-libdispatch) - Grand Central Dispatch (GCD), developed by Apple Inc., is a task parallelism technology based on the thread pool pattern. libdispatch is a library that provides the implementation of GCD's services. [Apache-2.0] [website](https://apple.github.io/swift-corelibs-libdispatch/) +* [libfork](https://github.com/ConorWilliams/libfork) - A bleeding-edge, lock-free, wait-free, continuation-stealing tasking library built on C++20's coroutines. [MPL-2.0] [website](https://conorwilliams.github.io/libfork/) * [libmill](https://github.com/sustrik/libmill/) - Introduces Go-style concurrency in C. [MIT] * [marl](https://github.com/google/marl) - Marl is a hybrid thread / fiber task scheduler written in C++ 11. [Apache-2.0] * [moderngpu](https://github.com/moderngpu/moderngpu) - moderngpu is a productivity library for general-purpose computing on GPUs. It is a header-only C++ library written for CUDA. The unique value of the library is in its accelerated primitives for solving irregularly parallel problems. [FreeBSD & Copyright, Sean Baxter] From b526e885bebc13be9d2737c52f3a64470ce9fd7c Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 22 Mar 2024 16:05:44 +0900 Subject: [PATCH 040/154] Add fast_io (faster input/output library) (#1521) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 301d1f5a2..3399ff78f 100644 --- a/README.md +++ b/README.md @@ -1151,6 +1151,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [emio](https://github.com/Viatorus/emio) - A safe and fast high-level and low-level character input/output library. [MIT] * [faker-cxx](https://github.com/cieslarmichal/faker-cxx) - C++20 Faker library for generating fake (but realistic) data for testing and development. [MIT] * [FastFormat](http://www.fastformat.org) - Fast, Safe C++ Formatting inspired by log4j and Pantheios. [Simplified BSD] +* [fast_io](https://github.com/cppfastio/fast_io) - Significantly faster input/output for C++20. [MIT] * [fccf](https://github.com/p-ranav/fccf) - A command-line tool that recursively searches a directory to find C/C++ source code matching a search string. [MIT] * [{fmt}](https://github.com/fmtlib/fmt) :zap: - Small, safe and fast formatting library for C++. [Simplified BSD] [website](https://fmt.dev) * [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. From 36855fbf2a5eeced5de2e86e29c1cf79ee7400d3 Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 23 Mar 2024 20:30:51 +0900 Subject: [PATCH 041/154] dynamic_bitset: update description, add website (#1522) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 3399ff78f..97e7ba4c0 100644 --- a/README.md +++ b/README.md @@ -346,7 +346,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Containers * [C++ B-tree](https://github.com/algorithm-ninja/cpp-btree) - A template library that implements ordered in-memory containers based on a B-tree data structure. [Apache2] -* [dynamic_bitset](https://github.com/pinam45/dynamic_bitset) - A C++17 header-only dynamic bitset. [MIT] +* [dynamic_bitset](https://github.com/pinam45/dynamic_bitset) - Simple Useful Libraries: C++17/20 header-only dynamic bitset. [MIT] [website](https://pinam45.github.io/dynamic_bitset/) * [fixed-containers](https://github.com/teslamotors/fixed-containers) - Header-only C++20 library that provides fixed capacity constexpr containers. [MIT] * [flat_hash_map](https://github.com/skarupke/flat_hash_map) - A very fast flat hashtable with Fibonacci hashing. * [frozen](https://github.com/serge-sans-paille/frozen) - a header-only, constexpr alternative to gperf for C++14 users. [Apache-2.0] From 2514fe66e678609d82de3d6e1965f5a4644a9b97 Mon Sep 17 00:00:00 2001 From: Arnaud Kleinpeter Date: Sun, 24 Mar 2024 04:08:36 +0100 Subject: [PATCH 042/154] Add Ccache to the build systems (#1520) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 97e7ba4c0..c75bb23d5 100644 --- a/README.md +++ b/README.md @@ -1273,6 +1273,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Bear](https://github.com/rizsotto/Bear) - A tool to generate compilation database for clang tooling. [GPLv3] * [Buck](https://github.com/facebook/buck) - A fast build system that encourages the creation of small, reusable modules over a variety of platforms and languages including C++ developed and used at Facebook. Written in Java. [Apache] * [build2](https://build2.org/) - cross-platform build, packaging and dependency management toolchain for developing and packaging C/C++ projects. [MIT] +* [Ccache](https://ccache.dev/) - A fast C/C++ compiler cache. [GPLv3] * [clib](https://github.com/clibs/clib) - Package manager for the C programming language. [MIT] * [CMake](https://cmake.org/) - Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD] * [Cget](https://github.com/pfultz2/cget) - Cmake package retrieval. [Boost] [website](http://cget.readthedocs.io) From ef5cf4e9cff911d036c132ed1881665806846b3e Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 25 Mar 2024 17:21:08 +0900 Subject: [PATCH 043/154] Add cpp-lazy (lazy evaluation library) (#1523) --- README.md | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/README.md b/README.md index c75bb23d5..8065e91ae 100644 --- a/README.md +++ b/README.md @@ -1138,12 +1138,13 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Argon2](https://github.com/P-H-C/phc-winner-argon2) - The password hash Argon2, winner of PHC. [CC0/Apache2] * [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPL2] * [Boost.Signals2](https://github.com/boostorg/signals2) - An implementation of a managed signals and slots system. [Boost] [website](https://boost.org/libs/signals2) -* [CRCpp](https://github.com/d-bahr/CRCpp) - Easy to use and fast C++ CRC library. [BSD-3-Clause] * [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] * [CCTZ](https://github.com/google/cctz) - a C++ library for translating between absolute and civil times using the rules of a time zone. [Apache-2.0] * [Cheat Sheets of HackingCPP](https://hackingcpp.com/cpp/cheat_sheets.html) - Cool cheat sheets and infographics for algorithms, views, containers, randomness, etc. * [Concord](https://github.com/Cogmasters/concord) - A Discord API wrapper library written in C. [MIT] [website](https://cogmasters.github.io/concord) * [CPPItertools](https://github.com/ryanhaining/cppitertools) - Range-based for loop add-ons inspired by the Python builtins and itertools library. [BSD-2-Clause] +* [cpp-lazy](https://github.com/MarcDirven/cpp-lazy) - a fast and easy lazy evaluation library for C++11/14/17/20. [MIT] +* [CRCpp](https://github.com/d-bahr/CRCpp) - Easy to use and fast C++ CRC library. [BSD-3-Clause] * [cxx-prettyprint](https://github.com/louisdx/cxx-prettyprint) - A pretty printing library for C++ containers. [Boost] * [date](https://github.com/HowardHinnant/date) - A date and time library based on the C++11/14/17 header. [MIT] [website](https://howardhinnant.github.io/date/date.html) * [D++ (DPP)](https://github.com/brainboxdotcc/DPP) - A lightweight, high performance and scalable C++ library for creating Discord Bots. [Apache2] [website](https://dpp.dev) From 1211b254f1a6d609131afe6d00c7eeb655c34fbb Mon Sep 17 00:00:00 2001 From: Kaido Kert Date: Thu, 28 Mar 2024 18:16:10 -0700 Subject: [PATCH 044/154] Add Sccache compiler cache (#1524) Adding link to Mozilla sccache, a ccache-like ( #1520 ) compiler cache. --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8065e91ae..25bd9b49c 100644 --- a/README.md +++ b/README.md @@ -1284,6 +1284,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Hunter](https://www.github.com/ruslo/hunter) - CMake driven cross-platform package manager for C++. [BSD-2] * [MesonBuild](http://mesonbuild.com) - An open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible. * [Ninja](https://ninja-build.org/) - A small build system with a focus on speed. +* [Sccache](https://github.com/mozilla/sccache) - A fast compiler cache for C/C++, with cross-platform support and cloud backed storage options. * [Scons](http://www.scons.org/) - A software construction tool configured with a Python script. * [Sconsolidator](http://www.sconsolidator.com/) - Scons build system integration for Eclipse CDT. * [Spack](https://spack.io/) - A flexible package manager that supports multiple versions, configurations, platforms, and compilers. [Apache-2.0/MIT] From f1612de3c987b5d3fb3f0f8919490a004f89c9d3 Mon Sep 17 00:00:00 2001 From: Everett Pompeii Date: Thu, 4 Apr 2024 20:57:19 -0400 Subject: [PATCH 045/154] Add Bencher (#1305) https://github.com/bencherdev/bencher --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 25bd9b49c..e4cca577a 100644 --- a/README.md +++ b/README.md @@ -453,6 +453,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny *Debugging Libraries, Memory Leak and Resource Leak Detection, Unit Testing* * [backward-cpp](https://github.com/bombela/backward-cpp) - A beautiful stack trace pretty printer for C++. [MIT] +* [Bencher](https://bencher.dev/) - A suite of continuous benchmarking tools designed to catch performance regressions in CI. [MIT]/[Apache2] * [benchmark](https://github.com/google/benchmark) - Google provided small microbenchmark support library. [Apache2] * [Boost.Test](https://github.com/boostorg/test) - Boost Test Library. [Boost] [website](https://boost.org/libs/test) * [check](https://github.com/libcheck/check) - Check is a unit testing framework for C. [LGPL-2.1] [website](https://libcheck.github.io/check/) From fb52755cca35b06c90b40af0a192ad9d87c9ac87 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 7 Apr 2024 01:41:51 +0900 Subject: [PATCH 046/154] Add cpp-dump (debugging library) (#1528) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e4cca577a..6efbf9d97 100644 --- a/README.md +++ b/README.md @@ -460,6 +460,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [doctest](https://github.com/onqtam/doctest) - The lightest feature rich C++ single header testing framework. [MIT] * [Catch2](https://github.com/catchorg/Catch2) - A modern, C++-native, test framework for unit-tests, TDD and BDD. [Boost] * [Celero](https://github.com/DigitalInBlue/Celero) - C++ Benchmarking Framework. [Apache2] +* [cpp-dump](https://github.com/philip82148/cpp-dump) - A C++ library for debugging purposes that can print any variable, even user-defined types. [MIT] * [CppUTest](https://github.com/cpputest/cpputest) - Unit testing and mocking framework for C/C++. [BSD-3-clause] * [CUTE](http://cute-test.com) - C++ Unit Testing Easier. [LGPL3] * [CMocka](https://cmocka.org/) - unit testing framework for C with support for mock objects. [Apache2] From 43508470e12b0f872edc431e7c390eeaea839942 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 8 Apr 2024 04:52:29 +0900 Subject: [PATCH 047/154] Add wagyu (geometry library) (#1530) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6efbf9d97..831bbe5a8 100644 --- a/README.md +++ b/README.md @@ -814,6 +814,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [TinyExpr](https://github.com/codeplea/tinyexpr) - A C library for parsing and evaluating math expressions from strings. [zlib] * [Vc](https://github.com/VcDevel/Vc) - SIMD Vector Classes for C++. [BSD] * [Versor](http://versor.mat.ucsb.edu/) - A (fast) Generic C++ library for Geometric Algebras, including Euclidean, Projective, Conformal, Spacetime (etc). +* [Wagyu](https://github.com/mapbox/wagyu) - A general library for geometry operations of union, intersections, difference, and xor. [mapbox-wagyu original] * [Wykobi](https://www.wykobi.com) - A C++ library of efficient, robust and simple to use C++ 2D/3D oriented computational geometry routines. [MIT] * [xtensor](https://github.com/xtensor-stack/xtensor) - A C++14 library for numerical analysis with multi-dimensional array expressions, inspired by NumPy syntax. [BSD 3-clause] [website](https://xtensor-stack.github.io/xtensor) * [universal](https://github.com/stillwater-sc/universal) - A C++14 header-only library implementing arbitrary posit arithmetic. The posit number system is a tapered floating point that is more efficient than IEEE floating point. Posits enable reproducible computational science. [MIT license] From 01be2ee52c2640708862f71d2e311d8f4054086d Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 10 Apr 2024 01:28:54 +0900 Subject: [PATCH 048/154] Add mgclient (memgraph client library) (#1531) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 831bbe5a8..ac59050f5 100644 --- a/README.md +++ b/README.md @@ -419,6 +419,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libpqxx](https://github.com/jtv/libpqxx) - The official C++ client API for PostgreSQL. [BSD-3-Clause] * [LMDB](https://www.symas.com/lmdb) - Very fast embedded key/value store with full ACID semantics. [OpenLDAP] * [LMDB++](https://github.com/bendiken/lmdbxx) - C++11 wrapper for the LMDB embedded database library. [PublicDomain] +* [mgclient](https://github.com/memgraph/mgclient) - C/C++ Memgraph Client. [Apache2] * [MongoDB C Driver](https://github.com/mongodb/mongo-c-driver) - MongoDB client library for C. [Apache2] * [MongoDB C++ Driver](https://github.com/mongodb/mongo-cxx-driver) - C++ driver for MongoDB. [Apache2] * [MongoDB Libbson](https://github.com/mongodb/libbson) - A BSON utility library. [Apache2] From 0a2bf91d5f93c850875e104c44a0e73b3ed12a8e Mon Sep 17 00:00:00 2001 From: Sergey S Date: Thu, 11 Apr 2024 03:32:37 +0100 Subject: [PATCH 049/154] Remove mention of Clara CLI library from the list as it's not longer maintained (#1529) --- README.md | 1 - 1 file changed, 1 deletion(-) diff --git a/README.md b/README.md index ac59050f5..e2ad32c8c 100644 --- a/README.md +++ b/README.md @@ -228,7 +228,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [argparse](https://github.com/p-ranav/argparse) - Argument Parser for Modern C++. [MIT] * [args](https://github.com/taywee/args) - A simple header-only C++ argument parser library. [MIT] * [Boost.Program_options](https://github.com/boostorg/program_options) - A library to obtain program options via conventional methods such as command line and config file. [Boost] [website](https://boost.org/libs/program_options) - * [Clara](https://github.com/catchorg/Clara) - A simple to use, composable, command line parser for C++ 11 and beyond. [Boost] * [cli](https://github.com/daniele77/cli) - A cross-platform header only C++14 library for interactive command line interfaces (Cisco style). [Boost] * [CLI11](https://github.com/CLIUtils/CLI11) - Header only single or multi-file C++11 library for simple and advanced CLI parsing. [BSD] * [clipp](https://github.com/muellan/clipp) - Easy to use, powerful and expressive command line argument handling for C++11/14/17 contained in a single header file. [MIT] From b5b007efaf2fc77213ab4773bced588a8f0bbe58 Mon Sep 17 00:00:00 2001 From: Jeremy Rifkin <51220084+jeremy-rifkin@users.noreply.github.com> Date: Wed, 10 Apr 2024 21:33:32 -0500 Subject: [PATCH 050/154] Add libassert (#1527) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e2ad32c8c..e3183d845 100644 --- a/README.md +++ b/README.md @@ -476,6 +476,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Google Mock](https://github.com/google/googletest/blob/master/googlemock/README.md) - A library for writing and using C++ mock classes. [BSD] * [Google Test](https://github.com/google/googletest) - Google C++ Testing Framework. [BSD] * [ig-debugheap](https://github.com/deplinenoise/ig-debugheap) - Multiplatform debug heap useful for tracking down memory errors. [BSD] +* [libassert](https://github.com/jeremy-rifkin/libassert) - The most over-engineered C++ assertion library. [MIT] * [libtap](https://github.com/zorgnax/libtap) - Write tests in C. [GPL2] * [microprofile](https://github.com/jonasmr/microprofile) - Profiler with web-view for multiple platforms. [Unlicense] * [MinUnit](https://github.com/siu/minunit) - A minimal unit testing framework for C self-contained in a single header file. [MIT] From 12839dcec5043bc24b863302fb49bceec5cead55 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 12 Apr 2024 16:58:17 +0900 Subject: [PATCH 051/154] Add wildcard (header-only wildcards matching library) (#1532) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e3183d845..0b56b1df1 100644 --- a/README.md +++ b/README.md @@ -1197,6 +1197,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [ub-canaries](https://github.com/regehr/ub-canaries) - A collection of C/C++ programs that try to get compilers to exploit undefined behavior. * [value-category-cheatsheet](https://github.com/jeaye/value-category-cheatsheet) A PDF cheatsheet for lvalues, rvalues, and the like. [Jank copyleft] * [VarTypes](https://github.com/szi/vartypes) - A feature-rich, object-oriented framework for managing variables in C++ / Qt4. [LGPL] +* [Wildcards](https://github.com/zemasoft/wildcards/) - A simple C++ header-only template library implementing matching using wildcards. [BSL-1.0] * [ZBar](http://zbar.sourceforge.net/) - A barcode scanner library, which allows to scan photos/images/video streams for barcodes and return their value. [LGPL2] * [ZXing](https://github.com/zxing/zxing/) - An open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. [Apache] From 2e9f197c0f3afc8098310e22c395cf0a667182b9 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 14 Apr 2024 22:08:58 +0900 Subject: [PATCH 052/154] Add neco (concurrency library for C) (#1534) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0b56b1df1..629a0cec9 100644 --- a/README.md +++ b/README.md @@ -311,6 +311,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [marl](https://github.com/google/marl) - Marl is a hybrid thread / fiber task scheduler written in C++ 11. [Apache-2.0] * [moderngpu](https://github.com/moderngpu/moderngpu) - moderngpu is a productivity library for general-purpose computing on GPUs. It is a header-only C++ library written for CUDA. The unique value of the library is in its accelerated primitives for solving irregularly parallel problems. [FreeBSD & Copyright, Sean Baxter] * [NCCL](https://github.com/NVIDIA/nccl) - Optimized primitives for collective multi-GPU communication. [BSD] +* [Neco](https://github.com/tidwall/neco) - Concurrency library for C (coroutines). [MIT] * [OpenCL](https://www.khronos.org/opencl/) - The open standard for parallel programming of heterogeneous systems. * [OpenMP](http://openmp.org/) - The OpenMP API. * [rotor](https://github.com/basiliscos/cpp-rotor) - Event loop friendly C++ actor micro framework. [MIT] From d4bab61710e96b872838465bb12723dcf7fde64a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Andr=C3=A9=20David?= Date: Sun, 14 Apr 2024 21:06:51 +0200 Subject: [PATCH 053/154] Update README.md (#1533) Correct typo --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 629a0cec9..dcea4d588 100644 --- a/README.md +++ b/README.md @@ -1180,7 +1180,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [pprint](https://github.com/p-ranav/pprint) - Pretty Printer for Modern C++. [MIT] * [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] * [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] -* [RaipdFuzz](https://github.com/rapidfuzz/rapidfuzz-cpp) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] [website](https://rapidfuzz.github.io/rapidfuzz-cpp/) +* [RapidFuzz](https://github.com/rapidfuzz/rapidfuzz-cpp) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] [website](https://rapidfuzz.github.io/rapidfuzz-cpp/) * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] * [scnlib](https://github.com/eliaskosunen/scnlib) - scanf for modern C++. [Apache-2.0] [website](https://v1.scnlib.dev/) * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] From 7658e092e83d6223d90db4e2754d67f93e0ec96b Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 17 Apr 2024 01:13:47 +0900 Subject: [PATCH 054/154] Add webui (GUI library using any web browser) (#1535) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index dcea4d588..1a8452706 100644 --- a/README.md +++ b/README.md @@ -584,6 +584,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Sciter](http://sciter.com/) - Sciter is an embeddable HTML/CSS/scripting engine aimed to be used as an UI layer of modern desktop applications. [Free/Commercial] * [Slint](https://github.com/slint-ui/slint) - Lightweight GUI toolkit for desktop and embedded. [GPL/Free/Proprietary] [website](https://slint.dev/) * [TGUI](https://github.com/texus/TGUI) - Cross-platform modern c++ GUI. [Zlib] [website](https://tgui.eu/) +* [WebUI](https://github.com/webui-dev/webui) - Use any web browser as GUI, with your preferred language in the backend and HTML5 in the frontend. [MIT] [website](https://webui.me/) * [wxWidgets](http://wxwidgets.org/) - A C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base. [Own LGPL] * [xtd](https://github.com/gammasoft71/xtd) - Modern C++17/20 framework to create console (CLI), forms (GUI like WinForms) and tunit (unit tests like Microsoft Unit Testing Framework) applications on Windows, macOS, Linux, iOS and android. [MIT] * [Yue](https://github.com/yue/yue) - A library for creating native cross-platform GUI apps. [LGPLv2] From c4ce750e3540718c22ab99ddc0a32e60f2401661 Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 27 Apr 2024 15:13:27 +0900 Subject: [PATCH 055/154] Add TinyTIFF (tiff library) (#1536) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1a8452706..973daec12 100644 --- a/README.md +++ b/README.md @@ -657,6 +657,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [stb-image](https://github.com/nothings/stb/blob/master/stb_image.h) - STB single-header image loading library. [Public Domain] * [tesseract-ocr](https://github.com/tesseract-ocr) - An OCR engine. [Apache2] * [TinyEXIF](https://github.com/cdcseacave/TinyEXIF) - Tiny ISO-compliant C++ EXIF and XMP parsing library for JPEG. [MIT] +* [TinyTIFF](https://github.com/jkriege2/TinyTIFF) - lightweight TIFF reader/writer library. [GPL-3.0] * [Video++](https://github.com/matt-42/vpp) - A C++14 high performance video and image processing library. [MIT] * [VIGRA](https://github.com/ukoethe/vigra) - A generic C++ computer vision library for image analysis. [MIT X11] * [VTK](http://www.vtk.org/) - Open-source, freely available software system for 3D computer graphics, image processing and visualization. [BSD] From deb43b12c770fd267c0b461eaa1d349b091c01ae Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 28 Apr 2024 23:50:26 +0900 Subject: [PATCH 056/154] Add happly (PLY file parser) (#1537) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 973daec12..9ee1ebfd5 100644 --- a/README.md +++ b/README.md @@ -1163,6 +1163,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [fccf](https://github.com/p-ranav/fccf) - A command-line tool that recursively searches a directory to find C/C++ source code matching a search string. [MIT] * [{fmt}](https://github.com/fmtlib/fmt) :zap: - Small, safe and fast formatting library for C++. [Simplified BSD] [website](https://fmt.dev) * [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. +* [happly](https://github.com/nmwsharp/happly) - A C++ header-only parser for the PLY file format. Parse .ply happily! [MIT] * [hedley](https://github.com/nemequ/hedley) - A C/C++ header file designed to smooth over some platform-specific annoyances. [website](https://nemequ.github.io/hedley/) * [icecream-cpp](https://github.com/renatoGarcia/icecream-cpp) - A small printing library for debugging purposes. [MIT] * [inja](https://github.com/pantor/inja) - A Template Engine for Modern C++. [MIT] From 08521b2a93a41c3e8ea44eb93e87bd827c0bcea4 Mon Sep 17 00:00:00 2001 From: Ruja Awal Date: Thu, 16 May 2024 08:40:57 +0545 Subject: [PATCH 057/154] Added C Playground where you can write, edit, and run code online (#1539) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9ee1ebfd5..de6bd535f 100644 --- a/README.md +++ b/README.md @@ -1276,6 +1276,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Xcode](https://developer.apple.com/xcode/) - Developed by Apple. * [YouCompleteMe](https://github.com/ycm-core/YouCompleteMe) - YouCompleteMe is a fast, as-you-type, fuzzy-search code completion engine for Vim. * [cquery](https://github.com/cquery-project/cquery/) - A C++ code completion engine for vscode, emacs, vim, etc. +* [C Playground - Online C Programming IDE](https://programiz.pro/ide/c) - An online IDE to practice C Programming where you can write, edit, and run code online. ## Build Systems From 5ae127744b4e87abf8a398fc90f08e4ad734b0cf Mon Sep 17 00:00:00 2001 From: iAndyHD3 <54410739+iAndyHD3@users.noreply.github.com> Date: Sat, 18 May 2024 06:05:58 +0200 Subject: [PATCH 058/154] Add Axmol Engine (#1540) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index de6bd535f..4d50732da 100644 --- a/README.md +++ b/README.md @@ -526,6 +526,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Acid](https://github.com/Equilibrium-Games/Acid) - A high speed C++17 Vulkan game engine. [MIT] * [Allegro](http://liballeg.org/) - A cross-platform library mainly aimed for video games and multimedia programming. [zlib] +* [Axmol Engine](https://github.com/axmolengine/axmol) - A cross-platform game engine for desktop, mobile, and XBOX (UWP), derived from Cocos2d-x-4.0. [MIT] [website](https://axmol.dev/) * [Cocos2d-x](http://www.cocos2d-x.org/) - A multi-platform framework for building 2d games, interactive books, demos and other graphical applications. [MIT] * [Corange](https://github.com/orangeduck/Corange) - A game engine written in pure C, SDL and OpenGL. [BSD] * [crown](https://github.com/dbartolini/crown) - Crown is a general purpose data-driven game engine, written from scratch in orthodox C++ with a minimalistic and data-oriented design philosophy in mind. [MIT] From 2819cbb0e89c58aacff455572157999e1a9e68d9 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 12 Jun 2024 19:56:19 +0900 Subject: [PATCH 059/154] add Kanzi (compression library) (#1542) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4d50732da..506fb3143 100644 --- a/README.md +++ b/README.md @@ -261,6 +261,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [bzip3](https://github.com/kspalaiologos/bzip3) - A better and stronger spiritual successor to BZip2. [LGPL] * [FiniteStateEntropy](https://github.com/Cyan4973/FiniteStateEntropy) - New generation entropy codecs : Finite State Entropy and Huff0. * [heatshrink](https://github.com/atomicobject/heatshrink) - data compression library for embedded/real-time systems [ISC] +* [Kanzi](https://github.com/flanglet/kanzi-cpp) - a modern, modular, portable and efficient lossless data compressor implemented in C++. [Apache-2.0] * [KArchive](https://api.kde.org/frameworks/karchive/html/index.html) - A library for creating, reading, writing and manipulating file archives like zip and tar. It also provides transparent compression and decompression of data, using formats like gzip, via a subclass of QIODevice. [LGPL] * [libarchive](https://github.com/libarchive/libarchive) - Multi-format archive and compression library. [New BSD] [website](http://www.libarchive.org/) * [LZ4](https://github.com/lz4/lz4) - Extremely Fast Compression algorithm. [BSD] [website](http://www.lz4.org/) From 8f69809f7e17231d09bc7f8edf7145e97a5a0d40 Mon Sep 17 00:00:00 2001 From: Michael Filion Date: Mon, 17 Jun 2024 22:46:48 -0400 Subject: [PATCH 060/154] Updating link to Pistache (#1544) Addresses #1543 --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 506fb3143..ccf607d48 100644 --- a/README.md +++ b/README.md @@ -1111,7 +1111,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libOnion](http://www.coralbits.com/libonion/) - lightweight library to help you create webservers in C programming language. [LGPLv3] * [lwan](https://github.com/lpereira/lwan) - Experimental, scalable, high performance HTTP server. [GPL2] * [oat++](https://github.com/oatpp/oatpp) - Light, zero-dependency framework to create high-performance web-services. [Apache-2.0] [website](https://oatpp.io/) -* [Pistache](http://pistache.io/) - Pistache is a C++ REST framework written in pure C++11 with no external dependency. [Apache2] +* [Pistache](https://pistacheio.github.io/pistache/) - Pistache is a C++ REST framework written in pure C++11 with no external dependency. [Apache2] * [QDjango](https://github.com/jlaine/qdjango/) - A web framework written in C++ and built on top of the Qt library. Where possible it tries to follow django's API, hence its name. [LGPL] * [TreeFrog Framework](https://github.com/treefrogframework/treefrog-framework) - High-speed and full-stack web application framework based on C++ and Qt, which supports HTTP and WebSocket protocol (with O/R mapping). [BSD] [website](http://www.treefrogframework.org/) * [userver](https://github.com/userver-framework/userver) - Asynchronous C++17 framework with a rich set of abstractions and database drivers for fast and comfortable creation of efficient microservices, services and utilities. [Apache-2.0] [website](https://userver.tech/) From 35b0e2d6f7583967e0fa53327e6d9d773a6900b2 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 19 Jun 2024 23:56:51 +0900 Subject: [PATCH 061/154] Add rpp (Rust-inspired STL replacement) (#1545) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ccf607d48..bd50255fe 100644 --- a/README.md +++ b/README.md @@ -123,6 +123,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Qt](https://github.com/qt) :zap: - A cross-platform application and UI framework. [GPL/LGPL/Proprietary] [website](https://www.qt.io) * [Reason](http://code.google.com/p/reason/) - A cross platform framework designed to bring the ease of use of Java, .Net, or Python to developers who require the performance and strength of C++. [GPL2] * [ROOT](https://root.cern.ch/) - A set of OO frameworks with all the functionality needed to handle and analyze large amounts of data in a very efficient way. Used at CERN. [LGPL] +* [rpp](https://github.com/TheNumbat/rpp) - Minimal Rust-inspired C++20 STL replacement. [MIT] * [SaneCppLibraries](https://github.com/Pagghiu/SaneCppLibraries) - a set of C++ platform abstraction libraries for macOS, Windows and Linux. [MIT] [website](https://pagghiu.github.io/SaneCppLibraries/) * [Seastar](https://github.com/scylladb/seastar) - An advanced, open-source C++ framework for high-performance server applications on modern hardware. [Apache-2.0 License] [seastar.io](http://seastar.io/) * [STLport](http://www.stlport.org/) - An exemplary version of STL. [Free] From 03097865e58c3488d84e5b2850a8420487de7e73 Mon Sep 17 00:00:00 2001 From: "Ibrahim Ahmad (feyroozecode)" <43380715+feyroozecode@users.noreply.github.com> Date: Fri, 21 Jun 2024 06:08:32 +0100 Subject: [PATCH 062/154] Update books.md (#1546) the old link from : https://www.planetpdf.com/codecuts/pdfs/ooc.pdf it dosn't work properly --- books.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/books.md b/books.md index b291f86a8..c66d85f43 100644 --- a/books.md +++ b/books.md @@ -10,7 +10,7 @@ * [Deep C](http://www.slideshare.net/olvemaudal/deep-c) * [Essential C](http://cslibrary.stanford.edu/101/EssentialC.pdf) (PDF) * [Learn C the hard way](http://c.learncodethehardway.org/book/) -* [Object Oriented Programming in C](http://www.planetpdf.com/codecuts/pdfs/ooc.pdf) (PDF) +* [Object Oriented Programming in C](https://hps.vi4io.org/_media/teaching/wintersemester_2012_2013/epc-1213-grigoras-oo-praesentation.pdf) (PDF) * [The C book](http://publications.gbdirect.co.uk/c_book/) * [The Craft of Text Editing or A Cookbook for an Emacs](http://www.finseth.com/craft/) - Craig A. Finseth * [The GNU C Programming Tutorial](http://www.crasseux.com/books/ctut.pdf) From 8efbce7c5ec05b71889147c4d90cd4a474c2e2a2 Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 22 Jun 2024 23:59:16 +0900 Subject: [PATCH 063/154] Add txiki.js(JavaScript engine) (#1548) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index bd50255fe..c5b73753c 100644 --- a/README.md +++ b/README.md @@ -1039,6 +1039,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [SIP](https://riverbankcomputing.com/software/sip/intro) - C or C++ Bindings Generator for Python v2 and v3. [GPL] * [sol2](https://github.com/ThePhD/sol2) - A C++ <-> Lua API wrapper with advanced features and top notch performance. [MIT] * [SWIG](https://github.com/swig/swig) - A wrapper/interface Generator that let you link your c++ code to Javascript, Perl, PHP, Python, Tcl and Ruby. [GPL/Output not licensed] [website](http://www.swig.org/) +* [txiki.js](https://github.com/saghul/txiki.js) - A tiny JavaScript runtime. [MIT] * [V7](https://github.com/cesanta/v7) - An embedded JavaScript engine. [GPL2] * [V8](https://v8.dev) - A fast JavaScript engine by Google that can be embedded into any C++ application. [BSD] * [v8pp](https://github.com/pmed/v8pp) - Header-only library to expose C++ classes and functions into V8 to use them in JavaScript code. [BOOST] [website](https://pmed.github.io/v8pp/) From e321cde97448118c3a91f037b1c048f8efb294c8 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 24 Jun 2024 23:46:43 +0900 Subject: [PATCH 064/154] Add TinyDNG(DNG TIFF loader/writer library) (#1550) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c5b73753c..dbeada05d 100644 --- a/README.md +++ b/README.md @@ -659,6 +659,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Simd](https://github.com/ermig1979/Simd) - C++ image processing library with using of SIMD: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX-512, VMX(Altivec) and VSX(Power7), NEON for ARM. [MIT] * [stb-image](https://github.com/nothings/stb/blob/master/stb_image.h) - STB single-header image loading library. [Public Domain] * [tesseract-ocr](https://github.com/tesseract-ocr) - An OCR engine. [Apache2] +* [TinyDNG](https://github.com/syoyo/tinydng) - Header-only Tiny DNG/TIFF loader and writer in C++. [MIT] * [TinyEXIF](https://github.com/cdcseacave/TinyEXIF) - Tiny ISO-compliant C++ EXIF and XMP parsing library for JPEG. [MIT] * [TinyTIFF](https://github.com/jkriege2/TinyTIFF) - lightweight TIFF reader/writer library. [GPL-3.0] * [Video++](https://github.com/matt-42/vpp) - A C++14 high performance video and image processing library. [MIT] From 339809d5c27dd47f3fc28e0238fea4b69f9d5474 Mon Sep 17 00:00:00 2001 From: Sijie Yang Date: Sun, 30 Jun 2024 04:20:46 +0800 Subject: [PATCH 065/154] Add TQUIC (quic protocol library) (#1551) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index dbeada05d..9165db56e 100644 --- a/README.md +++ b/README.md @@ -905,6 +905,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [restclient-cpp](https://github.com/mrtazz/restclient-cpp) - Simple REST client for C++. It wraps libcurl for HTTP requests. [MIT] * [Seasocks](https://github.com/mattgodbolt/seasocks) - Simple, small, C++ embeddable webserver with WebSockets support. [BSD] * [tlse](https://github.com/eduardsui/tlse) - Single C file TLS 1.2/1.3 implementation, using tomcrypt as crypto library [BSD-2-Clause] +* [TQUIC](https://github.com/tencent/tquic) - A high-performance, lightweight, and cross-platform QUIC library, exposed to C and C++. [Apache2] * [Tufão](https://github.com/vinipsmaker/tufao) - An asynchronous web framework for C++ built on top of Qt. [LGPL2] * [uriparser](https://github.com/uriparser/uriparser) - Strictly RFC 3986 compliant URI parsing and handling library. [BSD-3-Clause] * [uWebSockets](https://github.com/uNetworking/uWebSockets) - µWS is one of the most lightweight, efficient & scalable WebSocket & HTTP server implementations available. [Zlib] From 15a4d1ade70570e53bb5383b7accdef0d6f638fd Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 30 Jun 2024 22:57:06 +0900 Subject: [PATCH 066/154] Add libpg_query (sql parser library) (#1552) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9165db56e..e68b803bf 100644 --- a/README.md +++ b/README.md @@ -418,6 +418,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Infinity](https://github.com/infiniflow/infinity) - The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2] * [Kvrocks](https://github.com/apache/incubator-kvrocks) - A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol. [Apache2] * [LevelDB](https://github.com/google/leveldb) - A fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. [BSD] +* [libpg_query](https://github.com/pganalyze/libpg_query) - C library for accessing the PostgreSQL parser outside of the server environment. [BSD-3-Clause] * [libpqxx](https://github.com/jtv/libpqxx) - The official C++ client API for PostgreSQL. [BSD-3-Clause] * [LMDB](https://www.symas.com/lmdb) - Very fast embedded key/value store with full ACID semantics. [OpenLDAP] * [LMDB++](https://github.com/bendiken/lmdbxx) - C++11 wrapper for the LMDB embedded database library. [PublicDomain] From b6ab20babb6095391339d4d1795256fcf842408a Mon Sep 17 00:00:00 2001 From: Chip Hogg Date: Wed, 3 Jul 2024 22:55:17 -0400 Subject: [PATCH 067/154] Add Au(C++14-compatible units and quantities lib) (#1553) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e68b803bf..c6bd2d269 100644 --- a/README.md +++ b/README.md @@ -1009,6 +1009,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Scientific Computing * [AMGCL](https://github.com/ddemidov/amgcl) - a header-only C++ library for solving large sparse linear systems with algebraic multigrid. [MIT] +* [Au](https://github.com/aurora-opensource/au) - A C++14-compatible physical units library with no dependencies and a single-file delivery option. Emphasis on safety, accessibility, performance, and developer experience. [Apache 2.0] [website](https://aurora-opensource.github.io/au/main/) * [FFTW](http://www.fftw.org/) - A C library for computing the DFT in one or more dimensions. [GPL] * [GSL](http://www.gnu.org/software/gsl/) - GNU scientific library. [GPL] * [preCICE](https://github.com/precice/precice) - Coupling library for partitioned multi-physics simulations (FSI, CHT, and more). [LGPL] [website](https://precice.org/) From a0125e5a406d79896866cf69c4269160710c0c15 Mon Sep 17 00:00:00 2001 From: Igor Bogoslavskyi Date: Sat, 13 Jul 2024 21:32:43 +0200 Subject: [PATCH 068/154] Add cpp-for-yourself links (#1554) --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index c6bd2d269..faafb29aa 100644 --- a/README.md +++ b/README.md @@ -1424,6 +1424,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [C Programming Tutorials](https://www.youtube.com/playlist?list=PL78280D6BE6F05D34) - All of TheNewBoston's C programming tutorials are right here. * [Bo Qian's playlist](https://www.youtube.com/user/BoQianTheProgrammer/playlists) - Boost Library, C++ Standard Library, Modern C++, Advanced C++, Advanced STL, ... * [The Cherno's C++ Playlist](https://www.youtube.com/playlist?list=PLlrATfBNZ98dudnM48yfGUldqGD0S4FFb) - Extensive C++ tutorial series by The Cherno. +* [Code for Yourself C++ Playlist](https://www.youtube.com/playlist?list=PLwhKb0RIaIS1sJkejUmWj-0lk7v_xgCuT) - A complete C++ course covering everything from fundamentals to software design. ## Websites *Useful C or C++ related websites.* @@ -1447,6 +1448,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [C++ tutorial](https://hackr.io/tutorials/learn-c-plus-plus) - A user ranked online tutorial bank site displaying multiple courses to learn C++ from. * [C++ Tutorial for Beginners](https://www.scaler.com/topics/cpp) - A comprenhensive tutorial on C++ curated by trained experts. * [cppexpert.online](https://cppexpert.online) - Learn the best C++ practices by improving code snippets with some problems or with bad practices. +* [C++ for yourself](https://github.com/cpp-for-yourself) - A comprehensive tutorial on modern C++ covering everything from fundamentals to software design. ## Weblogs *Useful C or C++ related weblogs.* From 26b78e504bc0eb947513d31996b8c25ad3590cf9 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 31 Jul 2024 16:25:56 +0900 Subject: [PATCH 069/154] Add simple_enum(enum support library) (#1558) * Add simple_enum(enum support library) * remove space --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index faafb29aa..99ea06b1c 100644 --- a/README.md +++ b/README.md @@ -977,6 +977,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Ponder](https://github.com/billyquith/ponder) - A C++11 library for reflection. [MIT] * [reflect-cpp](https://github.com/getml/reflect-cpp) - Serialization through reflection, including automatic field name retrieval from structs. [MIT] * [RTTR](https://github.com/rttrorg/rttr) - A C++11 library for reflection. [MIT] [website](http://www.rttr.org) +* [simple_enum](https://github.com/arturbac/simple_enum) - An Fast, Intuitive and Type-Safe C++ Enumeration Support Library. [BSL-1.0] [website](https://arturbac.github.io/simple_enum/) * [TSMP](https://github.com/fabian-jung/tsmp) - An intrusion and macro-free C++20 library for static reflection. It uses libclang to extract reflection data from your source code and makes it usable via template specialization. [MIT] * [visit_struct](https://github.com/cbeck88/visit_struct) - A miniature library for struct-field reflection in C++. [Boost] * [Refureku](https://github.com/jsoysouvanh/Refureku) - A C++17 runtime reflection and code generation library. [MIT] From 302dee69d6c9fc6911afed0286cd46cbee34abaf Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 31 Jul 2024 23:59:17 +0900 Subject: [PATCH 070/154] Add FTP client for C++ (#1559) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 99ea06b1c..c64bd5195 100644 --- a/README.md +++ b/README.md @@ -877,6 +877,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Dyad.c](https://github.com/rxi/dyad) - Asynchronous networking for C. [MIT] * [ENet](https://github.com/lsalzman/enet) - Reliable UDP networking library. [MIT] [website](http://enet.bespin.org/) * [evpp](https://github.com/Qihoo360/evpp) - C++ high performance networking with TCP/UDP/HTTP protocols. [BSD] +* [FTP client for C++](https://github.com/embeddedmz/ftpclient-cpp) - C++ client for making FTP requests. [MIT] * [H2O](https://github.com/h2o/h2o) - An optimized HTTP server with support for HTTP/1.x and HTTP/2. It can also be used as a library. [MIT] * [HTTP Parser](https://github.com/nodejs/http-parser) :zap: - A http request/response parser for C. [MIT] * [KCP](https://github.com/skywind3000/kcp/blob/master/README.en.md) - A fast and reliable ARQ protocol that helps applications to reduce network latency. [MIT] From 67cf8c61cf8c3cdd3dd13803f448caa6fee6bbf6 Mon Sep 17 00:00:00 2001 From: Juan Cruz Viotti Date: Sun, 11 Aug 2024 01:24:06 -0400 Subject: [PATCH 071/154] List JSON Toolkit (#1560) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c64bd5195..54ddb31e5 100644 --- a/README.md +++ b/README.md @@ -720,6 +720,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [json11](https://github.com/dropbox/json11) - A tiny JSON library for C++11. [MIT] * [json-struct](https://github.com/jorgen/json_struct) - High performance, single header JSON parser parsing to and from C++ structs. [MIT] * [json-voorhees](https://github.com/tgockel/json-voorhees) - JSON library for C++. Support for C++11. No dependencies, fast and dev-friendly. [Apache2] +* [JSON Toolkit](https://github.com/sourcemeta/jsontoolkit) - JSON, JSON Pointer, JSON Schema, and JSONL library for C++20. [AGPL/Commercial] * [jute](https://github.com/amir-s/jute) - Very simple C++ JSON Parser. [PublicDomain] * [libjson](https://github.com/vincenthz/libjson) - A JSON parser and printer library in C. easy to integrate with any model. [LGPL] * [libjson](http://sourceforge.net/projects/libjson/) - Lightweight JSON library. [?] From 48f9045728f7f60938aa05159afb435ad973f3f9 Mon Sep 17 00:00:00 2001 From: Matthew Reome Date: Thu, 22 Aug 2024 21:52:02 -0400 Subject: [PATCH 072/154] Update Cutelyst License (#1562) Cutelyst was re-licensed to BSD-3-Clause --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 54ddb31e5..843f8eacf 100644 --- a/README.md +++ b/README.md @@ -1112,7 +1112,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [C++ REST SDK](https://github.com/Microsoft/cpprestsdk) - Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. [MIT] * [CppCMS](http://cppcms.com/) - A Free High Performance Web Development Framework (not a CMS). [LGPLv3] * [Crow](https://github.com/CrowCpp/Crow) - Crow is a C++ microframework for running web services. It uses routing similar to Python's Flask. [BSD] [website](https://crowcpp.org) -* [Cutelyst](https://github.com/cutelyst/cutelyst) - A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. [LGPLv2.1+] [website](https://cutelyst.org/) +* [Cutelyst](https://github.com/cutelyst/cutelyst) - A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. [BSD-3-Clause] [website](https://cutelyst.org/) * [Drogon](https://github.com/an-tao/drogon) - A C++14/17 based, high-performance HTTP application framework. [MIT] * [C++ wfrest](https://github.com/wfrest/wfrest) - C++ Web Framework REST API. [Apache2] * [facil.io](https://github.com/boazsegev/facil.io) - Evented, high performance C web framework supporting HTTP, WebSockets, SSE and more. [MIT] [website](http://facil.io) From d4da57cd40db8e1c9632ecd4a35809f71887573c Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 20 Sep 2024 23:57:34 +0900 Subject: [PATCH 073/154] Add rapidhash (hash function library) (#1564) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 843f8eacf..5181bb66e 100644 --- a/README.md +++ b/README.md @@ -1195,6 +1195,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] * [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] * [RapidFuzz](https://github.com/rapidfuzz/rapidfuzz-cpp) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] [website](https://rapidfuzz.github.io/rapidfuzz-cpp/) +* [rapidhash](https://github.com/Nicoshev/rapidhash) - Very fast, high quality, platform-independent hashing algorithm. [BSD-2-Clause] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] * [scnlib](https://github.com/eliaskosunen/scnlib) - scanf for modern C++. [Apache-2.0] [website](https://v1.scnlib.dev/) * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] From 9341d15e5981635744e6bb5e7a07ffc9879b07c3 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 22 Sep 2024 05:47:59 +0900 Subject: [PATCH 074/154] Add wxCharts (wxWidgets charts library) (#1565) * Add wxCharts (wxWidgets charts library) * reorder --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5181bb66e..0867e99b2 100644 --- a/README.md +++ b/README.md @@ -589,6 +589,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Slint](https://github.com/slint-ui/slint) - Lightweight GUI toolkit for desktop and embedded. [GPL/Free/Proprietary] [website](https://slint.dev/) * [TGUI](https://github.com/texus/TGUI) - Cross-platform modern c++ GUI. [Zlib] [website](https://tgui.eu/) * [WebUI](https://github.com/webui-dev/webui) - Use any web browser as GUI, with your preferred language in the backend and HTML5 in the frontend. [MIT] [website](https://webui.me/) +* [wxCharts](https://github.com/wxIshiko/wxCharts) - A library to create charts in wxWidgets applications. [MIT] [website](https://www.wxishiko.com/wxCharts/) * [wxWidgets](http://wxwidgets.org/) - A C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base. [Own LGPL] * [xtd](https://github.com/gammasoft71/xtd) - Modern C++17/20 framework to create console (CLI), forms (GUI like WinForms) and tunit (unit tests like Microsoft Unit Testing Framework) applications on Windows, macOS, Linux, iOS and android. [MIT] * [Yue](https://github.com/yue/yue) - A library for creating native cross-platform GUI apps. [LGPLv2] From 9d4c94b047317040ee07192bad0e13f792c9e760 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 24 Sep 2024 09:55:57 +0900 Subject: [PATCH 075/154] Add BqLog (logging library) (#1566) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 0867e99b2..d2025efc4 100644 --- a/README.md +++ b/README.md @@ -744,6 +744,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Blackhole](https://github.com/3Hren/blackhole) - Attribute-based logging framework, which is designed to be fast, modular and highly customizable. [MIT] * [Boost.Log](https://github.com/boostorg/log) - Designed to be very modular and extensible. [Boost] [website](https://boost.org/libs/log) +* [BqLog](https://github.com/Tencent/BqLog) - A lightweight, high-performance logging system used in projects such as "Honor of Kings". [Apache-2.0] * [Easylogging++](https://github.com/amrayn/easyloggingpp) - Extremely light-weight high performance logging library for C++11 (or higher) applications. [MIT] * [fmtlog](https://github.com/MengRao/fmtlog) - A performant fmtlib-style logging library with latency in nanoseconds. [MIT] * [G3log](https://github.com/KjellKod/g3log) - Asynchronous logger with Dynamic Sinks. [PublicDomain] From f2bd50e89df927901781ac53c66589cc8c0ce24e Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 24 Sep 2024 17:39:07 +0900 Subject: [PATCH 076/154] Add REFLECT (reflection library) (#1567) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d2025efc4..055a974b3 100644 --- a/README.md +++ b/README.md @@ -979,6 +979,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [meta](https://github.com/skypjack/meta) - Header-only, non-intrusive and macro-free runtime reflection system in C++. [MIT] * [Nameof](https://github.com/Neargye/nameof) - Header-only C++17 library provides nameof macros and functions to obtain the simple name of variable, type, function, macro, and enum. [MIT] * [Ponder](https://github.com/billyquith/ponder) - A C++11 library for reflection. [MIT] +* [REFLECT](https://github.com/qlibs/reflect) - C++20 Static Reflection library. [MIT] * [reflect-cpp](https://github.com/getml/reflect-cpp) - Serialization through reflection, including automatic field name retrieval from structs. [MIT] * [RTTR](https://github.com/rttrorg/rttr) - A C++11 library for reflection. [MIT] [website](http://www.rttr.org) * [simple_enum](https://github.com/arturbac/simple_enum) - An Fast, Intuitive and Type-Safe C++ Enumeration Support Library. [BSL-1.0] [website](https://arturbac.github.io/simple_enum/) From bc625c8d36acbc263c314fe861e18e28eea220b4 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 25 Sep 2024 23:39:49 +0900 Subject: [PATCH 077/154] Add FastLZ (LZ77 compression library) (#1568) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 055a974b3..82a0aab75 100644 --- a/README.md +++ b/README.md @@ -260,6 +260,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Brotli](https://github.com/google/brotli) - Brotli compression format. Developed by Google. [MIT] * [bzip2](http://www.bzip.org/) - A freely available, patent free, high-quality data compressor. [BSD] * [bzip3](https://github.com/kspalaiologos/bzip3) - A better and stronger spiritual successor to BZip2. [LGPL] +* [FastLZ](https://github.com/ariya/FastLZ) - Small & portable byte-aligned LZ77 compression. [MIT] * [FiniteStateEntropy](https://github.com/Cyan4973/FiniteStateEntropy) - New generation entropy codecs : Finite State Entropy and Huff0. * [heatshrink](https://github.com/atomicobject/heatshrink) - data compression library for embedded/real-time systems [ISC] * [Kanzi](https://github.com/flanglet/kanzi-cpp) - a modern, modular, portable and efficient lossless data compressor implemented in C++. [Apache-2.0] From 2a3c5d84c34245399180d67c36d430063cacc1f9 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 27 Sep 2024 14:55:58 +0900 Subject: [PATCH 078/154] Add coros (coroutine library) (#1569) * Add coros (coroutine library) * capitalize --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 82a0aab75..665e1e2bb 100644 --- a/README.md +++ b/README.md @@ -294,6 +294,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Channel](https://github.com/andreiavrammsd/cpp-channel) - Thread-safe container for sharing data between threads. [MIT] * [ck](https://github.com/concurrencykit/ck) - Concurrency primitives, safe memory reclamation mechanisms and non-blocking data structures. [BSD] * [concurrentqueue](https://github.com/cameron314/concurrentqueue) - A fast multi-producer, multi-consumer lock-free concurrent queue for C++11. [BSD,Boost] +* [Coros](https://github.com/mtmucha/coros) - An easy-to-use and fast library for task-based parallelism, utilizing coroutines. [BSL-1.0] * [CUB](https://github.com/NVlabs/cub) - CUB provides state-of-the-art, reusable software components for every layer of the CUDA programming mode. [New BSD] * [cuda-api-wrappers](https://github.com/eyalroz/cuda-api-wrappers) - Lightweight, Modern-C++ wrappers for the CUDA GPU programming runtime API. [BSD] * [cupla](https://github.com/ComputationalRadiationPhysics/cupla) - C++ API to run CUDA/C++ on OpenMP, Threads, TBB, ... through Alpaka. [LGPLv3+] From 199f5b918c05274e29d371c8c178747f1f2599e7 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 29 Sep 2024 00:25:53 +0900 Subject: [PATCH 079/154] Add HighwayHash (#1570) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 665e1e2bb..673e7ae18 100644 --- a/README.md +++ b/README.md @@ -1181,6 +1181,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. * [happly](https://github.com/nmwsharp/happly) - A C++ header-only parser for the PLY file format. Parse .ply happily! [MIT] * [hedley](https://github.com/nemequ/hedley) - A C/C++ header file designed to smooth over some platform-specific annoyances. [website](https://nemequ.github.io/hedley/) +* [HighwayHash](https://github.com/google/highwayhash) - Fast strong hash functions: SipHash/HighwayHash. [Apache-2.0] * [icecream-cpp](https://github.com/renatoGarcia/icecream-cpp) - A small printing library for debugging purposes. [MIT] * [inja](https://github.com/pantor/inja) - A Template Engine for Modern C++. [MIT] * [Jinja2С++](https://github.com/jinja2cpp/Jinja2Cpp) - almost full-conformance template engine implementation. [website](https://jinja2cpp.github.io/) From 17be50a30b17f87ccc941264d1723ee66f1fd318 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 29 Sep 2024 18:56:35 +0900 Subject: [PATCH 080/154] Add Wirehair (Fountain Code library) (#1572) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 673e7ae18..7ca8e1ebe 100644 --- a/README.md +++ b/README.md @@ -1077,6 +1077,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [protobuf-c](https://github.com/protobuf-c/protobuf-c) - Protocol Buffers implementation in C. [BSD] * [SimpleBinaryEncoding](https://github.com/real-logic/simple-binary-encoding) - encoding and decoding application messages in binary format for low-latency applications. [Apache2] * [upb](https://github.com/protocolbuffers/upb) - A small protobuf implementation in C. [BSD] +* [Wirehair](https://github.com/catid/wirehair) - O(N) Fountain Code for Large Data. [BSD-3-Clause] * [YAS](https://github.com/niXman/yas) - Very fast **Y**et **A**nother **S**erialization library supports the binary/text/json formats. [Boost] * [zpp_bits](https://github.com/eyalz800/zpp_bits) - Actually, the fastest modern **S**erialization library. Just check [this video](https://www.youtube.com/watch?v=G7-GQhCw8eE&ab_channel=CppCon). From fe2c640490a23e421a7775e06d16a7c4da1358b0 Mon Sep 17 00:00:00 2001 From: healerfighter <149600855+healerfighter@users.noreply.github.com> Date: Mon, 30 Sep 2024 04:27:39 +0530 Subject: [PATCH 081/154] fixed typo error (#1571) --- videos.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/videos.md b/videos.md index 740879688..fb514ca34 100644 --- a/videos.md +++ b/videos.md @@ -1,5 +1,5 @@ * [Modern C++: What You Need to Know](https://www.youtube.com/watch?v=TJHgp1ugKGM) - This talk will give an update on recent progress and near-future directions for C++, both at Microsoft and across the industry. This is a great introduction to the current state of the language, including a glimpse into the future of general purpose, performance-intensive, power-friendly, powerful native programming. [Apr 7, 2014] * [Bjarne Stroustrup - The Essence of C++](https://www.youtube.com/watch?v=86xWVb4XIyE) - Bjarne Stroustrup, creator and developer of C++, delivers his talk entitled, The Essence of C++. Stroustrup has held distinguished posts at Texas A&M University and spent significant time in the Computer Science Departments of Cambridge, Columbia and Princeton. [May 6, 2014] -* [CppCon - The C++ Conference](https://www.youtube.com/user/CppCon/) - An international conference about C++ and its aplications on modern software engineering. -* [C++Now - The C++ Conference](https://www.youtube.com/@BoostCon) - An international conference about C++ and its aplications on modern software engineering. +* [CppCon - The C++ Conference](https://www.youtube.com/user/CppCon/) - An international conference about C++ and its applications on modern software engineering. +* [C++Now - The C++ Conference](https://www.youtube.com/@BoostCon) - An international conference about C++ and its applications on modern software engineering. From 9811b698209eac6eb38a26ddfaf936b855f75054 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 30 Sep 2024 14:20:11 +0900 Subject: [PATCH 082/154] Add QOI (image format library) (#1573) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 7ca8e1ebe..ae7563a41 100644 --- a/README.md +++ b/README.md @@ -659,6 +659,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [OpenEXR](http://www.openexr.com/) - Cross-platform library for high dynamic range imaging. [Modified BSDF] * [OpenImageIO](https://github.com/OpenImageIO/oiio) - Powerful image and texture wrangling library with support for a wide number of common lossy and RAW formats. [Modified BSD] * [OpenJPEG](https://github.com/uclouvain/openjpeg) - an open-source JPEG 2000 codec written in C language. [BSD-2-Clause] +* [QOI](https://github.com/phoboslab/qoi) - The “Quite OK Image Format” for fast, lossless image compression. [MIT] * [SAIL](https://github.com/happy-sea-fox/sail) - Easy-to-use cross-platform image decoding library with pluggable image codecs. [MIT] * [Simd](https://github.com/ermig1979/Simd) - C++ image processing library with using of SIMD: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX-512, VMX(Altivec) and VSX(Power7), NEON for ARM. [MIT] * [stb-image](https://github.com/nothings/stb/blob/master/stb_image.h) - STB single-header image loading library. [Public Domain] From c4034ae68fa0ee728b041518c24cc40499d64d8d Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 1 Oct 2024 23:48:08 +0900 Subject: [PATCH 083/154] Add MPH (hash function library) (#1574) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ae7563a41..908f4d163 100644 --- a/README.md +++ b/README.md @@ -1198,6 +1198,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libusb](https://libusb.info/) - 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] * [mio](https://github.com/mandreyel/mio) - Cross-platform C++11 header-only library for memory mapped file IO. [MIT] +* [MPH](https://github.com/qlibs/mph) - C++20 [Minimal] Static Perfect Hash library. [MIT] * [PEGTL](https://github.com/taocpp/PEGTL) - The Parsing Expression Grammar Template Library. [MIT] * [pprint](https://github.com/p-ranav/pprint) - Pretty Printer for Modern C++. [MIT] * [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] From 1c72d59332ee1c08bad93e43868b564d2a06d203 Mon Sep 17 00:00:00 2001 From: nirlivne Date: Sat, 19 Oct 2024 07:58:12 +0300 Subject: [PATCH 084/154] Added ThreadPool and BS::thread_pool (corrected) (#1582) * Added ThreadPool and BS::thread_pool * Update README.md * Update README.md Fix incorrect link for BS::thread_pool --------- Co-authored-by: Nir Livne --- README.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/README.md b/README.md index 908f4d163..3bb27409e 100644 --- a/README.md +++ b/README.md @@ -291,6 +291,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Async++](https://github.com/Amanieu/asyncplusplus) - A lightweight concurrency framework for C++11, inspired by the Microsoft PPL library and the N3428 C++ standard proposal. [MIT] * [Boost.Compute](https://github.com/boostorg/compute) - A C++ GPU Computing Library for OpenCL. [Boost] [website](https://boost.org/libs/compute) * [Bolt](https://github.com/HSA-Libraries/Bolt) - A C++ template library optimized for GPUs. [Apache2] +* [BS::thread_pool](https://github.com/bshoshany/thread-pool) - A fast, lightweight, and easy-to-use C++17 thread pool library [MIT] * [Channel](https://github.com/andreiavrammsd/cpp-channel) - Thread-safe container for sharing data between threads. [MIT] * [ck](https://github.com/concurrencykit/ck) - Concurrency primitives, safe memory reclamation mechanisms and non-blocking data structures. [BSD] * [concurrentqueue](https://github.com/cameron314/concurrentqueue) - A fast multi-producer, multi-consumer lock-free concurrent queue for C++11. [BSD,Boost] @@ -325,6 +326,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [readerwriterqueue](https://github.com/cameron314/readerwriterqueue) - A fast single-producer, single-consumer lock-free queue for C++. [BSD] * [stdgpu](https://github.com/stotko/stdgpu) - Efficient STL-like Data Structures on the GPU. [Apache2] * [Taskflow](https://github.com/taskflow/taskflow) - A General-purpose Parallel and Heterogeneous Task Programming System. (renamed from Cpp-Taskflow) [MIT] +* [ThreadPool](https://github.com/progschj/ThreadPool) - A simple C++11 Thread Pool implementation [zlib] * [Thrust](http://thrust.github.io/) - A parallel algorithms library which resembles the C++ Standard Template Library (STL). [Apache2] * [transwarp](https://github.com/bloomen/transwarp) - A header-only C++ library for task concurrency. [MIT] * [VexCL](https://github.com/ddemidov/vexcl) - A C++ vector expression template library for OpenCL/CUDA. [MIT] From cc924675e237aca1d3b11df312d93f7e97f1260a Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 21 Oct 2024 11:28:11 +0900 Subject: [PATCH 085/154] Add Trilogy (mysql client library) (#1583) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3bb27409e..8623adc48 100644 --- a/README.md +++ b/README.md @@ -449,6 +449,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [UnQLite](https://github.com/symisc/unqlite) - A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] [website](https://unqlite.org/) * [upscaledb](https://upscaledb.com) - An embedded "typed" key/value store with a built-in query interface. [GPLv3] * [TigerBeetleDB C++ client (Community)](https://github.com/kassane/tigerbeetle-cpp) - TigerBeetle is a financial accounting database designed for mission critical safety and performance to power the future of financial services. [BSL-1.0] +* [Trilogy](https://github.com/trilogy-libraries/trilogy) - a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. [MIT] * [UStore](https://github.com/unum-cloud/ustore) - Multi-Modal database for BLOBs, JSON, and graphs. [Apache2] * [Velox](https://github.com/facebookincubator/velox) - A C++ vectorized database acceleration library aimed to optimizing query engines and data processing systems. [Apache-2.0] [website](https://velox-lib.io/) From c9e951e4640dc278dad8506556f201d07a2aea8e Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 22 Oct 2024 23:53:43 +0900 Subject: [PATCH 086/154] Add Saucer (webview library) (#1584) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8623adc48..51b44fd55 100644 --- a/README.md +++ b/README.md @@ -590,6 +590,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Qwt](http://qwt.sourceforge.net/) - Qt Widgets for Technical Applications. [Own based on LGPL] * [QwtPlot3D](http://qwtplot3d.sourceforge.net/) - A feature-rich Qt/OpenGL-based C++ programming library, providing essentially a bunch of 3D-widgets. [zlib] * [RmlUi](https://github.com/mikke89/RmlUi) - The HTML/CSS User Interface library evolved. Fork of libRocket. [MIT] +* [Saucer](https://github.com/saucer/saucer) - A modern, cross-platform C++ webview library. [MIT] * [Sciter](http://sciter.com/) - Sciter is an embeddable HTML/CSS/scripting engine aimed to be used as an UI layer of modern desktop applications. [Free/Commercial] * [Slint](https://github.com/slint-ui/slint) - Lightweight GUI toolkit for desktop and embedded. [GPL/Free/Proprietary] [website](https://slint.dev/) * [TGUI](https://github.com/texus/TGUI) - Cross-platform modern c++ GUI. [Zlib] [website](https://tgui.eu/) From cecc82ea3c51992ed47f91d6b76a13199c466d25 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 23 Oct 2024 00:01:47 +0900 Subject: [PATCH 087/154] fix typo (#1585) --- README.md | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 51b44fd55..3b6d30797 100644 --- a/README.md +++ b/README.md @@ -140,7 +140,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Evolving Objects](http://eodev.sourceforge.net/) - A template-based, ANSI-C++ evolutionary computation library which helps you to write your own stochastic optimization algorithms insanely fast. [LGPL] * [frugally-deep](https://github.com/Dobiasd/frugally-deep) - Header-only library for using Keras models in C++. [MIT] * [Genann](https://github.com/codeplea/genann) - Simple neural network library in C. [zlib] -* [MXNet](https://github.com/apache/incubator-mxnet) - Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more. [website](https://mxnet.apache.org) +* [MXNet](https://github.com/apache/incubator-mxnet) - Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, JavaScript and more. [website](https://mxnet.apache.org) * [PyTorch](https://github.com/pytorch/pytorch) - Tensors and Dynamic neural networks in Python with strong GPU acceleration. [website](https://pytorch.org) * [flashlight](https://github.com/flashlight/flashlight) - Flashlight is a fast, flexible machine learning library written entirely in C++. [BSD] * [Recast/Detour](https://github.com/recastnavigation/recastnavigation) - (3D) Navigation mesh generator and pathfinder, mostly for games. [zlib] @@ -1040,7 +1040,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [ctypes.sh](https://github.com/taviso/ctypes.sh) - A foreign function interface for bash. [MIT] * [Cython](https://github.com/cython/cython) - Cython is an optimising static compiler for both the Python programming language and the extended Cython programming language (based on Pyrex). It makes writing C extensions for Python as easy as Python itself. [Apache] [website](http://cython.org/) * [djinni](https://djinni.xlcpp.dev) - A tool for generating cross-language type declarations and interface bindings. [Apache2] -* [Duktape](https://github.com/svaarala/duktape) - An embeddable Javascript engine with compact footprint. [MIT] [website](http://duktape.org) +* [Duktape](https://github.com/svaarala/duktape) - An embeddable JavaScript engine with compact footprint. [MIT] [website](http://duktape.org) * [JavaCpp](https://github.com/bytedeco/javacpp) - The missing bridge between Java and native C++. [Apache2] * [libffi](https://github.com/libffi/libffi) - A portable foreign-function interface library. [MIT] [website](https://sourceware.org/libffi/) * [Lua](http://www.lua.org/) - A minimal and fast scripting engine for configuration files and basic application scripting. [MIT] @@ -1052,10 +1052,10 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) * [pocketpy](https://github.com/blueloveTH/pocketpy) - C++17 header-only Python interpreter for game scripting. [MIT] [website](https://pocketpy.dev/) * [pybind11](https://github.com/pybind/pybind11) - Seamless operability between C++11 and Python. [BSD] -* [QuickJS](https://bellard.org/quickjs/) - a small and embeddable Javascript engine. [MIT] +* [QuickJS](https://bellard.org/quickjs/) - a small and embeddable JavaScript engine. [MIT] * [SIP](https://riverbankcomputing.com/software/sip/intro) - C or C++ Bindings Generator for Python v2 and v3. [GPL] * [sol2](https://github.com/ThePhD/sol2) - A C++ <-> Lua API wrapper with advanced features and top notch performance. [MIT] -* [SWIG](https://github.com/swig/swig) - A wrapper/interface Generator that let you link your c++ code to Javascript, Perl, PHP, Python, Tcl and Ruby. [GPL/Output not licensed] [website](http://www.swig.org/) +* [SWIG](https://github.com/swig/swig) - A wrapper/interface Generator that let you link your c++ code to JavaScript, Perl, PHP, Python, Tcl and Ruby. [GPL/Output not licensed] [website](http://www.swig.org/) * [txiki.js](https://github.com/saghul/txiki.js) - A tiny JavaScript runtime. [MIT] * [V7](https://github.com/cesanta/v7) - An embedded JavaScript engine. [GPL2] * [V8](https://v8.dev) - A fast JavaScript engine by Google that can be embedded into any C++ application. [BSD] @@ -1262,7 +1262,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Rextester](http://rextester.com/runcode) - Online compiler which provides several compilers(Clang, GCC, MSVC) and several editors. * [Try It Online](https://tio.run/) - TIO is a family of online interpreters for an evergrowing list of practical and recreational programming languages. * [Wandbox](https://wandbox.org) - An online Clang/GCC compiler with Boost available. -* [paiza.io](https://paiza.io/en) - An online C/C++ compiler with multiple files supporting feature, Github(gist) integration and collaborative editing. +* [paiza.io](https://paiza.io/en) - An online C/C++ compiler with multiple files supporting feature, GitHub(gist) integration and collaborative editing. * [InterviewBit](https://www.interviewbit.com/online-cpp-compiler/) - A simple and easy to use online C++ compiler. ## Debugger @@ -1283,7 +1283,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Cevelop](https://www.cevelop.com) - Cross-platform C and C++ IDE based on Eclipse CDT with additional plug-ins. * [CLion](http://www.jetbrains.com/clion/) - Cross-platform C and C++ IDE from JetBrains. * [Code::Blocks](http://www.codeblocks.org/) - A free C, C++ and Fortran IDE. -* [CodeLite](http://codelite.org/) - Another cross-plaform, free C and C++ IDE. [GPL2 with an exception for plugins] +* [CodeLite](http://codelite.org/) - Another cross-platform, free C and C++ IDE. [GPL2 with an exception for plugins] * [color_coded](https://github.com/jeaye/color_coded) - A vim plugin for libclang-based highlighting. [MIT] * [Dev-C++](http://sourceforge.net/projects/orwelldevcpp/) - A portable C/C++/C++11 IDE. * [Eclipse CDT](http://www.eclipse.org/cdt/) - A fully functional C and C++ IDE based on the Eclipse platform. @@ -1425,7 +1425,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [CppCon Talks](https://www.youtube.com/user/CppCon/videos) :zap: - The C++ conference. * [Quick game development with C++11/C++14](https://github.com/SuperV1234/cppcon2014) - CppCon 2014 talk by Vittorio Romeo. * [Presentation on Hana for C++Now 2015](https://github.com/ldionne/hana-cppnow-2015) -* [Meeting Cpp](https://www.youtube.com/user/MeetingCPP/videos) - Meeting C++ Youtube Channel +* [Meeting Cpp](https://www.youtube.com/user/MeetingCPP/videos) - Meeting C++ YouTube Channel ## Videos *Fantastic C or C++ related videos.* From f6258fd9d4e2ebe052861664bca7b65dc00ea3f7 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 23 Oct 2024 11:28:35 +0900 Subject: [PATCH 088/154] Add CrossDB (embedded RDBMS) (#1586) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3b6d30797..ef21626cf 100644 --- a/README.md +++ b/README.md @@ -416,6 +416,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny *Database Libraries, SQL Servers, ODBC Drivers, and Tools* * [ClickHouse](https://github.com/ClickHouse/clickhouse-cpp) - C++ client for ClickHouse DBMS. [Apache2] +* [CrossDB](https://github.com/crossdb-org/crossdb) - Ultra High-performance Lightweight Embedded and Server OLTP RDBMS. [MPL-2.0] [website](https://crossdb.org/) * [DuckDB](https://duckdb.org/) - in-process SQL OLAP Database Management System. [MIT] * [hiberlite](https://github.com/paulftw/hiberlite) - C++ Object-relational mapping for sqlite3. [BSD] * [Hiredis](https://github.com/redis/hiredis) - A minimalistic C client library for the Redis database. [BSD] From 1ceacc079bc1f267d2272296fac5b7bda0999561 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 23 Oct 2024 11:31:36 +0900 Subject: [PATCH 089/154] DuckDB add website (#1587) * DuckDB add website * make https --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index ef21626cf..081e8872c 100644 --- a/README.md +++ b/README.md @@ -417,7 +417,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [ClickHouse](https://github.com/ClickHouse/clickhouse-cpp) - C++ client for ClickHouse DBMS. [Apache2] * [CrossDB](https://github.com/crossdb-org/crossdb) - Ultra High-performance Lightweight Embedded and Server OLTP RDBMS. [MPL-2.0] [website](https://crossdb.org/) -* [DuckDB](https://duckdb.org/) - in-process SQL OLAP Database Management System. [MIT] +* [DuckDB](https://duckdb.org/) - in-process SQL OLAP Database Management System. [MIT] [website](https://duckdb.org/) * [hiberlite](https://github.com/paulftw/hiberlite) - C++ Object-relational mapping for sqlite3. [BSD] * [Hiredis](https://github.com/redis/hiredis) - A minimalistic C client library for the Redis database. [BSD] * [Infinity](https://github.com/infiniflow/infinity) - The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2] From 6f534674bda800630cb3d201f8c0ac052e2c84d1 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 27 Oct 2024 23:59:20 +0900 Subject: [PATCH 090/154] Add tuibox (TUI library) (#1588) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 081e8872c..2bbd73829 100644 --- a/README.md +++ b/README.md @@ -252,6 +252,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [TCLAP](http://tclap.sourceforge.net) - A mature, stable and feature-rich library for defining and accessing command line arguments in ANSI C++. [MIT] * [termbox](https://github.com/nsf/termbox) - A C library for writing text-based user interfaces. [MIT] * [TermOx](https://github.com/a-n-t-h-o-n-y/TermOx) - C++17 Terminal User Interface(TUI) Library. [MIT] + * [tuibox](https://github.com/Cubified/tuibox) - A single-header terminal UI (TUI) library, capable of creating mouse-driven, interactive applications on the command line. [MIT] ## Compression *Compression and Archiving Libraries* From 40975de1b9e2850d19fa080abdd5f19862a2c829 Mon Sep 17 00:00:00 2001 From: Evgeny Kislov Date: Mon, 28 Oct 2024 09:45:48 +0300 Subject: [PATCH 091/154] Add Ctrl+C (Ctrl+C handler library) (#1589) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 2bbd73829..fe1dbef47 100644 --- a/README.md +++ b/README.md @@ -233,6 +233,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [CLI11](https://github.com/CLIUtils/CLI11) - Header only single or multi-file C++11 library for simple and advanced CLI parsing. [BSD] * [clipp](https://github.com/muellan/clipp) - Easy to use, powerful and expressive command line argument handling for C++11/14/17 contained in a single header file. [MIT] * [cpp-terminal](https://github.com/jupyter-xeus/cpp-terminal) - Small header only C++ library for writing multiplatform terminal applications. [MIT] + * [Ctrl+C](https://github.com/evgenykislov/ctrl-c) - Crossplatform C++11 library to handle Ctrl+C event in custom functions. [MIT] * [cxxopts](https://github.com/jarro2783/cxxopts) - Lightweight C++ command line option parser. [MIT] * [docopt.cpp](https://github.com/docopt/docopt.cpp) - A library to generate option parser from docstring. [MIT/Boost] * [FINAL CUT](https://github.com/gansm/finalcut) - Library for creating terminal applications with text-based widgets. [LGPL] From 76beed6252f88d221a480ed5d22816b99d8fd178 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 29 Oct 2024 17:42:41 +0900 Subject: [PATCH 092/154] Add jpegli (jpeg library) (#1590) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fe1dbef47..258363a2c 100644 --- a/README.md +++ b/README.md @@ -650,6 +650,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [DCMTK](http://dicom.offis.de/dcmtk.php.en) - DICOM Toolkit. * [GDCM](http://gdcm.sourceforge.net/wiki/index.php/Main_Page) - Grassroots DICOM library. * [ITK](http://www.itk.org/) - An open-source, cross-platform system for image analysis. [Apache2 from ITK 4.0] +* [Jpegli][https://github.com/google/jpegli] - an improved JPEG encoder and decoder implementation. [BSD-3-Clause] * [Leptonica](https://github.com/DanBloomberg/leptonica) - Leptonica is an open source library containing software that is broadly useful for image processing and image analysis applications. [BSD-2-Clause] [website](http://leptonica.org/index.html) * [libavif](https://github.com/AOMediaCodec/libavif) - Library for encoding and decoding .avif files. [BSD-2-Clause] * [libfacedetection](https://github.com/ShiqiYu/libfacedetection) - Open source library for face detection in images. The face detection speed can reach 1500FPS. [BSD] From 442d7272e9a5a4a3b5ca074d4e18f53733e9f58b Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 30 Oct 2024 15:34:03 +0900 Subject: [PATCH 093/154] Add barkeep (console animation library) (#1591) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 258363a2c..c70e6b991 100644 --- a/README.md +++ b/README.md @@ -228,6 +228,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Argh!](https://github.com/adishavit/argh) - A minimalist, frustration-free, header-only argument handler. [BSD] * [argparse](https://github.com/p-ranav/argparse) - Argument Parser for Modern C++. [MIT] * [args](https://github.com/taywee/args) - A simple header-only C++ argument parser library. [MIT] + * [barkeep](https://github.com/oir/barkeep) - Small C++ header to display async animations, counters, and progress bars. [Apache-2.0] [website](https://oir.github.io/barkeep/) * [Boost.Program_options](https://github.com/boostorg/program_options) - A library to obtain program options via conventional methods such as command line and config file. [Boost] [website](https://boost.org/libs/program_options) * [cli](https://github.com/daniele77/cli) - A cross-platform header only C++14 library for interactive command line interfaces (Cisco style). [Boost] * [CLI11](https://github.com/CLIUtils/CLI11) - Header only single or multi-file C++11 library for simple and advanced CLI parsing. [BSD] From fae0d013b59d8b127de7d10b3ee39570a272414d Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 31 Oct 2024 21:40:11 +0900 Subject: [PATCH 094/154] Add Pipes (pipelines for collections) (#1592) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c70e6b991..648de4d9c 100644 --- a/README.md +++ b/README.md @@ -1209,6 +1209,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [mio](https://github.com/mandreyel/mio) - Cross-platform C++11 header-only library for memory mapped file IO. [MIT] * [MPH](https://github.com/qlibs/mph) - C++20 [Minimal] Static Perfect Hash library. [MIT] * [PEGTL](https://github.com/taocpp/PEGTL) - The Parsing Expression Grammar Template Library. [MIT] +* [Pipes](https://github.com/joboccara/pipes) - Pipelines for expressive code on collections in C++. [MIT] * [pprint](https://github.com/p-ranav/pprint) - Pretty Printer for Modern C++. [MIT] * [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] * [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] From 91e219ef0cd618fda0dc37cb348c9376ee726a9e Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 1 Nov 2024 01:37:08 +0900 Subject: [PATCH 095/154] Add curlpp (libcurl C++ wrapper) (#1593) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 648de4d9c..179873443 100644 --- a/README.md +++ b/README.md @@ -888,6 +888,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [CppServer](https://github.com/chronoxor/CppServer) - Ultra fast and low latency asynchronous socket server & client C++ library with support TCP, SSL, UDP, HTTP, HTTPS, WebSocket protocols and 10K connections problem solution. [MIT] * [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://docs.libcpr.org) * [curlcpp](https://github.com/JosephP91/curlcpp) - An object oriented C++ wrapper for CURL(libcurl). [MIT] +* [curlpp](https://github.com/jpbarrette/curlpp) -C++ wrapper around libcURL. [MIT] * [DPDK](https://github.com/DPDK/dpdk) - Data Plane Development Kit, libraries and drivers for fast packet processing. [BSD-3-Clause & GPL-2.0] [website](https://www.dpdk.org/) * [Dyad.c](https://github.com/rxi/dyad) - Asynchronous networking for C. [MIT] * [ENet](https://github.com/lsalzman/enet) - Reliable UDP networking library. [MIT] [website](http://enet.bespin.org/) From b188e7800ddf0b777cd78b6d59dee7b0cabf6efa Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 4 Nov 2024 12:55:31 +0900 Subject: [PATCH 096/154] Add kuzu (embedded database library) (#1595) * Add kuzu (embedded database library) * remove space --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 179873443..845c970b9 100644 --- a/README.md +++ b/README.md @@ -424,6 +424,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [hiberlite](https://github.com/paulftw/hiberlite) - C++ Object-relational mapping for sqlite3. [BSD] * [Hiredis](https://github.com/redis/hiredis) - A minimalistic C client library for the Redis database. [BSD] * [Infinity](https://github.com/infiniflow/infinity) - The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2] +* [Kuzu](https://github.com/kuzudb/kuzu) - Embeddable property graph database management system built for query speed and scalability. Implements Cypher. [MIT] [website](https://kuzudb.com/) * [Kvrocks](https://github.com/apache/incubator-kvrocks) - A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol. [Apache2] * [LevelDB](https://github.com/google/leveldb) - A fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. [BSD] * [libpg_query](https://github.com/pganalyze/libpg_query) - C library for accessing the PostgreSQL parser outside of the server environment. [BSD-3-Clause] From c50feba8d26cf2e3d825d6be6bbbcc867252f958 Mon Sep 17 00:00:00 2001 From: Stefano Mandelli Date: Sun, 10 Nov 2024 05:22:49 +0100 Subject: [PATCH 097/154] avcpp lib has just been added (#1596) Modern C++ wrapper around FFmpeg Co-authored-by: Stefano Mandelli --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 845c970b9..697766696 100644 --- a/README.md +++ b/README.md @@ -1112,6 +1112,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libvpx](http://www.webmproject.org/code/) - VP8/VP9 Codec SDK. [BSD] * [FFmpeg](https://www.ffmpeg.org/) - A complete, cross-platform solution to record, convert and stream audio and video. [LGPL2/GPL2] +* [avcpp](https://github.com/h4tr3d/avcpp) - Modern C++ wrapper around FFmpeg. [MIT] * [libde265](https://github.com/strukturag/libde265) - Open h.265 video codec implementation. [LGPL] [website](http://www.libde265.org/) * [x265](https://bitbucket.org/multicoreware/x265_git/src) - Open h.265 video codec implementation. [GPL2] [website](https://x265.readthedocs.io/en/master/) * [OpenH264](https://github.com/cisco/openh264) - Open Source H.264 Codec. [BSD] [website](http://www.openh264.org/) From 633d5fa37adae996606314c1f094cc80bb893df5 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 17 Nov 2024 23:10:30 +0900 Subject: [PATCH 098/154] Add json.cpp (json library) (#1601) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 697766696..e5c3a6371 100644 --- a/README.md +++ b/README.md @@ -723,6 +723,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Jsmn](https://github.com/zserge/jsmn) - A minimalistic JSON parser in C. [MIT] * [json](https://github.com/nlohmann/json) :zap: - JSON for Modern C++. [MIT] [website](https://json.nlohmann.me) * [JSON++](https://github.com/hjiang/jsonxx) - A JSON parser in C++. [MIT] +* [json.cpp](https://github.com/jart/json.cpp) - a baroque JSON parsing / serialization library for C++. [Apache-2.0] * [json.h](https://github.com/sheredom/json.h) - A simple one header/one source solution to parsing JSON in C and C++. [Unlicense] * [json-build](https://github.com/lcsmuller/json-build) - C89 tiny zero-allocation JSON serializer. [MIT] * [json-c](https://github.com/json-c/json-c) - A JSON implementation in C. [MIT] From e6e3262aa2e92befe89aeb42b5bc177d128efcc5 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 18 Nov 2024 23:26:08 +0900 Subject: [PATCH 099/154] Add uv-cpp (libuv wrapper) (#1602) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e5c3a6371..3390e99d4 100644 --- a/README.md +++ b/README.md @@ -163,6 +163,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libuv](https://github.com/libuv/libuv) - Cross-platform asynchronous I/O. [BSD] * [promise-cpp](https://github.com/xhawk18/promise-cpp) - Header only library that implements Promise/A+ standard. [Anti-996] * [uvw](https://github.com/skypjack/uvw) - C++ wrapper for libuv. [MIT] +* [uv-cpp](https://github.com/wlgq2/uv-cpp) - a simple interface, high-performance network library based on C++11. [MIT] ## Audio *Audio, Sound, Music, Digitized Voice Libraries* From ac64c0f271956bd504df64d557dc281b85bd9c48 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 20 Nov 2024 03:57:08 +0900 Subject: [PATCH 100/154] Add reproc (process library) (#1603) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3390e99d4..6b2f41045 100644 --- a/README.md +++ b/README.md @@ -1221,6 +1221,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [RapidFuzz](https://github.com/rapidfuzz/rapidfuzz-cpp) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] [website](https://rapidfuzz.github.io/rapidfuzz-cpp/) * [rapidhash](https://github.com/Nicoshev/rapidhash) - Very fast, high quality, platform-independent hashing algorithm. [BSD-2-Clause] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] +* [reproc](https://github.com/DaanDeMeyer/reproc) - A cross-platform (C99/C++11) process library. [MIT] * [scnlib](https://github.com/eliaskosunen/scnlib) - scanf for modern C++. [Apache-2.0] [website](https://v1.scnlib.dev/) * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] * [SDS](https://github.com/antirez/sds) - Simple Dynamic Strings library for C. [BSD] From 8d3e35a0bb9ce059bbea0603ddf8647287a6ff24 Mon Sep 17 00:00:00 2001 From: AndrewChan <34884018+AndrewChan2022@users.noreply.github.com> Date: Mon, 25 Nov 2024 12:46:14 +0800 Subject: [PATCH 101/154] Add fast_float to Miscellaneous (#1604) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6b2f41045..83807b90a 100644 --- a/README.md +++ b/README.md @@ -1190,6 +1190,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [DynaMix](https://github.com/iboB/dynamix) - A library which allows you to compose and modify objects at run time. [MIT] * [emio](https://github.com/Viatorus/emio) - A safe and fast high-level and low-level character input/output library. [MIT] * [faker-cxx](https://github.com/cieslarmichal/faker-cxx) - C++20 Faker library for generating fake (but realistic) data for testing and development. [MIT] +* [fast_float](https://github.com/fastfloat/fast_float) - Fast, Exact C++ from_chars, 4x to 10x faster than strtod, part of GCC 12, Chromium, Redis, Webkit/Safari. [Apache2/BSL-1.0/MIT] * [FastFormat](http://www.fastformat.org) - Fast, Safe C++ Formatting inspired by log4j and Pantheios. [Simplified BSD] * [fast_io](https://github.com/cppfastio/fast_io) - Significantly faster input/output for C++20. [MIT] * [fccf](https://github.com/p-ranav/fccf) - A command-line tool that recursively searches a directory to find C/C++ source code matching a search string. [MIT] From 71c3bf1ac6cde7916999f8fb68e3b3e92858f2eb Mon Sep 17 00:00:00 2001 From: xcelerit-squad <79840434+xcelerit-squad@users.noreply.github.com> Date: Mon, 25 Nov 2024 04:48:21 +0000 Subject: [PATCH 102/154] Update README.md (#1606) Added powerful tool for automatic differentiation in C++ under the Math heading --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 83807b90a..cf8b7514b 100644 --- a/README.md +++ b/README.md @@ -845,6 +845,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Wykobi](https://www.wykobi.com) - A C++ library of efficient, robust and simple to use C++ 2D/3D oriented computational geometry routines. [MIT] * [xtensor](https://github.com/xtensor-stack/xtensor) - A C++14 library for numerical analysis with multi-dimensional array expressions, inspired by NumPy syntax. [BSD 3-clause] [website](https://xtensor-stack.github.io/xtensor) * [universal](https://github.com/stillwater-sc/universal) - A C++14 header-only library implementing arbitrary posit arithmetic. The posit number system is a tapered floating point that is more efficient than IEEE floating point. Posits enable reproducible computational science. [MIT license] +* [XAD](https://github.com/auto-differentiation/xad) - Powerful Automatic Differentiation for C++. [AGPL] [website](https://auto-differentiation.github.io/) ## Memory Allocation From be81d17949c28a16f99dd0457329af5705a4d231 Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 28 Nov 2024 03:32:16 +0900 Subject: [PATCH 103/154] Add Protocol Puffers (protobuf compatible C++20 library) (#1607) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index cf8b7514b..5edfeb722 100644 --- a/README.md +++ b/README.md @@ -1090,6 +1090,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [nanopb](https://github.com/nanopb/nanopb) - Small code-size Protocol Buffers implementation in ANSI C. [Zlib] * [protobuf](https://github.com/protocolbuffers/protobuf) - Protocol Buffers - Google's data interchange format. [BSD] * [protobuf-c](https://github.com/protobuf-c/protobuf-c) - Protocol Buffers implementation in C. [BSD] +* [Protocol Puffers](https://github.com/PragmaTwice/protopuf) - A little, highly templated, and protobuf-compatible serialization/deserialization header-only library written in C++20. [Apache-2.0] * [SimpleBinaryEncoding](https://github.com/real-logic/simple-binary-encoding) - encoding and decoding application messages in binary format for low-latency applications. [Apache2] * [upb](https://github.com/protocolbuffers/upb) - A small protobuf implementation in C. [BSD] * [Wirehair](https://github.com/catid/wirehair) - O(N) Fountain Code for Large Data. [BSD-3-Clause] From 9c5286a8e2fb550050680461205f697c221d6937 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 3 Dec 2024 20:11:02 +0900 Subject: [PATCH 104/154] Add QuarkPhysics (soft body physics engine) (#1608) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 5edfeb722..e50aadd55 100644 --- a/README.md +++ b/README.md @@ -980,6 +980,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [PlayRho](https://github.com/louis-langholtz/PlayRho) - An interactive physics engine & library. [Zlib] * [Project Chrono](https://github.com/projectchrono/chrono) - An open source multi-physics simulation engine. [BSD-3-Clause] [website](https://projectchrono.org/) * [Quantum++](https://github.com/vsoftco/qpp) - A modern C++11 quantum computing library. [MIT] +* [QuarkPhysics](https://github.com/erayzesen/QuarkPhysics) - A 2D Soft Body and Rigid Body Physics Engine. [MIT] * [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] * [SOFA](https://github.com/sofa-framework/sofa) - SOFA is an open-source framework targeting at real-time simulation, with an emphasis on medical simulation. [LGPL] [website](https://www.sofa-framework.org) From f18403c4c53735438831fa3c70c3f4925d1f5b65 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 4 Dec 2024 11:39:37 +0900 Subject: [PATCH 105/154] Add Vectorscan (#1609) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e50aadd55..f52c795c5 100644 --- a/README.md +++ b/README.md @@ -1017,6 +1017,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [SLRE](https://github.com/cesanta/slre) - Super Light Regexp engine for C/C++. [GPLv2/Proprietary] * [sregex](https://github.com/openresty/sregex) - A non-backtracking NFA/DFA-based Perl-compatible regex engine library for matching on large data streams. [BSD] * [SRELL](https://www.akenotsuki.com/misc/srell/en/) - Unicode-aware regular expression template library for C++. [BSD] +* [Vectorscan](https://github.com/VectorCamp/vectorscan) - A portable fork of the high-performance regular expression matching library. [BSD-3-Clause] [website](https://www.vectorcamp.gr/project/vectorscan/) ## Robotics From 6a967834c212c47f86b732868862787a8e8736e3 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 13 Dec 2024 15:14:16 +0900 Subject: [PATCH 106/154] Add tiny::optional (#1610) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index f52c795c5..3f6ecd956 100644 --- a/README.md +++ b/README.md @@ -1239,6 +1239,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [StringZilla](https://github.com/ashvardanian/StringZilla) - the Godzilla of string libraries, splitting, sorting, and shuffling large textual datasets faster than you can say "Tokyo Tower". [Apache-2.0] * [StrTk](https://www.partow.net/programming/strtk/index.html) - A C++ library consisting of high performance string processing routines. [MIT] * [tgbotxx](https://github.com/baderouaich/tgbotxx) - Telegram Bot C++ Library. [MIT] +* [tiny::optional](https://github.com/Sedeniono/tiny-optional/) - Replacement for std::optional that does not waste memory unnecessarily. [BSL-1.0] * [Tulip Indicators](https://tulipindicators.org) - A C library of over 100 financial technical analysis indicators. [LGPL] * [ub-canaries](https://github.com/regehr/ub-canaries) - A collection of C/C++ programs that try to get compilers to exploit undefined behavior. * [value-category-cheatsheet](https://github.com/jeaye/value-category-cheatsheet) A PDF cheatsheet for lvalues, rvalues, and the like. [Jank copyleft] From 205c7b0f1579704380c645b0a216d6ecf8df391d Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 19 Dec 2024 11:39:21 +0900 Subject: [PATCH 107/154] Add TidesDB (embedded kvs library) (#1611) * Add TidesDB (embedded kvs library) * remove space * fix category --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 3f6ecd956..6e5799909 100644 --- a/README.md +++ b/README.md @@ -450,6 +450,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [sqlite_modern_cpp](https://github.com/SqliteModernCpp/sqlite_modern_cpp) - Header only C++14 wrapper around sqlite library. [MIT] * [sqlite_orm](https://github.com/fnc12/sqlite_orm) - SQLite ORM light header only library for modern C++. [AGPL + paid MIT] * [sqlpp11](https://github.com/rbock/sqlpp11) - A type safe embedded domain specific language for SQL queries and results in C++. [BSD-2-Clause] +* [TidesDB](https://github.com/tidesdb/tidesdb) - High-performance, durable, transactional embedded storage engine designed for flash and RAM optimization. [MPL-2.0] [website](https://tidesdb.com/) * [TileDB](https://github.com/TileDB-Inc/TileDB) - Fast Dense and Sparse Multidimensional Array DBMS. [MIT] [website](https://tiledb.io/) * [TinyORM](https://github.com/silverqx/TinyORM) - Modern C++ ORM library. [MIT] [website](https://www.tinyorm.org/) * [UnQLite](https://github.com/symisc/unqlite) - A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] [website](https://unqlite.org/) From 556a4cb1b2965b575cfee655977fb6f1dd9b485b Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 20 Dec 2024 00:15:28 +0900 Subject: [PATCH 108/154] Add JerryScript (javascript engine) (#1612) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 6e5799909..fc83ca35e 100644 --- a/README.md +++ b/README.md @@ -1055,6 +1055,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [djinni](https://djinni.xlcpp.dev) - A tool for generating cross-language type declarations and interface bindings. [Apache2] * [Duktape](https://github.com/svaarala/duktape) - An embeddable JavaScript engine with compact footprint. [MIT] [website](http://duktape.org) * [JavaCpp](https://github.com/bytedeco/javacpp) - The missing bridge between Java and native C++. [Apache2] +* [JerryScript](https://github.com/jerryscript-project/jerryscript) - Ultra-lightweight JavaScript engine for the Internet of Things. [Apache-2.0] [website](https://jerryscript.net/) * [libffi](https://github.com/libffi/libffi) - A portable foreign-function interface library. [MIT] [website](https://sourceware.org/libffi/) * [Lua](http://www.lua.org/) - A minimal and fast scripting engine for configuration files and basic application scripting. [MIT] * [LuaBridge](https://github.com/vinniefalco/LuaBridge) - A lightweight, dependency-free library for binding Lua to C++. [MIT] From 7c75a5cfa76b70b0957675dcf21c45ae075e62db Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 22 Dec 2024 22:26:47 +0900 Subject: [PATCH 109/154] Add simdzone (DNS zone parser) (#1614) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index fc83ca35e..370da540b 100644 --- a/README.md +++ b/README.md @@ -1234,6 +1234,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [SDS](https://github.com/antirez/sds) - Simple Dynamic Strings library for C. [BSD] * [semver.c](https://github.com/h2non/semver.c) - A semver parser and render in ANSI C. [MIT] * [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. [PublicDomain] +* [simdzone](https://github.com/NLnetLabs/simdzone) - Fast and standards compliant DNS zone parser. [BSD-3-Clause] * [SimpleSignal](https://github.com/larspensjo/SimpleSignal) - High performance C++11 signals. [PublicDomain] * [Stage](https://github.com/rtv/Stage) - Mobile robot simulator. [GPL2] * [stb](https://github.com/nothings/stb) :zap: - A range of single-file libraries for C/C++. [PublicDomain] From a289fb2ad60d2480d2a716feb837c02cc2c8a7ab Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 23 Dec 2024 16:30:07 +0900 Subject: [PATCH 110/154] Add libonvif (ONVIF library) (#1615) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 370da540b..b8a8cdb8b 100644 --- a/README.md +++ b/README.md @@ -1215,6 +1215,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libenvpp](https://github.com/ph3at/libenvpp) - A modern C++ library for type-safe environment variable parsing. [Apache-2.0] * [libevil](https://github.com/avati/libevil) - The Evil License Manager. [GPLv3] * [libnih](https://github.com/keybuk/libnih) - A lightweight library of C functions and structures. [GPL2.1] +* [libONVIF](https://github.com/Privatehive/libONVIF) - Yet another ONVIF library. [GPL-3.0] * [libsigc++](https://github.com/libsigcplusplus/libsigcplusplus) - A typesafe callback system for standard C++. [LGPL] [website](https://libsigcplusplus.github.io/libsigcplusplus) * [libusb](https://libusb.info/) - 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] From 174c605cddf30a680bf1be2fa95cf0050d5475eb Mon Sep 17 00:00:00 2001 From: Alex2772 Date: Mon, 23 Dec 2024 10:31:53 +0300 Subject: [PATCH 111/154] Add AUI (UI framework) (#1613) * Add AUI (UI framework) * http -> https --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b8a8cdb8b..4ab9ad6b2 100644 --- a/README.md +++ b/README.md @@ -96,6 +96,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Apache C++ Standard Library](http://stdcxx.apache.org/) - STDCXX, A collection of algorithms, containers, iterators, and other fundamental components. [retired] [Apache2] * [APR](http://apr.apache.org/) - Apache Portable Runtime. Another library of cross-platform utility functions. [Apache2] * [ASL](http://stlab.adobe.com/) - Adobe Source Libraries provides peer-reviewed and portable C++ source libraries. [MIT] +* [AUI](https://github.com/aui-framework/aui) - Declarative UI toolkit for C++20. [MPL2] * [Boost](https://github.com/boostorg) :zap: - A large collection of generic C++ libraries. [Boost] [website](https://www.boost.org) * [BDE](https://github.com/bloomberg/bde) - The BDE Development Environment from Bloomberg Labs. [Apache2] * [C++ Workflow](https://github.com/sogou/workflow) :zap: - C++ Parallel Computing and Asynchronous Networking Engine. [Apache2] From 62f0abd490d59821fc96e1cebe1d67e4ff1a75ce Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 24 Dec 2024 00:48:00 +0900 Subject: [PATCH 112/154] Add luau (scripting library) (#1616) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4ab9ad6b2..e265d54d1 100644 --- a/README.md +++ b/README.md @@ -1062,6 +1062,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [LuaBridge](https://github.com/vinniefalco/LuaBridge) - A lightweight, dependency-free library for binding Lua to C++. [MIT] * [LuaBridge3](https://github.com/kunitoki/LuaBridge3) - A lightweight, dependency-free library for binding Lua, LuaJIT, Luau and Ravi to C++. [MIT] * [luacxx](https://github.com/dafrito/luacxx) - C++11 API for creating Lua bindings. [MIT] +* [Luau](https://github.com/luau-lang/luau) - A fast, small, safe, gradually typed embeddable scripting language derived from Lua. [MIT] [website](https://luau.org/) * [MiniScript](https://miniscript.org/) - scripting language modern, elegant, easy to learn, and easy to embed in your own C# or C++ projects. [MIT] * [nbind](https://github.com/charto/nbind) - Magical headers that make your C++ library accessible from JavaScript. [MIT] * [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) From 5c212db0a56b7ce274b5328688d6dee9de930b72 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 25 Dec 2024 02:31:23 +0900 Subject: [PATCH 113/154] Add rain (hash library) (#1617) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e265d54d1..c4a85d238 100644 --- a/README.md +++ b/README.md @@ -1228,6 +1228,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [pprint](https://github.com/p-ranav/pprint) - Pretty Printer for Modern C++. [MIT] * [pspsdk](https://github.com/pspdev/pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3] * [QtVerbalExpressions](https://github.com/VerbalExpressions/QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT] +* [rain](https://github.com/DOSAYGO-Research/rain) - The fastest 128-bit and 256-bit non-crypto hash, passes all tests, and under 140 source lines of code. [Apache-2.0] * [RapidFuzz](https://github.com/rapidfuzz/rapidfuzz-cpp) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] [website](https://rapidfuzz.github.io/rapidfuzz-cpp/) * [rapidhash](https://github.com/Nicoshev/rapidhash) - Very fast, high quality, platform-independent hashing algorithm. [BSD-2-Clause] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] From 6a0a42aed11022632cdc6d5fc8ba0259397dc16b Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 26 Dec 2024 04:59:12 +0900 Subject: [PATCH 114/154] Add libpopcnt (#1618) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c4a85d238..c384cd30d 100644 --- a/README.md +++ b/README.md @@ -1218,6 +1218,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libevil](https://github.com/avati/libevil) - The Evil License Manager. [GPLv3] * [libnih](https://github.com/keybuk/libnih) - A lightweight library of C functions and structures. [GPL2.1] * [libONVIF](https://github.com/Privatehive/libONVIF) - Yet another ONVIF library. [GPL-3.0] +* [libpopcnt](https://github.com/kimwalisch/libpopcnt) - Fast C/C++ bit population count library. [BSD-2-Clause] * [libsigc++](https://github.com/libsigcplusplus/libsigcplusplus) - A typesafe callback system for standard C++. [LGPL] [website](https://libsigcplusplus.github.io/libsigcplusplus) * [libusb](https://libusb.info/) - 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] From 1022559fae025662445458263942714fc1168ce6 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 27 Dec 2024 08:41:20 +0900 Subject: [PATCH 115/154] Add LibYAML (yaml read/writer library) (#1619) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c384cd30d..61f8c5ef6 100644 --- a/README.md +++ b/README.md @@ -1173,6 +1173,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Yaml +* [LibYAML](https://github.com/yaml/libyaml) - A C library for parsing and emitting YAML. [MIT] [website](https://pyyaml.org/wiki/LibYAML) * [mini-yaml](https://github.com/jimmiebergmann/mini-yaml) - Single header YAML 1.0 C++11 serializer/deserializer. [MIT] * [yaml-cpp](https://github.com/jbeder/yaml-cpp) - A YAML parser and emitter in C++. [MIT] * [rapidyaml](https://github.com/biojppm/rapidyaml) - Rapid YAML is a C++ library to parse and emit YAML. [MIT] From 8951ab67067ffb2ccafb34b66a660dbba3a493f3 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 27 Dec 2024 11:18:55 +0900 Subject: [PATCH 116/154] Add Siv3d(OpenSiv3D) (framework for creative coding) (#1620) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 61f8c5ef6..21f6570f2 100644 --- a/README.md +++ b/README.md @@ -127,6 +127,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [rpp](https://github.com/TheNumbat/rpp) - Minimal Rust-inspired C++20 STL replacement. [MIT] * [SaneCppLibraries](https://github.com/Pagghiu/SaneCppLibraries) - a set of C++ platform abstraction libraries for macOS, Windows and Linux. [MIT] [website](https://pagghiu.github.io/SaneCppLibraries/) * [Seastar](https://github.com/scylladb/seastar) - An advanced, open-source C++ framework for high-performance server applications on modern hardware. [Apache-2.0 License] [seastar.io](http://seastar.io/) +* [Siv3D](https://github.com/Siv3D/OpenSiv3D) - Siv3D (OpenSiv3D) is a C++20 framework for creative coding (2D/3D games, media art, visualizers, and simulators). [MIT] [website](https://siv3d.github.io/) * [STLport](http://www.stlport.org/) - An exemplary version of STL. [Free] * [STXXL](http://stxxl.sourceforge.net/) - Standard Template Library for Extra Large Data Sets. [Boost] * [tbox](https://github.com/tboox/tbox) - A glib-like multi-platform c library. [Apache2] [website](http://tboox.org/) From 6363fed046a3cd10f450fe24ab5d88ff610b4211 Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 28 Dec 2024 22:59:32 +0900 Subject: [PATCH 117/154] Sort Yaml category (#1621) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 21f6570f2..27a5b3f7f 100644 --- a/README.md +++ b/README.md @@ -1176,8 +1176,8 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [LibYAML](https://github.com/yaml/libyaml) - A C library for parsing and emitting YAML. [MIT] [website](https://pyyaml.org/wiki/LibYAML) * [mini-yaml](https://github.com/jimmiebergmann/mini-yaml) - Single header YAML 1.0 C++11 serializer/deserializer. [MIT] -* [yaml-cpp](https://github.com/jbeder/yaml-cpp) - A YAML parser and emitter in C++. [MIT] * [rapidyaml](https://github.com/biojppm/rapidyaml) - Rapid YAML is a C++ library to parse and emit YAML. [MIT] +* [yaml-cpp](https://github.com/jbeder/yaml-cpp) - A YAML parser and emitter in C++. [MIT] ## Miscellaneous *Useful libraries or tools that don't fit in the categories above or maybe just not categorised yet* From 3a36a190c61bb6fc43273223a9a35162d1a415be Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 28 Dec 2024 23:09:50 +0900 Subject: [PATCH 118/154] Add CPP-JWT (jwt library) (#1622) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 27a5b3f7f..1ed36977a 100644 --- a/README.md +++ b/README.md @@ -1192,6 +1192,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Cheat Sheets of HackingCPP](https://hackingcpp.com/cpp/cheat_sheets.html) - Cool cheat sheets and infographics for algorithms, views, containers, randomness, etc. * [Concord](https://github.com/Cogmasters/concord) - A Discord API wrapper library written in C. [MIT] [website](https://cogmasters.github.io/concord) * [CPPItertools](https://github.com/ryanhaining/cppitertools) - Range-based for loop add-ons inspired by the Python builtins and itertools library. [BSD-2-Clause] +* [CPP-JWT](https://github.com/arun11299/cpp-jwt) - JSON Web Token library for C++. [MIT] * [cpp-lazy](https://github.com/MarcDirven/cpp-lazy) - a fast and easy lazy evaluation library for C++11/14/17/20. [MIT] * [CRCpp](https://github.com/d-bahr/CRCpp) - Easy to use and fast C++ CRC library. [BSD-3-Clause] * [cxx-prettyprint](https://github.com/louisdx/cxx-prettyprint) - A pretty printing library for C++ containers. [Boost] From 3bee468063e750d81dd2874230381ab00b266347 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 29 Dec 2024 23:56:02 +0900 Subject: [PATCH 119/154] Add Hippomocks (mocking framework) (#1623) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1ed36977a..daf2fe161 100644 --- a/README.md +++ b/README.md @@ -493,6 +493,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [fff](https://github.com/meekrosoft/fff) - A micro-framework for creating fake C functions. [MIT] * [Google Mock](https://github.com/google/googletest/blob/master/googlemock/README.md) - A library for writing and using C++ mock classes. [BSD] * [Google Test](https://github.com/google/googletest) - Google C++ Testing Framework. [BSD] +* [Hippomocks](https://github.com/dascandy/hippomocks) - Single-header mocking framework. [LGPL-2.1] * [ig-debugheap](https://github.com/deplinenoise/ig-debugheap) - Multiplatform debug heap useful for tracking down memory errors. [BSD] * [libassert](https://github.com/jeremy-rifkin/libassert) - The most over-engineered C++ assertion library. [MIT] * [libtap](https://github.com/zorgnax/libtap) - Write tests in C. [GPL2] From d8f20b8e3131e7fdb0308c1896f670b449a0b933 Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 30 Dec 2024 23:58:54 +0900 Subject: [PATCH 120/154] Add fkYAML (yaml library) (#1624) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index daf2fe161..ebfa7cd86 100644 --- a/README.md +++ b/README.md @@ -1175,6 +1175,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Yaml +* [fkYAML](https://github.com/fktn-k/fkYAML) - A C++ header-only YAML library. [MIT] * [LibYAML](https://github.com/yaml/libyaml) - A C library for parsing and emitting YAML. [MIT] [website](https://pyyaml.org/wiki/LibYAML) * [mini-yaml](https://github.com/jimmiebergmann/mini-yaml) - Single header YAML 1.0 C++11 serializer/deserializer. [MIT] * [rapidyaml](https://github.com/biojppm/rapidyaml) - Rapid YAML is a C++ library to parse and emit YAML. [MIT] From e4da2ad6d9b8474d320ef3b2713bedea1398ab47 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 31 Dec 2024 19:32:35 +0900 Subject: [PATCH 121/154] Add LibCYAML (yaml library) (#1625) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ebfa7cd86..d8fbc2649 100644 --- a/README.md +++ b/README.md @@ -1176,6 +1176,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Yaml * [fkYAML](https://github.com/fktn-k/fkYAML) - A C++ header-only YAML library. [MIT] +* [LibCYAML](https://github.com/tlsa/libcyaml) - C library for reading and writing YAML. [ISC] * [LibYAML](https://github.com/yaml/libyaml) - A C library for parsing and emitting YAML. [MIT] [website](https://pyyaml.org/wiki/LibYAML) * [mini-yaml](https://github.com/jimmiebergmann/mini-yaml) - Single header YAML 1.0 C++11 serializer/deserializer. [MIT] * [rapidyaml](https://github.com/biojppm/rapidyaml) - Rapid YAML is a C++ library to parse and emit YAML. [MIT] From 817702ee9e67bc7019c9f1bed28700e888fc93d4 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 1 Jan 2025 21:00:05 +0900 Subject: [PATCH 122/154] Add libfyaml (yaml library) (#1626) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d8fbc2649..8059804cb 100644 --- a/README.md +++ b/README.md @@ -1177,6 +1177,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [fkYAML](https://github.com/fktn-k/fkYAML) - A C++ header-only YAML library. [MIT] * [LibCYAML](https://github.com/tlsa/libcyaml) - C library for reading and writing YAML. [ISC] +* [libfyaml](https://github.com/pantoniou/libfyaml) - A fancy 1.2 YAML and JSON parser/writer. [MIT] * [LibYAML](https://github.com/yaml/libyaml) - A C library for parsing and emitting YAML. [MIT] [website](https://pyyaml.org/wiki/LibYAML) * [mini-yaml](https://github.com/jimmiebergmann/mini-yaml) - Single header YAML 1.0 C++11 serializer/deserializer. [MIT] * [rapidyaml](https://github.com/biojppm/rapidyaml) - Rapid YAML is a C++ library to parse and emit YAML. [MIT] From 76fb81808fd06e0780fac4541d1bb6c4ead93324 Mon Sep 17 00:00:00 2001 From: nirlivne Date: Fri, 3 Jan 2025 02:56:01 +0200 Subject: [PATCH 123/154] Add Mpark.Variant (#1627) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8059804cb..0286c169c 100644 --- a/README.md +++ b/README.md @@ -1230,6 +1230,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libusb](https://libusb.info/) - 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] * [mio](https://github.com/mandreyel/mio) - Cross-platform C++11 header-only library for memory mapped file IO. [MIT] +* [MPark.Variant](https://github.com/mpark/variant) - C++17 `std::variant` for C++11/14/17. [BSL-1.0] * [MPH](https://github.com/qlibs/mph) - C++20 [Minimal] Static Perfect Hash library. [MIT] * [PEGTL](https://github.com/taocpp/PEGTL) - The Parsing Expression Grammar Template Library. [MIT] * [Pipes](https://github.com/joboccara/pipes) - Pipelines for expressive code on collections in C++. [MIT] From 33df24a838d8b7799af1263ea0bd25e475bf81ca Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 4 Jan 2025 19:52:06 +0900 Subject: [PATCH 124/154] Move IceCream-Cpp to Debug Category (#1628) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 0286c169c..c7ca73f2a 100644 --- a/README.md +++ b/README.md @@ -494,6 +494,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Google Mock](https://github.com/google/googletest/blob/master/googlemock/README.md) - A library for writing and using C++ mock classes. [BSD] * [Google Test](https://github.com/google/googletest) - Google C++ Testing Framework. [BSD] * [Hippomocks](https://github.com/dascandy/hippomocks) - Single-header mocking framework. [LGPL-2.1] +* [IceCream-Cpp](https://github.com/renatoGarcia/icecream-cpp) - Never use cout/printf to debug again [MIT] * [ig-debugheap](https://github.com/deplinenoise/ig-debugheap) - Multiplatform debug heap useful for tracking down memory errors. [BSD] * [libassert](https://github.com/jeremy-rifkin/libassert) - The most over-engineered C++ assertion library. [MIT] * [libtap](https://github.com/zorgnax/libtap) - Write tests in C. [GPL2] @@ -1214,7 +1215,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [happly](https://github.com/nmwsharp/happly) - A C++ header-only parser for the PLY file format. Parse .ply happily! [MIT] * [hedley](https://github.com/nemequ/hedley) - A C/C++ header file designed to smooth over some platform-specific annoyances. [website](https://nemequ.github.io/hedley/) * [HighwayHash](https://github.com/google/highwayhash) - Fast strong hash functions: SipHash/HighwayHash. [Apache-2.0] -* [icecream-cpp](https://github.com/renatoGarcia/icecream-cpp) - A small printing library for debugging purposes. [MIT] * [inja](https://github.com/pantor/inja) - A Template Engine for Modern C++. [MIT] * [Jinja2С++](https://github.com/jinja2cpp/Jinja2Cpp) - almost full-conformance template engine implementation. [website](https://jinja2cpp.github.io/) * [jwt-cpp](https://github.com/Thalhammer/jwt-cpp) - A header only library for creating and validating JSON web tokens in C++. [MIT] From 9a8617267745c71b509d69c3790d1527513e9a12 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 5 Jan 2025 22:13:02 +0900 Subject: [PATCH 125/154] Add BitSerializer (serialization library) (#1629) * Add BitSerializer (serialization library) * fix typo --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c7ca73f2a..7d5650a69 100644 --- a/README.md +++ b/README.md @@ -1083,6 +1083,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Serialization +* [BitSerializer](https://github.com/PavelKisliak/BitSerializer) - Multi-format serialization library (JSON, XML, YAML, CSV, MsgPack) [MIT] * [Bitsery](https://github.com/fraillt/bitsery) - Header only C++ binary serialization library. [MIT] * [Bond](https://github.com/Microsoft/bond) - An open source, cross-platform framework for working with schematized data. [MIT] * [Boost.Serialization](https://github.com/boostorg/serialization) - Boost Serialization Library. [Boost] [website](https://boost.org/libs/serialization) From 68640eeba5332e0f8885d3d9be784e0017fc49e4 Mon Sep 17 00:00:00 2001 From: Chao Date: Sat, 11 Jan 2025 08:21:01 +0000 Subject: [PATCH 126/154] add AMD Zen CPU compiler (#1630) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 7d5650a69..a3ce5b059 100644 --- a/README.md +++ b/README.md @@ -1276,6 +1276,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Clang](http://clang.llvm.org/) - A C compiler for LLVM. Supports C++11/14/1z C11. Developed by LLVM Team. [NCSA] * [GCC](https://gcc.gnu.org/) - GNU Compiler Collection. Supports C++11/14/1z C11 and OpenMP. [GNU GPL3] * [PCC](http://pcc.ludd.ltu.se/) - A very old C compiler. Supports C99. +* [AMD C++ Compiler](https://www.amd.com/en/developer/aocc.html) - Developed by AMD. * [Intel C++ Compiler](https://software.intel.com/en-us/c-compilers) - Developed by Intel. * [LLVM](http://llvm.org/) - Collection of modular and reusable compiler and toolchain technologies. * [Microsoft Visual C++](https://docs.microsoft.com/en-us/cpp/dotnet/dotnet-programming-with-cpp-cli-visual-cpp?view=msvc-160) - MSVC, developed by Microsoft. From 8accd7ae2251508fc0cdc79a11a4f889c3c89b84 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 12 Jan 2025 20:55:16 +0900 Subject: [PATCH 127/154] Add SafetyHook (procedure hooking library) (#1631) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a3ce5b059..c65e6c0f0 100644 --- a/README.md +++ b/README.md @@ -1243,6 +1243,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [rapidhash](https://github.com/Nicoshev/rapidhash) - Very fast, high quality, platform-independent hashing algorithm. [BSD-2-Clause] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] * [reproc](https://github.com/DaanDeMeyer/reproc) - A cross-platform (C99/C++11) process library. [MIT] +* [SafetyHook](https://github.com/cursey/safetyhook) - C++23 procedure hooking library. [BSL-1.0] * [scnlib](https://github.com/eliaskosunen/scnlib) - scanf for modern C++. [Apache-2.0] [website](https://v1.scnlib.dev/) * [Scintilla](http://scintilla.org/) - A free source code editing component. [MIT] * [SDS](https://github.com/antirez/sds) - Simple Dynamic Strings library for C. [BSD] From 8a9e69c12391860cce9203cb78b8ef7a7481ae36 Mon Sep 17 00:00:00 2001 From: toge Date: Thu, 16 Jan 2025 23:09:39 +0900 Subject: [PATCH 128/154] Add nanobind (Python binding library) (#1633) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index c65e6c0f0..8caa537c1 100644 --- a/README.md +++ b/README.md @@ -1067,6 +1067,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [luacxx](https://github.com/dafrito/luacxx) - C++11 API for creating Lua bindings. [MIT] * [Luau](https://github.com/luau-lang/luau) - A fast, small, safe, gradually typed embeddable scripting language derived from Lua. [MIT] [website](https://luau.org/) * [MiniScript](https://miniscript.org/) - scripting language modern, elegant, easy to learn, and easy to embed in your own C# or C++ projects. [MIT] +* [nanobind](https://github.com/wjakob/nanobind) - tiny and efficient C++/Python bindings. [BSD-3-Clause] * [nbind](https://github.com/charto/nbind) - Magical headers that make your C++ library accessible from JavaScript. [MIT] * [PHP-CPP](https://github.com/CopernicaMarketingSoftware/PHP-CPP) - A library to build PHP extensions with C++. [Apache2] [website](http://www.php-cpp.com/) * [pocketpy](https://github.com/blueloveTH/pocketpy) - C++17 header-only Python interpreter for game scripting. [MIT] [website](https://pocketpy.dev/) From a6ee8791bfdd7e42d65b7a078c38c3b869ef9400 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 17 Jan 2025 23:13:57 +0900 Subject: [PATCH 129/154] Add xxHash (hashing library) (#1634) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 8caa537c1..811609baa 100644 --- a/README.md +++ b/README.md @@ -1264,6 +1264,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [value-category-cheatsheet](https://github.com/jeaye/value-category-cheatsheet) A PDF cheatsheet for lvalues, rvalues, and the like. [Jank copyleft] * [VarTypes](https://github.com/szi/vartypes) - A feature-rich, object-oriented framework for managing variables in C++ / Qt4. [LGPL] * [Wildcards](https://github.com/zemasoft/wildcards/) - A simple C++ header-only template library implementing matching using wildcards. [BSL-1.0] +* [xxHash](https://github.com/Cyan4973/xxHash) - Extremely fast non-cryptographic hash algorithm. [BSD-2-Clause] [website](https://xxhash.com/) * [ZBar](http://zbar.sourceforge.net/) - A barcode scanner library, which allows to scan photos/images/video streams for barcodes and return their value. [LGPL2] * [ZXing](https://github.com/zxing/zxing/) - An open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. [Apache] From 814a1910fe90d32978b3546af9ffb5cc8e20c7fa Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 18 Jan 2025 01:10:25 +0900 Subject: [PATCH 130/154] Add xxhash_cpp (hashing library) (#1635) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 811609baa..b88f30b2e 100644 --- a/README.md +++ b/README.md @@ -1265,6 +1265,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [VarTypes](https://github.com/szi/vartypes) - A feature-rich, object-oriented framework for managing variables in C++ / Qt4. [LGPL] * [Wildcards](https://github.com/zemasoft/wildcards/) - A simple C++ header-only template library implementing matching using wildcards. [BSL-1.0] * [xxHash](https://github.com/Cyan4973/xxHash) - Extremely fast non-cryptographic hash algorithm. [BSD-2-Clause] [website](https://xxhash.com/) +* [xxhash_cpp](https://github.com/RedSpah/xxhash_cpp) - Port of the xxhash library to C++17. [BSD-2-Clause] * [ZBar](http://zbar.sourceforge.net/) - A barcode scanner library, which allows to scan photos/images/video streams for barcodes and return their value. [LGPL2] * [ZXing](https://github.com/zxing/zxing/) - An open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. [Apache] From 6dede8b8dfa5160aeaab22ba230d0da11406e6a5 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 19 Jan 2025 23:54:07 +0900 Subject: [PATCH 131/154] Add matio (matlab io library) (#1637) * Add matio (matlab io library) * fix case in name --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index b88f30b2e..eaf9347a9 100644 --- a/README.md +++ b/README.md @@ -830,6 +830,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [GMP](https://gmplib.org/) - A C library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating-point numbers. [LGPL3 & GPL2] * [Klein](https://github.com/jeremyong/klein) - A fast, SIMD-optimized C++17 Geometric Algebra library for point, line, and plane projections, intersections, joins, rigid-body motion, and more. [MIT] [website](https://jeremyong.com/klein) * [linalg.h](https://github.com/sgorsten/linalg) - Single header, public domain, short vector math library for C++. [Unlicense] +* [MATIO](https://github.com/tbeu/matio) - MATLAB MAT File I/O Library. [BSD-2-Clause] [website](https://sourceforge.net/projects/matio/) * [MatX](https://github.com/NVIDIA/MatX) - A GPU-accelerated C++17 numerical computing library with a MATLAB/Python-like syntax. [BSD 3-clause] * [MIRACL](https://github.com/CertiVox/MIRACL) - A Multiprecision Integer and Rational Arithmetic Cryptographic Library. [AGPL] * [NumCpp](https://github.com/dpilger26/NumCpp) - A templatized header only C++ implementation of the Python Numpy library. [MIT] From e25e1e693b2ede9e845aed11c0c9e01380a59a07 Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 31 Jan 2025 23:38:20 +0900 Subject: [PATCH 132/154] Add KOMIHASH (#1642) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index eaf9347a9..dd70a6b1f 100644 --- a/README.md +++ b/README.md @@ -1223,6 +1223,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [jwt-cpp](https://github.com/Thalhammer/jwt-cpp) - A header only library for creating and validating JSON web tokens in 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] +* [KOMIHASH](https://github.com/avaneev/komihash) - Very fast, high-quality hash function, discrete-incremental and streamed hashing-capable. [MIT] * [libcpuid](https://github.com/anrieff/libcpuid) - A small C library for x86 CPU detection and feature extraction. [BSD] * [libenvpp](https://github.com/ph3at/libenvpp) - A modern C++ library for type-safe environment variable parsing. [Apache-2.0] * [libevil](https://github.com/avati/libevil) - The Evil License Manager. [GPLv3] From f68588824e6efbfb67d4348bcea24758a45ae919 Mon Sep 17 00:00:00 2001 From: Somnath Nandi <123479436+CodeOfSomnath@users.noreply.github.com> Date: Wed, 5 Feb 2025 08:44:51 +0530 Subject: [PATCH 133/154] Removing Unavailable Projects (#1641) * changing udemy course invalid link * changing the down site * changing pcc project link. original does not exist * Removing Mockator, project is not maintained * Removing codepad, website is not working --- README.md | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index dd70a6b1f..4160822eb 100644 --- a/README.md +++ b/README.md @@ -500,7 +500,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libtap](https://github.com/zorgnax/libtap) - Write tests in C. [GPL2] * [microprofile](https://github.com/jonasmr/microprofile) - Profiler with web-view for multiple platforms. [Unlicense] * [MinUnit](https://github.com/siu/minunit) - A minimal unit testing framework for C self-contained in a single header file. [MIT] -* [Mockator](http://www.mockator.com) - Eclipse CDT plug-in for C++ Seams and Mock Objects. * [nanobench](https://github.com/martinus/nanobench) - Simple, fast, accurate single-header microbenchmarking functionality for C++11/14/17/20. [MIT] [website](https://nanobench.ankerl.com) * [Nanotimer](https://github.com/mattreecebentley/plf_nanotimer) - A simple low-overhead cross-platform timer class for benchmarking. [zLib] [website](http://www.plflib.org/nanotimer.htm) * [Nonius](https://github.com/libnonius/nonius) - A C++ micro-benchmarking framework. [CC] @@ -1281,7 +1280,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [c](https://github.com/ryanmjacobs/c) - Compile and execute C "scripts" in one go! [MIT] * [Clang](http://clang.llvm.org/) - A C compiler for LLVM. Supports C++11/14/1z C11. Developed by LLVM Team. [NCSA] * [GCC](https://gcc.gnu.org/) - GNU Compiler Collection. Supports C++11/14/1z C11 and OpenMP. [GNU GPL3] -* [PCC](http://pcc.ludd.ltu.se/) - A very old C compiler. Supports C99. +* [PCC](https://github.com/IanHarvey/pcc) - A very old C compiler. Supports C99. * [AMD C++ Compiler](https://www.amd.com/en/developer/aocc.html) - Developed by AMD. * [Intel C++ Compiler](https://software.intel.com/en-us/c-compilers) - Developed by Intel. * [LLVM](http://llvm.org/) - Collection of modular and reusable compiler and toolchain technologies. @@ -1294,7 +1293,6 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny *List of online C or C++ compilers* * [codechef](https://www.codechef.com/ide) - A simple online compiler CodeChef. -* [codepad](http://codepad.org/) - An online compiler/interpreter, and a simple collaboration tool. * [coliru](http://coliru.stacked-crooked.com/) - Online compiler/shell with support for various C++ compilers. * [Compiler Explorer](http://gcc.godbolt.org/) - An interactive compiler with assembly output available. * [CompileOnline](http://www.tutorialspoint.com/codingground.htm) - Compile and Execute C++ online on Linux. @@ -1363,7 +1361,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Ninja](https://ninja-build.org/) - A small build system with a focus on speed. * [Sccache](https://github.com/mozilla/sccache) - A fast compiler cache for C/C++, with cross-platform support and cloud backed storage options. * [Scons](http://www.scons.org/) - A software construction tool configured with a Python script. -* [Sconsolidator](http://www.sconsolidator.com/) - Scons build system integration for Eclipse CDT. +* [Sconsolidator](https://github.com/IFS-HSR/SConsolidator) - Scons build system integration for Eclipse CDT. * [Spack](https://spack.io/) - A flexible package manager that supports multiple versions, configurations, platforms, and compilers. [Apache-2.0/MIT] * [SW](https://software-network.org/) - Cross-platform C++ (and other langs) Build System and Package Manager with a lot of packages available. [GPLv3] * [tundra](https://github.com/deplinenoise/tundra) - High-performance code build system designed to give the best possible incremental build times even for very large software projects. @@ -1502,7 +1500,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Guru of the Week](http://www.gotw.ca/gotw/) - A regular series of C++ programming problems created and written by Herb Sutter. * [Meeting C++](http://meetingcpp.com/) * [PVS-Studio’s challenge](https://quiz.pvs-studio.com) - PVS-Studio’s C++ quiz in which you're asked to find errors in code fragments of open source projects. -* [Udemy C++ Courses and Tutorials](https://www.udemy.com/topic/C-plus-plus-tutorials/) +* [Udemy C++ Courses and Tutorials](https://www.udemy.com/topic/c-plus-plus/) * [C++ Hints](http://cpphints.com/) - Every business day hints about most often C++ mistakes and ways to solve them from PVS-Studio Team. * [C++ tutorial](https://hackr.io/tutorials/learn-c-plus-plus) - A user ranked online tutorial bank site displaying multiple courses to learn C++ from. * [C++ Tutorial for Beginners](https://www.scaler.com/topics/cpp) - A comprenhensive tutorial on C++ curated by trained experts. From 9f19166b227089ca8f4aa42751e38581b34afbb7 Mon Sep 17 00:00:00 2001 From: Maurizio Tomasi Date: Fri, 7 Feb 2025 02:25:38 +0100 Subject: [PATCH 134/154] Add gplot++ (#1643) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit gplot++ is a plotting library that interfaces with Gnuplot. Many plotting libraries are listed under the “GUI” section, but I put this new entry under “Data visualization” because it seems more appropriate to me. (The library can open a window containing the plot, but it can also redirect the plot to an image file; in this case, there is no window at all.) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4160822eb..339142a16 100644 --- a/README.md +++ b/README.md @@ -465,6 +465,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny ## Data visualization *Data visualization Libraries* +* [gplot++](https://github.com/ziotom78/gplotpp) - Cross-platform header-only C++ plotting library that interfaces with Gnuplot. [MIT] * [matplotplusplus](https://github.com/alandefreitas/matplotplusplus) - C++ Graphics Library for Data Visualization. [MIT] [website](https://alandefreitas.github.io/matplotplusplus/) ## Debug From 6403d710be1840dce2acef0ff7c6faf62d377828 Mon Sep 17 00:00:00 2001 From: om pharate <72200400+ompharate@users.noreply.github.com> Date: Mon, 10 Feb 2025 10:28:45 +0530 Subject: [PATCH 135/154] Add OneCompiler to online compiler resources (#1644) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 339142a16..4265a955a 100644 --- a/README.md +++ b/README.md @@ -1298,6 +1298,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Compiler Explorer](http://gcc.godbolt.org/) - An interactive compiler with assembly output available. * [CompileOnline](http://www.tutorialspoint.com/codingground.htm) - Compile and Execute C++ online on Linux. * [Ideone](http://ideone.com/) - An online compiler and debugging tool which allows you to compile source code and execute it online in more than 60 programming languages. +* [OneCompiler](https://onecompiler.com/) - An online compiler supporting over 70 programming languages and database systems. * [Programiz](https://www.programiz.com/cpp-programming/online-compiler) - An online compiler for learners and developers. * [repl.it](https://repl.it) - A powerful yet simple tools and platforms for educators, learners, and developers. * [Rextester](http://rextester.com/runcode) - Online compiler which provides several compilers(Clang, GCC, MSVC) and several editors. From 65df45e8cb7ae517a29c6c50e7e20cc11fd58d6c Mon Sep 17 00:00:00 2001 From: Roberto <86665159+rdabra@users.noreply.github.com> Date: Sat, 22 Feb 2025 04:34:02 -0300 Subject: [PATCH 136/154] Add Txeo: A modern C++ wrapper for TensorFlow (#1646) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 4265a955a..824b2fdfd 100644 --- a/README.md +++ b/README.md @@ -147,6 +147,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [flashlight](https://github.com/flashlight/flashlight) - Flashlight is a fast, flexible machine learning library written entirely in C++. [BSD] * [Recast/Detour](https://github.com/recastnavigation/recastnavigation) - (3D) Navigation mesh generator and pathfinder, mostly for games. [zlib] * [TensorFlow](https://github.com/tensorflow/tensorflow) - An open source software library for numerical computation using data flow graphs. [Apache] +* [Txeo](https://github.com/rdabra/txeo) - A modern C++ wrapper for TensorFlow. [Apache] * [oneDNN](https://github.com/oneapi-src/oneDNN) - An open-source cross-platform performance library for deep learning applications. [Apache] [website](https://01.org/onednn) * [CNTK](https://github.com/Microsoft/CNTK) - Microsoft Cognitive Toolkit (CNTK), an open source deep-learning toolkit. [Boost] * [tiny-dnn](https://github.com/tiny-dnn/tiny-dnn) - A header only, dependency-free deep learning framework in C++11. [BSD] From 93873b57f5c30b991082902939d0d3fb8a186459 Mon Sep 17 00:00:00 2001 From: DmitriBogdanov <87243261+DmitriBogdanov@users.noreply.github.com> Date: Wed, 26 Feb 2025 06:34:19 +0300 Subject: [PATCH 137/154] Add utl::random: C++17 library for fast Monte-Carlo simulations. (#1648) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 824b2fdfd..ccad98ed4 100644 --- a/README.md +++ b/README.md @@ -852,6 +852,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Wykobi](https://www.wykobi.com) - A C++ library of efficient, robust and simple to use C++ 2D/3D oriented computational geometry routines. [MIT] * [xtensor](https://github.com/xtensor-stack/xtensor) - A C++14 library for numerical analysis with multi-dimensional array expressions, inspired by NumPy syntax. [BSD 3-clause] [website](https://xtensor-stack.github.io/xtensor) * [universal](https://github.com/stillwater-sc/universal) - A C++14 header-only library implementing arbitrary posit arithmetic. The posit number system is a tapered floating point that is more efficient than IEEE floating point. Posits enable reproducible computational science. [MIT license] +* [utl::random](https://github.com/DmitriBogdanov/UTL/blob/master/docs/module_random.md) - A C++17 header-only library implementing fast random for Monte-Carlo simulations & gamedev. [MIT] * [XAD](https://github.com/auto-differentiation/xad) - Powerful Automatic Differentiation for C++. [AGPL] [website](https://auto-differentiation.github.io/) ## Memory Allocation From b1357b8c3e14e0ff9a2e3ceb15e9c3c8324e08ec Mon Sep 17 00:00:00 2001 From: toge Date: Fri, 28 Feb 2025 02:21:41 +0900 Subject: [PATCH 138/154] Add minja.hpp (template engine) (#1649) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index ccad98ed4..a14a24443 100644 --- a/README.md +++ b/README.md @@ -1235,6 +1235,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [libsigc++](https://github.com/libsigcplusplus/libsigcplusplus) - A typesafe callback system for standard C++. [LGPL] [website](https://libsigcplusplus.github.io/libsigcplusplus) * [libusb](https://libusb.info/) - 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] +* [minja.hpp](https://github.com/google/minja) - A minimalistic C++ Jinja templating engine for LLM chat templates. [MIT] * [mio](https://github.com/mandreyel/mio) - Cross-platform C++11 header-only library for memory mapped file IO. [MIT] * [MPark.Variant](https://github.com/mpark/variant) - C++17 `std::variant` for C++11/14/17. [BSL-1.0] * [MPH](https://github.com/qlibs/mph) - C++20 [Minimal] Static Perfect Hash library. [MIT] From f017686ea69b471a6193f8c3c4dbe49fbf9e69af Mon Sep 17 00:00:00 2001 From: Stefano Mandelli Date: Thu, 6 Mar 2025 05:36:37 +0100 Subject: [PATCH 139/154] Modern C++14 sigslot implementation has been added (#1651) Co-authored-by: Stefano Mandelli --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a14a24443..231491f2c 100644 --- a/README.md +++ b/README.md @@ -1255,6 +1255,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [SDS](https://github.com/antirez/sds) - Simple Dynamic Strings library for C. [BSD] * [semver.c](https://github.com/h2non/semver.c) - A semver parser and render in ANSI C. [MIT] * [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. [PublicDomain] +* [palacaze/sigslot](https://github.com/palacaze/sigslot) - A simple, header only, C++14 signal-slots implementation [MIT] * [simdzone](https://github.com/NLnetLabs/simdzone) - Fast and standards compliant DNS zone parser. [BSD-3-Clause] * [SimpleSignal](https://github.com/larspensjo/SimpleSignal) - High performance C++11 signals. [PublicDomain] * [Stage](https://github.com/rtv/Stage) - Mobile robot simulator. [GPL2] From 1f7b21a4b079042540f2e8f99e12260e4e2ca5be Mon Sep 17 00:00:00 2001 From: myd7349 Date: Sat, 8 Mar 2025 15:42:31 +0800 Subject: [PATCH 140/154] Add morphologica (#1653) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 231491f2c..a40bdb484 100644 --- a/README.md +++ b/README.md @@ -468,6 +468,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [gplot++](https://github.com/ziotom78/gplotpp) - Cross-platform header-only C++ plotting library that interfaces with Gnuplot. [MIT] * [matplotplusplus](https://github.com/alandefreitas/matplotplusplus) - C++ Graphics Library for Data Visualization. [MIT] [website](https://alandefreitas.github.io/matplotplusplus/) +* [morphologica](https://github.com/ABRG-Models/morphologica) - C++ header-only graphing and data visualization with modern OpenGL. [Apache-2.0] [website](https://abrg-models.github.io/morphologica/) ## Debug *Debugging Libraries, Memory Leak and Resource Leak Detection, Unit Testing* From 102fae3cb50ce04ade9789abb2d6aca255e4a1b2 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Tue, 18 Mar 2025 11:11:40 +0800 Subject: [PATCH 141/154] Add QPDF (#1655) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index a40bdb484..87f478d38 100644 --- a/README.md +++ b/README.md @@ -970,6 +970,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [PDFium](https://pdfium.googlesource.com/pdfium/) - PDF generation and rendering library. [BSD-3-Clause] * [PoDoFo](http://podofo.sourceforge.net/) - A library to work with the PDF file format. [LGPL] * [Poppler](https://poppler.freedesktop.org/) - Open-source multi-backend PDF rendering library based on the xpdf-3.0 code base. [GPLv2/GPLv3] +* [QPDF](https://github.com/qpdf/qpdf) - A tool and C++ library for content-preserving transformations of PDF files. [Apache-2.0] [website](https://qpdf.sourceforge.io/) * [Xpdf](https://www.xpdfreader.com/) - Xpdf is a free PDF viewer and toolkit, including a text extractor, image converter, HTML converter, and more. [GPL v2/GPL v3] * [DynaPDF](http://www.dynaforms.com/) - An easy-to-use PDF generation library. [Commercial] From 45e0357359af85af8f5fe6333ea5fc47e8b80aa6 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 25 Mar 2025 23:33:38 +0900 Subject: [PATCH 142/154] Add SLJIT (JIT compiler) (#1657) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 87f478d38..1f9880248 100644 --- a/README.md +++ b/README.md @@ -1257,6 +1257,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [SDS](https://github.com/antirez/sds) - Simple Dynamic Strings library for C. [BSD] * [semver.c](https://github.com/h2non/semver.c) - A semver parser and render in ANSI C. [MIT] * [sigslot](http://sigslot.sourceforge.net/) - C++ Signal/Slot Library. [PublicDomain] +* [SLJIT](https://github.com/zherczeg/sljit) - Platform independent low-level JIT compiler. [BSD] [website](https://zherczeg.github.io/sljit/) * [palacaze/sigslot](https://github.com/palacaze/sigslot) - A simple, header only, C++14 signal-slots implementation [MIT] * [simdzone](https://github.com/NLnetLabs/simdzone) - Fast and standards compliant DNS zone parser. [BSD-3-Clause] * [SimpleSignal](https://github.com/larspensjo/SimpleSignal) - High performance C++11 signals. [PublicDomain] From 6258d321d42d190e836da8bce11fd25b6e8b3311 Mon Sep 17 00:00:00 2001 From: toge Date: Sun, 30 Mar 2025 23:58:51 +0900 Subject: [PATCH 143/154] Add asmjit (code generation library) (#1659) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 1f9880248..9ce974159 100644 --- a/README.md +++ b/README.md @@ -1197,6 +1197,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [access_profiler](https://github.com/arvidn/access_profiler) - A tool to count accesses to member variables in c++ programs. [GPL3] * [American fuzzy lop](http://lcamtuf.coredump.cx/afl/) a.k.a. afl-fuzz - Crazy fuzzing tool that automatically discovers bugs given time and minimal example input. [Apache2] * [Argon2](https://github.com/P-H-C/phc-winner-argon2) - The password hash Argon2, winner of PHC. [CC0/Apache2] +* [AsmJit](https://github.com/asmjit/asmjit) - Low-latency machine code generation. [Zlib] [website](https://asmjit.com) * [Better String](http://bstring.sourceforge.net) - An alternative to the string library for C which is more functional and does not have buffer overflow overrun problems. Also includes a C++ wrapper. [BSD, GPL2] * [Boost.Signals2](https://github.com/boostorg/signals2) - An implementation of a managed signals and slots system. [Boost] [website](https://boost.org/libs/signals2) * [casacore](https://code.google.com/p/casacore/) - A set of c++ core libraries derived from aips++. [LGPL] From d85e4e7228d3835755ec194e5bf13cb9e11aafcf Mon Sep 17 00:00:00 2001 From: toge Date: Mon, 31 Mar 2025 23:50:03 +0900 Subject: [PATCH 144/154] Add NAppGUI (GUI library) (#1660) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 9ce974159..d3eba4455 100644 --- a/README.md +++ b/README.md @@ -598,6 +598,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [MyGUI](https://github.com/MyGUI/mygui) - Fast, flexible and simple GUI. [MIT] * [nana](http://nanapro.org/en-us/) - Nana is a cross-platform library for GUI programming in modern C++ style. [Boost] * [NanoGui](https://github.com/mitsuba-renderer/nanogui) - A minimalistic cross-platform widget library for OpenGL 3.x or higher. [BSD] +* [NAppGUI](https://github.com/frang75/nappgui_src) - SDK for building cross-platform desktop apps in ANSI-C. [MIT] [website](https://nappgui.com/en/home/web/home.html) * [nuklear](https://github.com/Immediate-Mode-UI/Nuklear) - A single-header ANSI C gui library. [PublicDomain] * [QCustomPlot](http://qcustomplot.com/) - Qt plotting widget without further dependencies. [GPLv3] * [Qwt](http://qwt.sourceforge.net/) - Qt Widgets for Technical Applications. [Own based on LGPL] From 01ecf23bd0e63e8923752a85212df4a565324544 Mon Sep 17 00:00:00 2001 From: Keith Date: Tue, 1 Apr 2025 22:29:48 -0400 Subject: [PATCH 145/154] Add CrashCatch to Debug Section (#1663) CrashCatch is a lightweight, single-header crash reporting library for modern C++ applications. It provides an easy way to automatically capture stack traces and write crash logs in .dmp and .txt formats. This update adds CrashCatch to the "Debug" section of the documentation to make it more accessible to developers looking for a simple and effective debugging tool for crash handling in C++. - MIT Licensed - Header-only, zero dependencies - One-line setup or macro auto-init for minimal integration - Website: https://keithpotz.github.io/CrashCatch --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index d3eba4455..e814a9445 100644 --- a/README.md +++ b/README.md @@ -488,6 +488,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [CppBenchmark](https://github.com/chronoxor/CppBenchmark) - Performance benchmark framework for C++ with nanoseconds measure precision. [MIT] * [Cpptrace](https://github.com/jeremy-rifkin/cpptrace) - A simple, portable, and self-contained C++ stacktrace library supporting C++11 and greater. [MIT] * [CppUnit](http://www.freedesktop.org/wiki/Software/cppunit/) - C++ port of JUnit. [LGPL2] +* [CrashCatch](https://github.com/keithpotz/CrashCatch) - Single-header crash reporting for C++ that logs stack traces and creates `.dmp` and `.txt` crash dumps. [MIT] [website](https://keithpotz.github.io/CrashCatch) * [CTest](https://cmake.org/cmake/help/v2.8.8/ctest.html) - The CMake test driver program. [BSD] * [dbg-macro](https://github.com/sharkdp/dbg-macro) - A dbg(…) macro for C++. [MIT] * [DebugViewPP](https://github.com/CobaltFusion/DebugViewPP) - Debug logging viewer. [Boost] From 877be4e77da57f57e92e34f7c603011b2a2eebea Mon Sep 17 00:00:00 2001 From: toge Date: Sat, 5 Apr 2025 07:09:12 +0900 Subject: [PATCH 146/154] Add Hexi (streaming & serialization library) (#1664) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e814a9445..088e169d5 100644 --- a/README.md +++ b/README.md @@ -1224,6 +1224,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [gcc-poison](https://github.com/leafsr/gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications. * [happly](https://github.com/nmwsharp/happly) - A C++ header-only parser for the PLY file format. Parse .ply happily! [MIT] * [hedley](https://github.com/nemequ/hedley) - A C/C++ header file designed to smooth over some platform-specific annoyances. [website](https://nemequ.github.io/hedley/) +* [Hexi](https://github.com/EmberEmu/Hexi) - Header-only, lightweight C++ library for binary streaming & serialization. [Apache-2.0/MIT] * [HighwayHash](https://github.com/google/highwayhash) - Fast strong hash functions: SipHash/HighwayHash. [Apache-2.0] * [inja](https://github.com/pantor/inja) - A Template Engine for Modern C++. [MIT] * [Jinja2С++](https://github.com/jinja2cpp/Jinja2Cpp) - almost full-conformance template engine implementation. [website](https://jinja2cpp.github.io/) From 4019b3dde1b1e48d27d451f1a18ff41a89e07735 Mon Sep 17 00:00:00 2001 From: toge Date: Tue, 22 Apr 2025 14:40:43 +0900 Subject: [PATCH 147/154] Update unqlite webpage (#1665) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 088e169d5..e36a9fbfe 100644 --- a/README.md +++ b/README.md @@ -456,7 +456,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [TidesDB](https://github.com/tidesdb/tidesdb) - High-performance, durable, transactional embedded storage engine designed for flash and RAM optimization. [MPL-2.0] [website](https://tidesdb.com/) * [TileDB](https://github.com/TileDB-Inc/TileDB) - Fast Dense and Sparse Multidimensional Array DBMS. [MIT] [website](https://tiledb.io/) * [TinyORM](https://github.com/silverqx/TinyORM) - Modern C++ ORM library. [MIT] [website](https://www.tinyorm.org/) -* [UnQLite](https://github.com/symisc/unqlite) - A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] [website](https://unqlite.org/) +* [UnQLite](https://github.com/symisc/unqlite) - A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] [website](https://unqlite.symisc.net/) * [upscaledb](https://upscaledb.com) - An embedded "typed" key/value store with a built-in query interface. [GPLv3] * [TigerBeetleDB C++ client (Community)](https://github.com/kassane/tigerbeetle-cpp) - TigerBeetle is a financial accounting database designed for mission critical safety and performance to power the future of financial services. [BSL-1.0] * [Trilogy](https://github.com/trilogy-libraries/trilogy) - a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. [MIT] From 739144e81e1047191928ab68eb1ef1c571227620 Mon Sep 17 00:00:00 2001 From: toge Date: Wed, 30 Apr 2025 23:19:21 +0900 Subject: [PATCH 148/154] Add Reaction (reactive programming framework) (#1667) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index e36a9fbfe..d9c887ab6 100644 --- a/README.md +++ b/README.md @@ -1253,6 +1253,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [rain](https://github.com/DOSAYGO-Research/rain) - The fastest 128-bit and 256-bit non-crypto hash, passes all tests, and under 140 source lines of code. [Apache-2.0] * [RapidFuzz](https://github.com/rapidfuzz/rapidfuzz-cpp) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] [website](https://rapidfuzz.github.io/rapidfuzz-cpp/) * [rapidhash](https://github.com/Nicoshev/rapidhash) - Very fast, high quality, platform-independent hashing algorithm. [BSD-2-Clause] +* [Reaction](https://github.com/lumia431/reaction) - A lightweight, header-only reactive programming framework leveraging modern C++20 features for building efficient dataflow applications. [MIT] * [Remote Call Framework](http://www.deltavsoft.com/) - Inter-process communication framework for C++. [GPL2/Proprietary] * [reproc](https://github.com/DaanDeMeyer/reproc) - A cross-platform (C99/C++11) process library. [MIT] * [SafetyHook](https://github.com/cursey/safetyhook) - C++23 procedure hooking library. [BSL-1.0] From 23ab470252cae664b17f249adad2a252f5e2caf0 Mon Sep 17 00:00:00 2001 From: QWERTIOX <64694795+QWERTIOX@users.noreply.github.com> Date: Sun, 4 May 2025 15:52:15 +0200 Subject: [PATCH 149/154] Update Drogon description (#1668) According to this commit it no longer support c++14 https://github.com/drogonframework/drogon/commit/17c80508c091a338aa95f386e13b20141fce291b#diff-b335630551682c19a781afebcf4d07bf978fb1f8ac04c6bf87428ed5106870f5 --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index d9c887ab6..160f3c020 100644 --- a/README.md +++ b/README.md @@ -1154,7 +1154,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [CppCMS](http://cppcms.com/) - A Free High Performance Web Development Framework (not a CMS). [LGPLv3] * [Crow](https://github.com/CrowCpp/Crow) - Crow is a C++ microframework for running web services. It uses routing similar to Python's Flask. [BSD] [website](https://crowcpp.org) * [Cutelyst](https://github.com/cutelyst/cutelyst) - A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. [BSD-3-Clause] [website](https://cutelyst.org/) -* [Drogon](https://github.com/an-tao/drogon) - A C++14/17 based, high-performance HTTP application framework. [MIT] +* [Drogon](https://github.com/an-tao/drogon) - A C++17/20 based, high-performance HTTP application framework. [MIT] * [C++ wfrest](https://github.com/wfrest/wfrest) - C++ Web Framework REST API. [Apache2] * [facil.io](https://github.com/boazsegev/facil.io) - Evented, high performance C web framework supporting HTTP, WebSockets, SSE and more. [MIT] [website](http://facil.io) * [Kore](https://kore.io/) - ultra fast and flexible web server / framework for web applications developed in C. [ISC] From 21a0c11074ccaad8f65dfb119c671d2ec5ecaa96 Mon Sep 17 00:00:00 2001 From: Benno Waldhauer Date: Mon, 12 May 2025 04:55:51 +0200 Subject: [PATCH 150/154] Add sqlitemap to containers (#1670) --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 160f3c020..94253ed54 100644 --- a/README.md +++ b/README.md @@ -376,6 +376,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [robin-hood-hashing](https://github.com/martinus/robin-hood-hashing) - Fast & memory efficient hashtable based on robin hood hashing for C++14. [MIT] * [robin-map](https://github.com/Tessil/robin-map) - Fast hash map and hash set using robin hood hashing. [MIT] * [sparsepp](https://github.com/greg7mdp/sparsepp) - A fast, memory efficient hash map for C++. [BSD 3-clause] +* [sqlitemap](https://github.com/bw-hro/sqlitemap) - Persistent map backed by SQLite. [MIT] * [st_tree](https://github.com/erikerlandson/st_tree) - A fast and flexible c++ template class for tree data structures. [Apache-2.0] * [svector](https://github.com/martinus/svector) - Compact SVO optimized vector for C++17 or higher. [MIT] * [tree.hh](https://github.com/kpeeters/tree.hh) - An STL-like C++ header-only tree library. [GPL2+] From aa4f819ab6e9f008c6bd60689f1d43e4c227d0f5 Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 15 May 2025 22:51:20 +0800 Subject: [PATCH 151/154] Add rapidcsv (#1674) Co-authored-by: Het <72877407+Het-005@users.noreply.github.com> --- README.md | 1 + 1 file changed, 1 insertion(+) diff --git a/README.md b/README.md index 94253ed54..b14aff0f2 100644 --- a/README.md +++ b/README.md @@ -417,6 +417,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Fast C++ CSV Parser](https://github.com/ben-strasser/fast-cpp-csv-parser) - Small, easy-to-use and fast header-only library for reading CSV files. [BSD-3-Clause] * [Glaze](https://github.com/stephenberry/glaze) - High performance, header only, CSV library with reflection support. [MIT] * [lazycsv](https://github.com/ashtum/lazycsv) - A fast, lightweight and single-header csv parser for modern C++. [MIT] +* [rapidcsv](https://github.com/d99kris/rapidcsv) - An easy-to-use, header-only C++ CSV parser library. [BSD-3-Clause] * [ssp](https://github.com/red0124/ssp) - A header only "csv" parser which is fast and versatile with modern C++ api. [MIT] * [Vince's CSV Parser](https://github.com/vincentlaucsb/csv-parser) - A fast, self-contained, streaming C++17 CSV parser with optional type-casting and statistics. [MIT] From 13d55aa577b1e078a2a833762a6d2de19bfecb4e Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 15 May 2025 22:52:26 +0800 Subject: [PATCH 152/154] Fix #1656 (#1673) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b14aff0f2..7117d8446 100644 --- a/README.md +++ b/README.md @@ -824,7 +824,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [Boost.Multiprecision](https://github.com/boostorg/multiprecision) - provides higher-range/precision integer, rational and floating-point types in C++, header-only or with GMP/MPFR/LibTomMath backends. [Boost] [website](https://boost.org/libs/multiprecision) * [ceres-solver](http://ceres-solver.org/) - C++ library for modeling and solving large complicated nonlinear least squares problems from google. [BSD] * [CGAL](https://github.com/CGAL/cgal) - Collection of efficient and reliable geometric algorithms. [LGPL&GPL] [website](http://www.cgal.org/) -* [cml](http://cmldev.net/) - free C++ math library for games and graphics. [Boost] +* [cml](https://github.com/demianmnave/CML) - The configurable math library. [Boost] * [CNL](https://github.com/johnmcfarlane/cnl/) - A Compositional Numeric Library for C++. [Boost] * [DirectXMath](https://github.com/microsoft/DirectXMath) - An all inline SIMD C++ linear algebra library for use in games and graphics apps. * [Dlib](https://github.com/davisking/dlib) :zap: - A modern C++11 machine learning, computer vision, numerical optimization, and deep learning toolkit. [Boost] [website](http://dlib.net/) From 4b36ea3b307fe158f305289ba5eec81e1a00f5c8 Mon Sep 17 00:00:00 2001 From: sjqtentacles Date: Thu, 15 May 2025 08:01:05 -0700 Subject: [PATCH 153/154] Update README.md - remove nana gui broken link (#1576) Update nana repository link --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 7117d8446..6398a8882 100644 --- a/README.md +++ b/README.md @@ -599,7 +599,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [iup](https://www.tecgraf.puc-rio.br/iup) - Multi-platform toolkit for building graphical user interfaces. [MIT] * [libui](https://github.com/andlabs/libui) - Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports. [MIT] * [MyGUI](https://github.com/MyGUI/mygui) - Fast, flexible and simple GUI. [MIT] -* [nana](http://nanapro.org/en-us/) - Nana is a cross-platform library for GUI programming in modern C++ style. [Boost] +* [nana](https://github.com/cnjinhao/nana) - Nana is a cross-platform library for GUI programming in modern C++ style. [Boost] * [NanoGui](https://github.com/mitsuba-renderer/nanogui) - A minimalistic cross-platform widget library for OpenGL 3.x or higher. [BSD] * [NAppGUI](https://github.com/frang75/nappgui_src) - SDK for building cross-platform desktop apps in ANSI-C. [MIT] [website](https://nappgui.com/en/home/web/home.html) * [nuklear](https://github.com/Immediate-Mode-UI/Nuklear) - A single-header ANSI C gui library. [PublicDomain] From 5177da7d819e2f3d9d83997d183eab43ae4b0c8f Mon Sep 17 00:00:00 2001 From: myd7349 Date: Thu, 15 May 2025 23:25:50 +0800 Subject: [PATCH 154/154] Remove redundant asterisk (#1675) --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 6398a8882..9dc7e2f40 100644 --- a/README.md +++ b/README.md @@ -347,7 +347,7 @@ A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny * [inih](https://github.com/benhoyt/inih) - Simple .INI file parser in C, good for embedded systems. [BSD-3-Clause] * [inih](https://github.com/jtilly/inih) - Single header only C++ version of [inih](https://github.com/benhoyt/inih). [BSD-3-Clause] * [ini-cpp](https://github.com/SSARCandy/ini-cpp) - Single header only C++ version, with some handy read/write interface, extend from [inih](https://github.com/benhoyt/inih). [BSD-3-Clause] [website](https://ssarcandy.tw/ini-cpp/index.html) -* [iniparser](https://github.com/ndevilla/iniparser) - INI file parser. [MIT]* +* [iniparser](https://github.com/ndevilla/iniparser) - INI file parser. [MIT] * [inipp](https://github.com/mcmtroffaes/inipp) - Simple header-only C++ ini parser and generator. [MIT] * [libconfig](https://github.com/hyperrealm/libconfig) - C, C++ library for processing structured configuration files. [LGPL-2.1] [website](https://hyperrealm.github.io/libconfig/) * [libconfuse](https://github.com/martinh/libconfuse) - Small configuration file parser library for C. [ISC]