Awesome C++ Libraries
- awesome-hpp -- A curated list of awesome header-only C++ libraries.
- awesome-cpp -- A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things.
- miniaudio -- A single file audio playback and capture library.
- LZ4 -- Extremely fast compression.
- cpp-threadpool -- C++11 header-only thread pool library.
- Disruptor++ -- disruptor thread-synchronisation data structure for C++11.
- fuss -- efficient in-process pub/sub pattern for C++.
- laugh -- laughably simple yet effective actor concurrency framework for C++20.
- libfev -- library for events and fibers.
- libunifex -- prototype implementation of the C++ sender/receiver async programming model that is currently being considered for standardisation.
- hpx -- the C++ Standard Library for Parallelism and Concurrency.
- moodycamel::ConcurrentQueue -- fast multi-producer, multi-consumer lock-free concurrent queue for C++11.
- SObjectizer -- implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework.
- stlab -- library provides futures and channels, high level constructs for implementing algorithms that eases the use of multiple CPU cores while minimizing contention.
- xenium -- library providing various concurrent data structures and reclamation schemes.
- taocpp/config -- header-only library that reads config files based on JSON and JAXN and produces a single JSON Value as result.
- Tortellini -- ini file reader and writer for C++11 and above.
- confetti -- C++17 one-header library to parse ini files with toml extensions.
- flags -- Simple, extensible, header-only C++17 argument parser released into the public domain.
- Lyra -- A simple to use, composing, header only, command line arguments parser for C++ 11 and beyond.
- oof -- Convenient, high-performance RGB color and position control for console output.
- xtd -- modern C++17 / C++20 framework to create console, forms (GUI like WinForms) and unit test applications on Microsoft Windows, Apple macOS and Linux
- array -- contiguous container library - arrays with customizable allocation, small buffer optimization and more.
- BTree -- a general-purpose high-performance lightweight STL-like modern C++ B-Tree.
- cppitertools -- implementation of python itertools and builtin iteration functions for C++17.
- flecs -- fast and lightweight Entity Component System with a focus on high performance game development.
- FunctionalPlus -- functional programming library for C++.
- Little Type Library -- lightweight library that can be used for meta programming and / or functional programming.
- memory -- STL compatible C++ memory allocator library using a new RawAllocator concept that is similar to an Allocator but easier to use and write.
- NanoRange -- C++17 implementation of the C++20 Ranges proposals.
- pdqsort -- pattern-defeating quicksort (pdqsort) is a novel sorting algorithm that combines the fast average case of randomized quicksort with the fast worst case of heapsort, while achieving linear time on inputs with certain patterns.
- plf_hive -- plf::hive is a fork of plf::colony to match the current C++ standards proposal.
- recursive-variant -- a simple library for recursive variant types.
- robin-hood-hashin -- platform independent replacement for
std::unordered_map
/std::unordered_set
which is both faster and more memory efficient for real-world use cases. - static_vector -- dynamically-resizable vector with fixed capacity and embedded storage.
- taocpp/operators -- zero-dependency C++11 single-header library that provides highly efficient, move aware operators for arithmetic data types.
- taocpp/sequences -- zero-dependency C++11 header-only library that provides efficient algorithms to generate and work on variadic templates and
std::integer_sequence
. - tiny::optional -- replacement for std::optional that does not unnecessarily waste memory.
- type_safe -- zero overhead utilities for preventing bugs at compile time.
- vapid-soa -- a header only structure of arrays container for C++.
- glaze -- extremely fast, in memory, JSON and interface library for modern C++.
- DAW JSON Link -- static JSON parsing in C++.
- json.h -- single header json parser for C and C++.
- lazycsv -- fast, lightweight and single-header c++ csv parser library.
- RapidJSON -- fast JSON parser/generator for C++ with both SAX/DOM style API.
- simdjson -- parsing gigabytes of JSON per second.
- yyjson -- the fastest C JSON library.
- cpp-sqlitelib -- C++11 SQLite wrapper library.
- TinyDir -- lightweight, portable and easy to integrate C directory and file reader.
- cpp-mmaplib -- C++11 header-only memory mapped file library.
- glob -- glob for C++17.
- The Forge -- cross-platform rendering framework.
- Godot -- multi-platform 2D and 3D game engine.
- HibFonts -- manuscript based ASCII font for Open GL ES 2.0.
- libschrift -- a lightweight TrueType font rendering library.
- LLGL -- thin abstraction layer for the modern graphics APIs OpenGL, Direct3D, Vulkan, and Metal.
- lunasvg -- standalone c++ library to create, animate, manipulate and render SVG files.
- Matplot++ -- graphics library for data visualization.
- PlutoVG -- standalone 2D vector graphics library in C.
- raylib -- simple and easy-to-use library to enjoy videogames programming.
- Sokol -- minimal cross-platform standalone C headers.
- WUHOO -- single-header library for graphics related window management, compatible with both C and C++.
- lwlog -- very fast synchronous C++17 logging library.
- spdlog -- fast C++ logging library.
- reckless -- Low-latency, high-throughput, asynchronous logging library for C++.
- Quill -- cross-platform low latency logging library based on C++14.
- FastTrigo -- fast yet accurate trigonometric functions.
- vmath -- C++17 tiny vector math library.
- fixed_math -- fixed point 48.16 bit arithmetic type.
- eve -- expressive velocity engine.
- Asio -- Asio C++ Library.
- ZeroMQ -- library which extends the standard socket interfaces with features traditionally provided by specialised messaging middleware products.
- nanomsg-next-gen -- lightweight, broker-less library, offering a simple API to solve common recurring messaging problems, such as publish/subscribe, RPC-style request/reply, or service discovery.
- FlatBuffers -- memory efficient serialization library.
- zpp::bits -- lightweight C++20 serialization and RPC library.
- subprocess.h -- single header process launching solution for C and C++.
- subprocess -- a C++ high level library for running shell processes.
- easy_profiler -- lightweight profiler library for C++.
- picobench -- tiny microbenchmarking library in a single header file.
- precision -- microbenchmarking library for C++17 and above.
- cpprouter -- modern, header-only request router for C++.
- cpp-httplib -- C++11 single-file header-only cross platform HTTP/HTTPS library.
- jwt-cpp -- header only library for creating and validating json web tokens in C++.
- kleinsHTTP -- a stupid stupidly simple http server.
- PicoHTTPParser -- tiny HTTP parser written in C.
- restbed -- Corvusoft's Restbed framework brings asynchronous RESTful functionality to C++14 applications.
- RESTCpp -- cross platform multi threaded REST API framework using thread-pooling implementation with modern C++.
- via-httplib -- a library for embedding an HTTP or HTTPS server in C++ applications.
- wfrest -- C++ web framework REST API.
- concurrencpp -- tasks, executors, timers and C++20 coroutines to rule them all.
- periodic-function -- small header only library to call a function at a specific time interval.
- SCoro -- a stackless, resumable, resettable state machine style coroutine library for C++17.
- timetable -- C++17 one-header library to invoke something periodically or at the specified time.
- Elk -- tiny JS engine for embedded systems.
- Gravity -- gravity programming language.
- lauf -- bytecode interpreter.
- Monkey -- C++ version monkey language interpreter.
- PL/0 JIT compiler -- tiny PL/0 JIT compiler in less than 700 LOC with LLVM and PEG parser.
- QuickJS -- QuickJS Javascript Engine.
- RocksDB -- persistent key-value store for flash and RAM storage.
- doctest -- the fastest feature-rich C++11/14/17/20 single-header testing framework.
- snatch -- lightweight C++20 testing framework.
- cpp-peglib -- C++17 header-only PEG (Parsing Expression Grammars) library.
- ezpz -- easy parsing C++ library.
- lexy -- C++ parsing DSL.
- libfmt -- a modern formatting library.
- htmlparser -- Fast and lightweight HTML parser.
- scnlib -- scanf for modern C++
- Dear ImGui -- bloat-free Graphical User interface for C++ with minimal dependencies.
- Elements -- lightweight, fine-grained, resolution independent, modular GUI library.
- hikogui -- modern accelerated GUI.
- Neutralinojs -- portable and lightweight cross platform app development framework.
- microui -- tiny, portable, immediate-mode UI library written in ANSI C.
- raygui -- simple and easy-to-use immediate-mode gui library.
- cpp-unicodelib -- C++17 single-file header-only Unicode library.
- utf8.h -- single header utf8 string functions for C and C++.