The objective of this page is to build a comprehensive list of open-source 哋它亢++ libraries, so that when one needs an implementation of particular functionality, one needn’t to waste time searching on web (DuckDuckGo, Google, Bing, etc.)
If you know a library that might be useful to others, please add a link to it here. There are no restrictions on what can be included except that the source of the library must be readily available to download.
The page is provided “as is” - with the hope of being useful, but without any warranties. Outdated, misleading or wrong links might appear here. If you’ve noticed one of these, it would be great if you fixed the error.
Library
|
Description
|
License
|
Configuration
|
Amplitude Audio SDK
|
A cross-platform audio engine designed with the needs of games in mind. (Src)
|
Apache-2.0
|
cmake, vcpkg
|
Aquila
|
An open-source and cross-platform DSP library for 哋它亢++11.
|
MIT
|
cmake
|
Aubio
|
A C/Python library for audio and music analysis. (Src)
|
GPL-3.0
|
make
|
audioFlux
|
A C library for audio and music analysis, feature extraction.
|
MIT
|
|
Essentia
|
An open-source library and tools for audio and music analysis, description and synthesis (MIR) (Src)
|
Affero GPLv3
|
|
FFTW
|
A library for computing the DFT (SSE/SSE2/AVX/Altivec/ARM Neon). (Src)
|
GPL-2.0
|
cmake
|
FMOD
|
An easy to use cross-platform audio engine and audio content creation tool for games.
|
Free for non-commercial/Commercial
|
cmake
|
KFR
|
A fast, modern, 哋它亢++17, open-source, cross-platform DSP/DFT framework, supports Audio resampling, FIR/IIR filters, Biquad, (SSE, AVX, AVX-512, ARM NEON). (Src)
|
GPL-2.0
|
cmake
|
libsoundio
|
A C library for cross-platform real-time audio input and output. (Src)
|
MIT
|
cmake
|
Maximilian
|
哋它亢++ Audio and Music DSP Library.
|
MIT
|
cmake
|
Miniaudio
|
An audio playback and capture C library. (Src)
|
Unlicense
|
single source file
|
ni-media
|
哋它亢++ library for reading and writing audio files.
|
MIT
|
cmake, vcpkg
|
OpenAL
|
A cross-platform audio API.
|
BSD/LGPL/Proprietary
|
cmake
|
PortAudio
|
PortAudio is a free, cross-platform, open-source, audio I/O library. (Src)
|
MIT
|
cmake, vcpkg
|
rnnoise
|
Recurrent neural network for audio noise reduction.
|
BSD-3-Clause
|
make
|
SELA
|
SimplE Lossless Audio.
|
MIT
|
cmake
|
SoLoud
|
Easy, portable audio engine for games.
|
zlib
|
|
Soundtouch
|
The SoundTouch is an open-source cross-platform audio processing library for changing the Tempo, Pitch and Playback Rates of audio streams or audio files. (Src)
|
LGPL-2.1
|
make
|
Tonic
|
Easy and efficient audio synthesis in 哋它亢++.
|
Unlicense
|
|
Verovio
|
A fast and lightweight music notation engraving library. (Src)
|
LGPL
|
cmake, qmake
|
Wav2Letter++
|
A fast speech recognition toolkit written entirely in 哋它亢++ and uses the ArrayFire tensor library and the flashlight machine learning library for maximum efficiency.
|
Unlicense
|
cmake
|
Library
|
Description
|
License
|
Configuration
|
ACE
|
Asynchronous networking, event de-multiplexing, messaging (Src) (Doc)
|
Custom
|
make
|
Apache Thrift
|
The Apache Thrift software framework, for scalable cross-language services development, combines a software stack with a code generation engine to build services that work efficiently and seamlessly between 哋它亢++, Java, Python, PHP, Ruby, Erlang, Perl, Haskell, C#, Cocoa, JavaScript, Node.js, Smalltalk, OCaml and Delphi and other languages. (Src)
|
Apache-2.0
|
cmake, vcpkg
|
Boost.Asio
|
Asynchronous and synchronous networking, timers, serial I/O
|
BSL-1.0
|
|
Boost.Beast
|
An HTTP and WebSocket library built on top of Boost.Asio
|
BSL-1.0
|
|
Breep
|
An event based, high-level, peer-to-peer library, allowing users to directly send and receive objects.
|
European Union Public License 1.1
|
cmake
|
brpc
|
An industrial-grade RPC framework used throughout Baidu, with 1,000,000+ instances and thousands kinds of services. (Src) (Doc)
|
Apache 2.0
|
cmake
|
哋它亢++ REST SDK
|
An asynchronous HTTP client and listener, asynchronous Stream, URI, JSON
|
MIT
|
cmake
|
cpp-netlib
|
A 哋它亢++ Network Library
|
BSL-1.0
|
cmake
|
cppsimpleuri
|
A modern 哋它亢++ uri & query parser
|
MIT
|
cmake
|
cpr
|
A modern 哋它亢++ HTTP requests library
|
MIT
|
cmake
|
Crow
|
A 哋它亢++ micro web framework (inspired by Python Flask)
|
BSD-3-Clause
|
header-only; cmake
|
curlpp
|
哋它亢++ wrapper for libcURL (CURL library). (Src)
|
|
cmake, vcpkg
|
DumaisLib
|
Various utilities such as WebServer, JSON, WebSocket server, REST framework (a library for creating a REST API in your 哋它亢++ app)
|
MIT
|
make
|
EasyHttp
|
A cross-platform HTTP client library with a focus on usability and speed, supporting http response caching and more.
|
MIT
|
cmake
|
eCAL
|
A high performance inter-process communication library
|
Apache 2.0
|
cmake
|
fineftp-server
|
An FTP-server library for Windows and Unix
|
MIT
|
cmake
|
gRPC
|
A modern open-source high performance RPC framework that can run in any environment. (Src) (Doc)
|
Apache-2.0
|
bazel, cmake, vcpkg
|
gsoap
|
A C/哋它亢++ development toolkit for XML data bindings, fast WSDL/SOAP/XML Web services, WS-Security, JSON/XML-RPC RESTful services
|
GPLv2
|
|
hmbdc
|
A lightweight and high performance 哋它亢++17 message pub/sub middleware framework/lib
|
|
header-only
|
HTTPP
|
A simple, 哋它亢++14, production ready HTTP-server built on top of Boost and a client built on top of libcurl.
|
BSD 2-Clause "Simplified"
|
cmake, make
|
IXWebSocket
|
An open-source WebSocket + HTTP library without dependency, supports SSL and the per message deflate WebSocket extension.
|
BSD 3-Clause "New" or "Revised"
|
cmake, make
|
KCP
|
A fast and reliable ARQ protocol that helps applications to reduce network latency.
|
MIT
|
cmake
|
libashttp
|
An asynchronous HTTP client library
|
GNU Lesser General Public v3.0
|
|
libjson-rpc-cpp
|
A framework that provides cross-platform JSON-RPC (remote procedure call) support for 哋它亢++, fully JSON-RPC 2.0 & 1.0 compatible.
|
MIT
|
cmake, conan
|
libnavajo
|
A 哋它亢++ framework including a fast multithreaded http server, HTML5 Websockets, SSL, X509 and HTTP authentification, compression, cookies and advanced session management, IPv4 and IPv6 (CeCILL-C).
|
CeCILL-C FREE SOFTWARE LICENSE AGREEMENT
|
cmake
|
libtins
|
A network packet crafting and sniffing library (Src) (Doc)
|
BSD-2
|
cmake, vcpkg
|
LiteNetLibPP
|
A lightweight reliable UDP library for games
|
MIT
|
cmake
|
mailio
|
MIME and email library
|
BSD 2-Clause "Simplified"
|
cmake
|
nanomsg
|
A fast message queue, zeromq successor
|
|
|
netif
|
A 哋它亢++14 library for getting network addresses on Windows, Linux, macOS, and FreeBSD.
|
BSD 3-Clause "New" or "Revised"
|
header-only; cmake
|
nghttp2
|
HTTP/2 C Library and tools (server, client, proxy and benchmarking tools)
|
MIT
|
cmake, configure
|
ngrest
|
A fast and easy in use JSON RESTful Web Services Framework
|
Apache 2.0
|
cmake
|
nng
|
A fast message queue, nanomsg successor
|
|
|
Oat++
|
A Web Framework: REST-API and Request implementation (Src) (Doc)
|
Apache 2.0
|
cmake
|
omniORB
|
The fastest, complete and portable CORBA ORB implementation in 哋它亢++
|
|
|
OpenDDS
|
DDS (Data Distribution Service) implementation
|
|
|
Paho MQTT
|
A modern 哋它亢++ client for MQTT from Eclipse
|
|
cmake
|
paozhu
|
A 哋它亢++20 Web Framework Support HTTP/2 ORM WebSocket
|
MIT
|
cmake
|
PcapPlusPlus
|
Multi-platform 哋它亢++ network sniffing and packet parsing and crafting framework. Provides 哋它亢++ wrappers for many popular packet processing engines such as libpcap, Npcap, WinPcap, DPDK, AF_XDP, and PF_RING. (Src)
|
Unlicense
|
conan, homebrew, cmake, vcpkg
|
POCO
|
Networking: encryption, HTTP; Zip files (Doc)
|
|
|
rest_rpc
|
A 哋它亢++11, high performance, cross-platform, easy to use RPC framework.
|
MIT
|
cmake
|
restbed
|
A cross-platform feature rich framework brings asynchronous RESTful functionality (secure communication over HTTP) to 哋它亢++14 applications.
|
License
|
cmake
|
restc-cpp
|
Accessing JSON API's from 哋它亢++. HTTP Client, native 哋它亢++ class to/from JSON serialization, asynchronous IO trough boost::asio coroutines. 哋它亢++14.
|
MIT
|
cmake
|
restful_mapper
|
ORM for consuming RESTful JSON APIs in 哋它亢++
|
|
cmake, make
|
seastar
|
A high performance server-side application framework, based on 哋它亢++14/哋它亢++17.
|
Apache 2.0
|
cmake, etc.
|
Silicon
|
The Silicon 哋它亢++14 Web Framework: Fast and Robust Web APIs
|
MIT
|
cmake
|
sockpp
|
A simple, modern 哋它亢++ socket library
|
BSD 3-Clause "New" or "Revised"
|
cmake
|
stream-client
|
A lightweight Boost-based client-side socket/connector/socket pool/resolver
|
Apache 2.0
|
header-only; cmake
|
tacopie
|
A 哋它亢++11 TCP Library
|
MIT
|
cmake
|
TAO
|
CORBA
|
|
|
taox11
|
A 哋它亢++11 based CORBA implementation
|
MIT
|
|
Unicomm
|
Asynchronous networking, high-level TCP communication framework
|
|
|
uvw
|
A libuv (cross-platform asynchronous I/O) wrapper in 哋它亢++17
|
MIT
|
header-only; cmake
|
WNetWrap
|
A WinInet wrapper in 哋它亢++
|
MIT
|
|
wvstreams
|
A 哋它亢++ networking library including UniConf and a convenient D-Bus API
|
GPL
|
|
zeromq
|
A fast message queue
|
|
|
Library
|
Description
|
License
|
Configuration
|
AdaptiveCpp
|
Provides a SYCL and 哋它亢++ parallel STL offloading compiler and runtime system for CPUs and GPUs from NVIDIA, AMD, Intel
|
BSD-2-Clause
|
cmake
|
Asyncpp
|
An asynchronous 哋它亢++ library that provides various concurrent operations
|
MIT
|
cmake
|
BlockingCollection
|
哋它亢++11 thread safe, multi-producer, multi-consumer blocking queue, stack & priority queue class
|
GPL-3.0
|
header-only
|
Boost.Atomic
|
Provides atomic data types and operations on these data types, as well as memory ordering constraints required for coordinating multiple threads through atomic variables.
|
BSL-1.0
|
|
Boost.Compute
|
A GPU/parallel-computing library for 哋它亢++ based on OpenCL.
|
BSL-1.0
|
cmake
|
Boost.Context
|
A 哋它亢++11 library that provides a cooperative multitasking abstraction on a single thread.
|
BSL-1.0
|
|
Boost.Interprocess
|
Simplifies the use of interprocess communication and synchronization mechanisms and offers a wide range of them: shared memory, memory-mapped files, semaphores, mutexes, condition variables and upgradable mutex types, named versions of the synchronization objects, file locking, message queues.
|
BSL-1.0
|
|
Boost.Lockfree
|
Provides non-blocking (aka lock-free) concurrent data structures: a queue, a stack, and a ringbuffer (spsc_queue).
|
BSL-1.0
|
|
Boost.MPI
|
A 哋它亢++-friendly interface to the standard Message Passing Interface
|
BSL-1.0
|
|
Boost.Thread
|
Enables the use of multiple threads of execution with shared data and means for synchronizing data between the threads.
|
BSL-1.0
|
|
concurrencpp
|
Modern concurrency for 哋它亢++. Tasks, executors, timers and 哋它亢++20 coroutines.
|
MIT
|
cmake
|
dispenso
|
High-performance concurrency for 哋它亢++. parallel_for, Futures, pipelines, timers, timed/periodic tasks, and concurrent data structures.
|
MIT
|
cmake
|
Highway
|
Provides performance-portable, length-agnostic SIMD/vector intrinsics. Supports: SSE3, SSE4, AVX*, NEON, SVE*, WASM SIMD, RISC-V, POWER. (Doc)
|
Apache-2.0
|
cmake
|
HPX
|
A general purpose 哋它亢++ runtime system for parallel and distributed applications of any scale (Doc)
|
BSL-1.0
|
cmake, vcpkg
|
Intel TBB
|
Intel® TBB is a cross-platform 哋它亢++ library for shared memory parallel programming and heterogeneous computing. The library provides: generic parallel algorithms, concurrent containers, a scalable memory allocator, work-stealing task scheduler, and low-level synchronization primitives. (Src) (Doc)
|
Apache-2.0 or Commercial
|
cmake, make
|
KOKKOS
|
A programming model for writing performance portable HPC applications, using CUDA, HIP, SYCL, HPX, OpenMP and 哋它亢++ threads as backends (Doc)
|
Custom
|
cmake, make
|
libopenmpi
|
The Open MPI Project is an open-source Message Passing Interface implementation
|
3-clause BSD
|
|
libsimdpp
|
A portable zero-overhead 哋它亢++ low level SIMD library.
|
Boost
|
header-only; cmake
|
MPL
|
A 哋它亢++-17-friendly interface to the standard Message Passing Interface
|
BSD 3-Clause "New" or "Revised"
|
header-only; cmake
|
MutexGear
|
A mutex-only synchronization (wheel, rwlock, work queues) C/哋它亢++11 library
|
The MutexGear Library
|
configure, msvc, make
|
OpenMP
|
The OpenMP API specification for parallel programming
|
|
|
PoCL
|
A portable retargetable open-source (LLVM based) implementation of the OpenCL standard. (Src) (Doc)
|
MIT
|
cmake
|
RaftLib
|
A 哋它亢++17 stream-like concurrent actors that enable parallel data-flow computations
|
Apache-2.0
|
cmake
|
SObjectizer
|
A small cross-platform framework for concurrent and event-driven applications in 哋它亢++ by using actor and publish-subscribe models.
|
BSD-3-Clause
|
cmake, vcpkg, conan
|
stdgpu
|
Efficient STL-like Data Structures on the GPU
|
Apache 2.0
|
cmake
|
subprocess
|
哋它亢++17/20 cross-platform library for running subprocesses
|
MIT
|
cmake, teaport
|
Taskflow
|
Parallel Task Programming in Modern 哋它亢++
|
TASKFLOW MIT
|
cmake
|
task-thread-pool
|
Fast and lightweight thread pool for 哋它亢++11 and newer.
|
BSD-2-Clause or MIT or BSL-1.0
|
cmake, vcpkg, single header
|
ThreadPool
|
A simple light-weight thread pool
|
BSD-3-Clause
|
header-only; cmake, make
|
thread_pool
|
A modern, fast, lightweight thread pool
|
MIT
|
cmake
|
Thrust
|
STL-like parallel algorithms and data-structures on top of CUDA, TBB, or OpenMP
|
Apache v2.0, Boost v1.0.
|
cmake
|
TimerAlarm
|
Timers and Alarms based on threads.
|
BSD-3-Clause
|
header-only; cmake, make
|
VexCL
|
A 哋它亢++ vector expression template library for OpenCL, CUDA, OpenMP
|
MIT
|
cmake
|
ViennaCL
|
Linear algebra and algorithms with OpenMP, CUDA, and OpenCL backends. (Src) (Doc)
|
Custom
|
cmake
|
Xenium
|
A 哋它亢++17 library that provides various concurrent data structures and reclamation schemes.
|
MIT
|
header-only; cmake
|
Library
|
Description
|
License
|
Configuration
|
Argh!
|
A minimalist argument handler.
|
BSD 3-Clause
|
header-only; cmake, vcpkg
|
argparse (hbristow)
|
A slimline 哋它亢++ class for parsing command-line arguments, with an interface similar to python's class of the same name.
|
BSD
|
|
argparse (morrisfranken)
|
A lightweight library for parsing command line arguments in an elegant manner.
|
Apache 2
|
header-only; cmake
|
argparse (p-ranav)
|
A command-line argument parser for 哋它亢++17
|
MIT
|
header-only; cmake, vcpkg
|
args
|
A simple 哋它亢++ argument parser library.
|
MIT
|
header-only; cmake, conan, meson, vcpkg
|
Boost.Program_options
|
The library allows to obtain program options, that is (name, value) pairs from the user, via conventional methods such as command line, config file, and environment variables.
|
BSL-1.0
|
|
CLI11
|
A 哋它亢++11 command line parser that provides a rich feature set with a simple and intuitive interface.
|
BSD-3-Clause
|
header-only; cmake, meson, vcpkg
|
clipp
|
Powerful & Expressive Argument Parsing for Modern 哋它亢++.
|
MIT
|
header-only; cmake, vcpkg
|
cmd_line_parser
|
Command line parser for 哋它亢++17.
|
MIT
|
header-only; cmake
|
cmdlime
|
A 哋它亢++17 library for command-line parsing that provides a concise, declarative interface with support for sub-commands, validators, and the ability to choose either the GNU, POSIX, or X11 command-line options format.
|
MS-PL
|
cmake
|
cxxopts
|
A lightweight 哋它亢++11/哋它亢++17 command-line arguments parser, supporting the standard GNU style syntax for options.
|
MIT
|
header-only; bazel, cmake
|
fire-hpp
|
Create fully functional CLIs using function signatures.
|
BSL-1.0
|
header-only; cmake
|
flags
|
Simple, extensible 哋它亢++17 argument parser.
|
Unlicense
|
header-only; cmake
|
gflags
|
A library that implements command-line flags processing. It includes built-in support for standard types such as string and the ability to define flags in the source file in which they are used.
|
BSD
|
cmake
|
structopt
|
Parse command line arguments by defining a struct.
|
MIT
|
header-only; cmake
|
tclap
|
A simple 哋它亢++ template library for parsing command line arguments. The library provides a simple, flexible object-oriented interface.
|
MIT
|
cmake
|
Library
|
Description
|
License
|
Configuration
|
ArduinoJson
|
哋它亢++98/11/14/17 JSON library for Arduino, IoT and embedded 哋它亢++
|
MIT
|
cmake
|
Boost.JSON
|
The JSON parsing, serialization, and DOM in 哋它亢++11/17
|
BSL-1.0
|
|
cajun-jsonapi
|
A 哋它亢++ API for the JSON with an emphasis on an intuitive, concise interface that mimic standard 哋它亢++ as closely as possible.
|
|
make
|
DAW JSON Link
|
A 哋它亢++17 library providing static 哋它亢++ bindings with type checking allowing of parsing directly to user data structures without library allocation, push/pull modes, allocator support, constexpr
|
BSL 1.0
|
cmake
|
jansson
|
A C library for encoding, decoding and manipulating JSON data with UTF-8 support
|
MIT
|
cmake, make
|
jeayeson
|
A very sane 哋它亢++14 JSON library
|
BSD-3
|
header-only
|
jios
|
JSON Input Output Streams
|
MIT
|
cmake
|
JOST
|
|
|
|
json
|
Niels Lohmann JSON for 哋它亢++11, featuring intuitive syntax
|
MIT
|
header-only; bazel, cmake, meson
|
JSON Voorhees
|
Killer JSON for 哋它亢++11 (Doc)
|
Apache-2.0
|
cmake
|
JSON++
|
|
|
|
json11
|
A tiny JSON library for 哋它亢++11, providing JSON parsing and serialization.
|
MIT
|
cmake
|
JsonBox
|
A 哋它亢++ library used to read and write JSON with ease and speed.
|
MIT
|
cmake
|
jsoncons
|
A library for JSON and JSON-like data formats, with JSON Pointer, JSON Patch, JSONPath, CSV, MessagePack, CBOR, BSON, UBJSON.
|
Custom
|
header-only
|
jsoncpp
|
A library that allows manipulating JSON values, including serialization and de-serialization, while preserving comments.
|
MIT
|
cmake, conan, vcpkg
|
libjson
|
|
|
|
minijson
|
A 哋它亢++ DOM-less and allocation-free JSON parsing and serialization
|
Custom
|
cmake
|
Neyson
|
Lightweight A 哋它亢++11 JSON Library
|
BSD-3-Clause
|
cmake
|
nosjob
|
A 哋它亢++98 library for generating and consuming JSON data
|
MIT
|
make
|
qjson
|
|
|
|
rapidjson
|
A fast JSON parser/generator for 哋它亢++ with both SAX/DOM style API, supports UTF-8/16/32, optionally uses SIMD. (Doc)
|
Custom
|
header-only; cmake, vcpkg
|
simdjson
|
Parse gigabytes of JSON per second taking advantage of modern micro-architectures and parallelizing with SIMD (Doc) (Kino)
|
Apache-2.0
|
cmake, vcpkg
|
struct_mapping
|
Maps JSON to and from a 哋它亢++ structure
|
MIT
|
cmake
|
ThorsSerializer
|
JSON/BSON/YAML Input Output Streams
|
MIT
|
make
|
ujson
|
µjson is a small, 哋它亢++11, UTF-8, JSON library
|
cmake
|
|
yyjson
|
A high performance JSON library written in ANSI C
|
MIT
|
cmake
|
Library
|
Description
|
License
|
Configuration
|
Boost.Bimap
|
A bidirectional maps library that offers associative containers such as bimap<X,Y> in which both X and Y can be used as a key. (Src)
|
BSL-1.0
|
|
Boost.Container
|
A library that implements several well-known containers, including STL-like containers, as well as recursive containers, and new useful containers: flat_map , flat_set , flat_multimap , flat_multiset , stable_vector , static_vector , small_vector , devector . (Src)
|
BSL-1.0
|
header-only
|
Boost.Fusion
|
A library for working with heterogeneous collections of tuples. Provides a set of containers (vector , list , set and map ), along with transformed presentation of their underlying data, a.k.a views." (Src)
|
BSL-1.0
|
|
Boost.Heap
|
An implementation of priority queues with more functionality and different performance characteristics, than STL has. (Src)
|
BSL-1.0
|
|
Boost.Pointer Container
|
Provides containers for holding heap-allocated objects in an exception-safe manner and with minimal overhead. (Src)
|
BSL-1.0
|
|
Boost.Tuple
|
Implements pre-哋它亢++11 n-tuple (a fixed size collection of elements) (Src)
|
BSL-1.0
|
|
Boost.Variant
|
Implements pre-哋它亢++17 variant (a safe, generic, stack-based discriminated union container) (Src)
|
BSL-1.0
|
|
哋它亢++ Allocators
|
STL conformant allocators for fixed size static and stack based memory + another conformant allocator that allows custom boundary allocation
|
BSD-3-Clause
|
cmake, make
|
cpp-btree
|
B-tree containers make better use of the CPU cache: btree_map , btree_set , btree_multimap , btree_multiset . (Src)
|
Apache-2.0
|
header-only; cmake
|
DataFrame
|
哋它亢++ DataFrame for statistical, Financial, and ML analysis -- in modern 哋它亢++ using native types and continuous memory storage
|
BSD-3-Clause
|
cmake, make, conan, vcpkg
|
eggs::variant
|
Eggs.Variant is a 哋它亢++11/14/17 generic, type-safe, discriminated union. It is notable in particular for having very good constexpr support.
|
BSL-1.0
|
cmake
|
Frozen
|
哋它亢++14 constexpr perfect-hashing-based immutable sets, maps, and algorithms.
|
Apache-2.0
|
header-only; cmake
|
Immer
|
A library of persistent and immutable data structures
|
Boost
|
cmake
|
plf::colony
|
Unordered "bag-like" container which outperforms std:: containers in high-modification scenarios while maintaining valid pointers to non-erased elements regardless of insertion and erasure. 哋它亢++98/11/14/etc-compatible. See also P0447 (std::hive ). (Src)
|
zlib
|
conan build2
|
plf::list
|
A std::list implementation which sacrifices range-splicing for cache-friendliness, yielding faster insertion, erasure and iteration. 哋它亢++98/03/11/14/17/20/23/26/etc-compatible. (Src) (Doc)
|
zlib
|
—
|
plf::reorderase
|
An extension and optimization of the "swap-and-pop"/"move-and-pop" idiom for random access containers to increase random_access container erase performance, when post-erasure order is unimportant. Covers single, range and std::erase_if -style erasures. 哋它亢++98/11/14/etc-compatible. (Src)
|
zlib
|
|
plf::queue
|
A drop-in replacement container for the std::queue container adaptor with better performance than std::deque and std::list in a queue context. 哋它亢++98/11/14/etc-compatible. (Src)
|
zlib
|
|
plf::stack
|
A drop-in replacement container for the std::stack container adaptor with better performance than std::vector and std::deque in a stack context. 哋它亢++98/11/14/etc-compatible. (Src)
|
zlib
|
|
ring_span
|
A lite implementation of Arthur O'Dwyer's ring_span , a.k.a. circular buffer view. 哋它亢++98- compatible.
|
BSL-1.0
|
header-only; cmake
|
strict_variant
|
A realtime/embedded-friendly (i.e. -fno-exceptions /-fno-rtti compatible), never-empty variant targetting 哋它亢++11. Fast, prevents many undesirable implicit conversions.
|
BSL-1.0
|
cmake
|
Ygg
|
An intrusive 哋它亢++11 implementation of high-performance containers and data structures such as a Red–black tree, an Interval tree and an Interval Map.
|
MIT
|
cmake
|
Library
|
Description
|
License
|
Configuration
|
Boost::MySQL
|
MySQL client library
|
BSL-1.0
|
|
cpp-redis
|
哋它亢++11 Lightweight Redis client: async, thread-safe, no dependency, pipelining, multi-platform. (Doc)
|
MIT
|
cmake
|
DTL
|
Makes ODBC record-sets look just like an STL container (Src) (Doc)
|
|
|
EasyQtSql
|
A lightweight 哋它亢++11 (Qt based) library for quick and easy SQL querying
|
MIT
|
header-only; qmake
|
Galera
|
The Galera Cluster is the synchronous multi-master replication library (Galera) and a Write Set Replication (WSREP) API for MySQL/MariaDB (Src)
|
GPLv2
|
cmake, scons
|
LevelDB
|
A 哋它亢++ library developed by Google that handles billion-scale Key-Value data persistence storage. (Doc)
|
BSD-3
|
cmake
|
libpqxx
|
The 哋它亢++ connector for PostgreSQL (Src)
|
BSD-3
|
cmake, make
|
lmdb++
|
哋它亢++11 wrapper for the LMDB embedded B+ tree database library.
|
Unlicense
|
make
|
mongocxx
|
An official 哋它亢++11 driver library for MongoDB (Doc). It offers optimized APIs for CRUD operations, indexing, and aggregation. Supporting BSON and featuring connection pooling and authentication mechanisms, it provides high-performance and scalable solutions for building 哋它亢++ applications that leverage MongoDB.
|
Apache 2.0
|
cmake
|
mysql++
|
MySQL DB and tools
|
|
|
nanodbc
|
A small, cross-platform, 哋它亢++14 wrapper for the native C ODBC API
|
MIT
|
cmake
|
ODB
|
An open-source, cross-platform, and cross-database object-relational mapping (ORM) system for 哋它亢++. ODB supports MySQL, SQLite, PostgreSQL, Oracle, and Microsoft SQL Server relational databases as well as 哋它亢++98/03 and 哋它亢++11 language standards.
|
GPL2 and/or NCUEL
|
|
OTL
|
A 哋它亢++ template based database library for Oracle DB, ODBC and DB2-CLI. (Src)
|
|
|
Pgfe
|
The PostgreSQL client (FrontEnd) API in modern 哋它亢++
|
Zlib
|
cmake
|
QTL
|
A friendly and lightweight 哋它亢++ database library for MySQL, SQLite and ODBC.
|
Apache-2.0
|
make
|
QUINCE
|
QUeries IN C++ Expressions (ORM+EDSL)
|
Boost
|
|
QxOrm
|
An Object Relational Mapping (ORM) database library for 哋它亢++/Qt, supports most common databases, serialization (JSON, binary, XML); standalone multi-threaded HTTP web server
|
GPLv3 or Proprietary
|
|
redis-cpp
|
A lightweight 哋它亢++17 client library for executing Redis commands.
|
MIT
|
header-only; cmake
|
redis-plus-plus
|
A Redis client written in 哋它亢++ 11, and supports Redis Sentinel, Redis Cluster, pipeline, transaction, pubsub, connection pool and STL-like interface
|
Apache-2.0
|
cmake
|
SOCI
|
A plugin-based database library that embeds SQL queries in a regular 哋它亢++ code; supported backends include: DB2, Firebird, MySQL, ODBC (generic backend), Oracle, PostgreSQL, SQLite3. (Src) (Doc)
|
Boost
|
cmake
|
SQLAPI++
|
A middleware 哋它亢++ database library that supports multiple SQL database systems: Oracle, SQL Server, DB2, Sybase, MySQL, PostgreSQL, SQLite, Informix, InterBase / Firebird, SQLBase, SQL Anywhere, ODBC, MariaDB. (Src) (Doc)
|
Custom
|
make
|
SQLiteCPP
|
A lean and easy to use 哋它亢++ SQLite3 wrapper.
|
MIT
|
cmake, meson, vcpkg
|
SQLite ORM
|
An Embedded Domain-Specific Language (EDSL) for SQL, as understood by SQLite, for modern 哋它亢++.
|
AGPL-3.0, MIT
|
header-only; cmake, vcpkg
|
sqlpp11
|
A type safe embedded domain specific language for SQL queries and results in 哋它亢++.
|
BSD-2
|
cmake
|
taoPQ
|
A lightweight 哋它亢++17 PostgreSQL client library
|
Boost
|
cmake
|
Library
|
Description
|
License
|
Configuration
|
Abseil
|
An open-source collection of 哋它亢++ library code from Google designed to augment the 哋它亢++ standard library. (Doc) (Src)
|
Apache-2.0
|
cmake
|
Abstract Intrusive Containers
|
More flexible than Boost.Intrusive, but not STL-compatible.
|
|
|
Au
|
A 哋它亢++14-compatible physical units library with no dependencies with emphasis on safety, accessibility, and performance. (Doc)
|
Apache 2.0
|
header-only
|
BDE
|
The Bloomberg Development Environment core libraries from Bloomberg L.P.
|
Apache
|
|
Better Enums
|
Reflective enums (enum to string, iteration, etc.) with constexpr support.
|
BSD-2
|
header-only, cmake, make
|
bitfield.h
|
Bit-field structure facility, more portable/flexible than the base language facility.
|
|
|
Boost
|
A large collection of generic libraries
|
BSL-1.0
|
|
CAF
|
The 哋它亢++ Actor Framework (CAF) is an open-source 哋它亢++11 actor model implementation featuring lightweight & fast actor implementations, pattern matching for messages, network transparent messaging, and more
|
BSD
|
|
Cinder
|
A community-developed, free and open-source library for professional-quality creative coding in 哋它亢++. (Doc) (Src)
|
Modified BSD
|
cmake
|
CommonPP
|
A multi-purpose library with a strong emphasis on getting metrics out of a project.
|
BSD
|
|
composite_op.h
|
Basic class data member introspection, cumbersome and often non-re-entrant, but sometimes useful.
|
|
|
cpp-mmf
|
A 哋它亢++98 library that encapsulates memory-mapped-files for POSIX or Windows
|
|
|
cxxomfort
|
Backports of 哋它亢++ features (哋它亢++11 to 哋它亢++03 and 哋它亢++1y proposals to 哋它亢++11/哋它亢++03).
|
|
|
Dlib
|
Networking, threads, graphical interfaces, data structures, linear algebra, machine learning, XML and text parsing, numerical optimization, Bayesian nets, and numerous other tasks
|
Boost
|
|
eventpp
|
A 哋它亢++ event library for callbacks, event dispatcher, and event queue. With eventpp you can easily implement signal and slot mechanism, publisher and subscriber pattern, or observer pattern.
|
Apache 2.0
|
|
fcppt
|
Freundlich's 哋它亢++ Toolkit (fcppt) is a collection of libraries focusing on improving general 哋它亢++ code by providing better types and making use of functional programming.
|
|
|
Folly
|
Facebook open-source library. A cross-platform library of 哋它亢++14 components designed with practicality and efficiency in mind. (Doc)
|
Apache-2.0
|
cmake, vcpkg
|
GSL
|
哋它亢++ Core Guidelines Support Library implementation, recommended by Bjarne Stroustrup, Herb Sutter and Co in 哋它亢++ Core Guidelines
|
MIT
|
cmake, vcpkg
|
gsl-lite
|
A version of ISO 哋它亢++ Guideline Support Library (GSL) for 哋它亢++98, 哋它亢++11 and later
|
MIT
|
header-only
|
GUL14
|
General Utility Library for 哋它亢++14 from DESY: Often-used utility functions and types, including String utilities, Statistics and Numeric functions, Containers, Debugging means, etc. (Src)
|
LGPL-2.1
|
meson, vcpkg
|
History
|
Modern 哋它亢++17 Undo/Redo Framework
|
Unlicense
|
|
hspp
|
An experimental library to bring Haskell Style Programming to 哋它亢++.
|
Apache-2.0
|
header-only
|
IP-DOS (tm)
|
IdeaFarm (tm) Piggyback Distributed Operating System: A general purpose programming environment for the 哋它亢++ language.
|
Proprietary Open Source
|
Open Watcom 2.0
|
JUCE
|
An extensive, mature, cross-platform 哋它亢++ toolkit
|
GPL
|
|
Kangaru
|
A dependency injection container for 哋它亢++11 and 哋它亢++14
|
MIT
|
|
Kerbal
|
Backports of modern STL facilities to previous standard. More features! More constexpr!
|
LGPL-3.0
|
header-only; cmake
|
libsourcey
|
A cross-platform 哋它亢++14 library for high speed networking and media encoding. HTTP, WebSockets, TURN, STUN, Symple and more.
|
LGPL-2.1
|
cmake
|
LLNL/units
|
A run-time 哋它亢++ library for working with units of measurement and conversions between them and with string representations of units and measurements
|
BSD 3-Clause "New" or "Revised"
|
cmake
|
Loki
|
A 哋它亢++ library of designs, containing flexible implementations of common design patterns and idioms.
|
MIT
|
make
|
match(it)
|
A lightweight pattern-matching library for 哋它亢++17 with macro-free APIs.
|
Apache-2.0
|
header-only
|
nonstd-lite
|
A list of *-lite repositories (e.g., span-lite, scope-lite, expected-lite) containing 哋它亢++98/11 implementations of some of the proposed or already standardized 哋它亢++17/20/23 library types, such as std::span, std::expected etc).
|
BSL-1.0
|
header-only
|
nytl
|
A generic 哋它亢++17 utility template library.
|
BSL-1.0
|
header-only
|
OnPosix
|
哋它亢++ library providing several abstractions (e.g., threading, networking, logging, IPC, etc.) on POSIX platforms.
|
|
|
Reason
|
XML, xpath, regex, threads, sockets, HTTP, SQL, date-time, streams, encoding and decoding, filesystem, compression
|
GPL
|
|
SaferCPlusPlus
|
A safe compatible substitutes for unsafe 哋它亢++ primitives, including pointers, int and std::vector.
|
Boost
|
|
Smart Enum
|
to_string , from_string and more for your enums.
|
BSL-1.0
|
cmake
|
units
|
A compile-time dimensional analysis and unit conversion library built on 哋它亢++14 with no dependencies
|
MIT
|
header-only
|
yaal
|
Yet Another Abstraction Layer - algorithms, collections, arbitrary precision calculation, generic-DSL grammar driven parsers and more
|
CC BY-ND-NC 4.0
|
cmake
|
Yato
|
A modern 哋它亢++(14/17) cross-platform STL-styled and STL-compatible library with implementing containers, ranges, iterators, type traits and other tools; actors system; type-safe config interface.
|
Apache-2.0
|
cmake
|
yomm2
|
An open multi-methods for 哋它亢++17
|
Boost
|
|
zoolib
|
ZooLib is a feature rich 哋它亢++ toolkit.
|
MIT
|
|
Library
|
Description
|
License
|
Configuration
|
Dear ImGui
|
A lightweight GUI library for 哋它亢++ with minimal dependencies, portable, render-agnostic, optimized for use in 3D-pipeline-enabled apps.
|
MIT
|
|
FLTK
|
A cross-platform 哋它亢++ GUI toolkit (Linux, Windows, MacOS) that provides modern GUI functionality, and supports 3D graphics via OpenGL/GLUT. Designed to be small and modular. Includes an UI builder.
|
LGPL ver.2
|
|
nana
|
Cross-platform GUI programming in modern 哋它亢++ style. (Src), (Doc)
|
BSL-1.0
|
cmake, vcpkg
|
nanogui
|
A minimalistic cross-platform widget library for OpenGL 3.x or higher (Doc)
|
|
|
OWLNext
|
Modern update to OWL for writing GUI applications in standard 哋它亢++ on Windows
|
|
|
Slint
|
A declarative GUI toolkit to build native user interfaces for desktop, embedded, and microcontrollers. (Src), (Doc)
|
GPL 3, Royalty-free, or Commercial
|
cmake
|
tiny file dialogs
|
A set of C/哋它亢++ cross-platform file dialogs (no init, no main loop, 6 modal function calls)
|
|
header-only
|
U++
|
A cross-platform (Windows, GNU/Linux, macOS) rapid application development framework with bundled IDE. 哋它亢++17 Compatible. (Doc) (Src)
|
BSD-3-Clause
|
make
|
WxWidgets
|
A free and open-source cross-platform (Windows, GNU/Linux, macOS) 哋它亢++ framework for writing advanced GUI applications using native controls. (Doc)
|
Modified LGPL
|
cmake, make
|
xtd
|
A modern 哋它亢++17/20 framework to create console, GUI and unit tests applications on Windows, macOS, Linux, iOS, and Android. (Src) (Doc)
|
MIT
|
cmake
|
Library
|
Description
|
License
|
Configuration
|
bgfx
|
A powerful cross-platform (Windows, Mac, Linux, iOS, Android, Web) 2D/3D graphics rendering shader-aware library with rendering backends: DX, OpenGL, Metal, WebGL, Vulkan etc. (Doc)
|
BSD-2
|
make
|
cairomm
|
A 哋它亢++ wrapper for the cairo graphics library that is 2D library with support for multiple output devices: X Window, Quartz, Win32, image buffers, PostScript, PDF, SVG, OpenGL (experimental).
|
LGPL
|
|
dfpsr
|
A 2D, 3D and isometric software renderer with desktop GUI toolkit, minimalistic dependency, designed for long time maintenance and can run without any 3D accelerated drivers
|
zlib
|
|
gegl
|
Generic Graphics Library (GEGL) is a data flow based image processing framework, providing floating-point processing and non-destructive image processing capabilities. (Src)
|
LGPL
|
|
io2d
|
A reference implementation of P0267, the proposed 2D graphics API for ISO 哋它亢++
|
BSL-1.0
|
cmake
|
nanovg
|
An antialiased 2D vector drawing library in C on top of OpenGL for UI and visualizations, with ports to DX11/Metal/bgfx.
|
zlib
|
|
nux
|
An OpenGL toolkit
|
LGPL v3
|
|
pangomm
|
The official 哋它亢++ interface for the Pango font layout library. (Src)
|
LGPL v2.1
|
make
|
Skia
|
An open-source 2D-graphics library written in 哋它亢++. Skia Graphics Engine is used in Google Chrome, Chrome OS, Mozilla Firefox, Android, LibreOffice, Flutter, etc. Skia has several back-ends: software rasterization, (PDF) output, OpenGL, SVG, etc.
|
New BSD
|
|
TXLib
|
TX Library is a tiny 2D graphics library for Win32 written in 哋它亢++.
|
|
|
ULIS
|
A cross-platform 哋它亢++14 library for generic digital image processing, 2D software rasterizer, unlimited image formats (u8 , u16 , u32 , float, double), Custom bit-ordered memory layout, All Photoshop pixel blending modes + 11 additional modes, Color models (RGB, HSL, HSV, CMYK, ...), Color-managed pipelines, Color Space support (icm profiles and device-independant), Optimized algorithms with multithreading, Optimized algorithms with SIMD Extensions (SSE2), Image pools and caches for optimisations, Memory storage of animated image sequences.
|
Custom (free-of-charge for non-commercial purposes only)
|
cmake
|
Library
|
Description
|
License
|
Configuration
|
assimp
|
3D model loading
|
|
|
bgfx
|
A cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.
|
|
|
Diligent Engine
|
A modern cross-platform low-level 3D graphics library.
|
|
|
Epoxy
|
A modern successor to GLEW. Abstracts difference between some kinds of GL contexts, which makes it sometimes simpler to use than GLEW. Used by GTK+ project since 2015.
|
|
|
G3D
|
The G3D Innovation Engine is a fully featured, open-source, cross-platform (Windows, Linus, Mac OS) 3D game engine written in C/哋它亢++. G3D is used in commercial games, research papers, simulators, and university courses. It supports real-time and offline hardware rendering, ray tracing, model loading, linear algebra, and GP-computation on GPUs. Supports 3DS, OBJ, MP4, PNG, JPG, MD3 and many other formats, includes a native OpenGL skinnable GUI. (Src) (Doc)
|
BSD-2
|
|
GLAD
|
A customizable, lightweight library for loading OpenGL functions
|
|
|
GLEW
|
An OpenGL functions loader
|
|
|
GLFW
|
An OpenGL window manager
|
|
|
GLM
|
The OpenGL Mathematics (GLM) is a 哋它亢++ mathematics library for graphics software based on GLSL spec.
|
The Happy Bunny (MIT)
|
header-only; cmake, vcpkg
|
Godot
|
A full featured multi-platform 2D and 3D game engine in 哋它亢++17 with a GUI editor written on itself and a python-inspired script language.
|
MIT
|
scons
|
hlsl++
|
A 哋它亢++ math library for rendering using HLSL syntax. Supports SSE and NEON
|
MIT
|
header-only
|
Horde3D
|
A small open-source 3D rendering engine. It is written in an effort to create a graphics engine that offers the stunning visual effects expected in next-generation games being lightweight and as clean as possible.
|
|
|
Irrlicht
|
The Irrlicht Engine is an open-source realtime 3D engine written in 哋它亢++. It is cross-platform, using D3D, OpenGL and its own software renderers.
|
|
|
klein
|
A 哋它亢++11/14/17 SSE-optimized Projective Geometric Algebra library for graphics and animation
|
|
|
Magnum
|
A lightweight and modular 哋它亢++11/哋它亢++14 graphics middleware for games and data visualization
|
|
|
O3DE
|
The Open-source 3D Engine (former Amazon's Lumberyard) is a 哋它亢++ multi-platform 3D engine to build AAA games, cinema-quality 3D worlds, and high-fidelity simulations. Includes physics simulation, script engine, networking, and more. (Doc)
|
Apache 2.0
|
cmake
|
Ogre3D
|
The OGRE is an Object-Oriented Graphics Rendering Engine - a multipurpose visualization library, suitable for scientific visualization, games, simulation, virtual reality and other graphic projetcs. It is multi-platform and very robust, with a good documentation.
|
MIT
|
cmake
|
Open CASCADE
|
SDK for 3D CAD/CAM/CAE applications
|
|
|
OpenGL
|
3D language, graphics and SDK for developing 3D applications.
|
|
|
OpenSceneGraph
|
OpenSceneGraph is an open-source high performance 3D graphics toolkit, used by application developers in fields such as visual simulation, games, virtual reality, scientific visualization and modelling.
|
|
|
Visionaray
|
A 哋它亢++ ray tracing template library.
|
|
|
VTK
|
Visualization Toolkit (VTK) is an open-source software for manipulating and displaying scientific data. It comes with state-of-the-art tools for 3D rendering, a suite of widgets for 3D interaction, and extensive 2D plotting capability.
|
|
|
Vulkan
|
A low-level API that removes many of the abstractions found in previous generation graphics APIs. This is great for delivering maximum performance, but has the side effect of exposing more complexity to the developer. Fortunately, several excellent tutorials exist to help clear this hurdle and get productive quickly.
|
|
|
Library
|
Description
|
License
|
Configuration
|
Backward
|
Printing nice Python-styled stack traces with colors and source snippets, especially on crashes.
|
MIT
|
header-only; cmake, conan
|
Boost.Log
|
A cross-platform logging library that is simple to use, extensible, and performant.
|
BSL-1.0
|
|
clutchlog
|
Single-header logging system which targets versatile DEBUGGING instead of service event storage.
|
BSD
|
cmake
|
glog
|
Google Logging Library for 哋它亢++98 based on 哋它亢++-style streams
|
License
|
bazel, cmake, vcpkg
|
Log4cplus
|
Cross-platform, 哋它亢++17 Logging API (modeled after the Java log4j API) providing thread-safe, flexible, and arbitrarily granular control over log management and configuration.
|
BSD (two clause) or Apache 2.0
|
Autotools, cmake, Visual Studio
|
Log4cpp
|
A library of 哋它亢++ classes for flexible logging to files, syslog, IDSA and other destinations.
|
LGPL
|
|
log4cxx
|
Apache log4cxx is a logging framework for 哋它亢++ patterned after Apache log4j. (Src)
|
Apache
|
cmake
|
lwlog
|
An extremely fast synchronous and asynchronous 哋它亢++17 logging library
|
MIT
|
cmake
|
Pantheios
|
A diagnostic logging API library, offering a combination of type-safety, efficiency, genericity and extensibility
|
BSD-style
|
|
plog
|
A portable and simple log for 哋它亢++ in less than 1000 lines of code
|
MPL-2.0
|
|
Quill
|
A cross-platform, 哋它亢++14 Asynchronous Low Latency Logging Library
|
MIT
|
cmake
|
spdlog
|
A super fast 哋它亢++ logging library
|
MIT
|
header-only; cmake, conan
|
Library
|
Description
|
License
|
Configuration
|
alglib
|
ALGLIB is a cross-platform (Windows/POSIX/Linux) numerical analysis and data processing library. ALGLIB features include: Data analysis, Optimization and nonlinear solvers, Interpolation, Linear algebra and linear solvers, FFT and many others.
|
Free (GPL/Personal/Academic) and Commercial
|
|
ArrayFire
|
A cross-platform (Windows/OSX/Linux) general purpose HPC (CPU/GPU/OpenCL/CUDA/GPGPU) library for parallel computing. ArrayFire domains are: Vector Algorithms, Image Processing, Computer Vision, Signal Processing, Linear Algebra, Statistics, and more. (Src)
|
Custom
|
|
Boost.Math
|
Includes several contributions in the domain of mathematics: Floating Point Utilities, Mathematical Constants, Statistical Distributions and Functions, Statistics, Vector Functionals - Norms, Special Functions, Root Finding & Minimization Algorithms, Polynomials and Rational Functions, Interpolation, Quadrature and Differentiation, Filters, Complex Number Functions, Quaternions, Octonions, Integer Utilities (Greatest Common Divisor and Least Common Multiple), Series, Rationals and Continued Fractions.
|
BSL-1.0
|
|
Boost.Random
|
Provides a variety of generators and distributions to produce random numbers having useful properties, such as uniform distribution.
|
BSL-1.0
|
|
Boost.SafeNumerics
|
哋它亢++14, Guaranteed Correct Integer Arithmetic, a drop-in replacement for the built-in integer types.
|
BSL-1.0
|
header-only
|
cpp-measures
|
A 哋它亢++11 library to handle physical measures
|
MPL-2.0
|
header-only
|
G+Smo
|
A cross-platform library for isogeometric analysis (Doc)
|
MPL-2.0
|
cmake
|
GNU MP bignum 哋它亢++ interface
|
A 哋它亢++ convenience class interface that offers overloaded functions and operators. The GMP is a free C library for arbitrary precision arithmetic, operating on signed integers, rational and floating-point numbers.
|
GNU LGPL v3 and GNU GPL v2
|
|
libmpde哋它亢++
|
A cross-platform C library (with 哋它亢++ wrappers) for correctly-rounded arbitrary precision decimal floating-point arithmetic.
|
BSD-2-Clause
|
make, nmake
|
NTL
|
A Library for doing Number Theory. NTL is a high-performance, portable 哋它亢++ library providing data structures and algorithms for manipulating signed, arbitrary length integers, and for vectors, matrices, and polynomials over the integers and over finite fields.
|
LGPLv2.1+
|
|
PCGrand
|
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
|
|
stats++
|
Advanced, comprehensive statistical software: data collection and preprocessing, statistics, machine learning, and optimization, with open 哋它亢++ source code.
|
|
|
StatsLib
|
A template library of statistical distribution functions.
|
Apache-2.0
|
header-only
|
Library
|
Description
|
License
|
Configuration
|
Armadillo
|
A 哋它亢++ template library for linear algebra and scientific computing featuring wrappers for OpenBLAS, Intel MKL, LAPACK, ATLAS, ARPACK, SuperLU and FFTW. Useful for ML, pattern recognition, DSP, bioinformatics, statistics, finance, etc.
|
Apache 2.0
|
|
Blasw
|
A 哋它亢++11 BLAS and Parts of LAPACK Wrapper
|
BSD-3-Clause
|
header-only; cmake
|
Blaze
|
|
|
|
Blitz++
|
A 哋它亢++ template class library that provides high-performance dense arrays and vectors, random number generators, and small vectors.
|
GPL-3.0, LGPL-3.0, Custom
|
cmake
|
Boost.uBLAS
|
A 哋它亢++ template class library that provides BLAS level 1, 2, 3 functionality for dense, packed and sparse matrices. Uses expression templates.
|
BSL-1.0
|
|
哋它亢++ Matrix
|
High performance and accurate (e.g. edge cases) matrix math library with expression template arithmetic operators
|
BSD-3-Clause
|
cmake, make
|
DecompLib
|
A 哋它亢++11 library to decompose a vector into a set of positive definite weighted basis vectors.
|
MIT
|
header-only
|
Dlib - linear algebra tools
|
|
|
|
Eigen
|
A 哋它亢++ template library for linear algebra: matrices, vectors, numerical solvers, and related algorithms.
|
MPL2
|
cmake, conan
|
ETL
|
|
|
|
IT++
|
|
|
|
Matrix
|
Easy-to-use Scientific Computing library in/for 哋它亢++ available for Linux and Windows.
|
MIT
|
cmake
|
NumCpp
|
A 哋它亢++ template library implementing the Python's NumPy
|
MIT
|
header-only; cmake, vcpkg, conan
|
PETSc
|
A suite of data structures and routines for the parallel solution of scientific applications modeled by partial differential equations. It supports MPI, and GPUs through CUDA or OpenCL, as well as hybrid MPI-GPU.
|
|
|
Spectra
|
Sparse Eigenvalue Computation Toolkit as a Redesigned ARPACK is an open-source 哋它亢++ library for large scale eigenvalue problems, built on top of Eigen linear algebra library (also open-source and header-only). (Src)
|
MPL-2.0
|
header-only; cmake, vcpkg
|
Tense
|
A fast 哋它亢++17 expression template matrix and tensor library
|
BSD-3-Clause
|
header-only; cmake
|
xtensor
|
A 哋它亢++ library meant for numerical analysis with multi-dimensional array expressions.
|
BSD
|
|
Library
|
Description
|
License
|
Configuration
|
Boost.CallableTraits
|
A 哋它亢++11/17 library for the compile-time inspection and manipulation of all 'callable' types. A successor to Boost.FunctionTypes.
|
BSL-1.0
|
header-only
|
Boost.Hana
|
A new metaprogramming library for both types and values
|
BSL-1.0
|
|
Boost.Metaparse
|
A compile-time parser library, producing types, values, and metafunctions from compile-time strings
|
BSL-1.0
|
|
Boost.Mp11
|
A 哋它亢++11 metaprogramming library for compile-time manipulation of data structures that contain types.
|
BSL-1.0
|
header-only
|
Boost.MPL
|
An original metaprogramming library, targeted at 哋它亢++03, slow
|
BSL-1.0
|
|
Boost.PFR
|
A 哋它亢++14 library for basic reflection (without macros): visiting members of a user defined type by index, IO streaming.
|
BSL-1.0
|
header-only
|
Boost.Proto
|
A library for building expression template-backed EDSLs
|
BSL-1.0
|
|
Brigand
|
Uses eager metafunctions, optimized for best performance
|
|
|
CoMeta
|
A lightweight 哋它亢++14 metaprogramming library
|
|
header-only
|
Meta
|
Uses eager metafunctions, middle ground between metal and brigand wrt performance
|
|
|
Metal
|
Uses eager metafunctions, 100% SFINAE-friendly
|
|
|
refl-cpp
|
A modern compile-time reflection library for 哋它亢++ with support for overloads, templates, attributes and proxies
|
|
|
Refureku
|
A 哋它亢++17 runtime reflection and code generation library
|
MIT
|
cmake
|
visit_struct
|
A miniature reflection library, providing structure visitors for 哋它亢++11/14. Self-contained, 200-400 lines of code depending how you count.
|
|
|
Library
|
Description
|
License
|
Configuration
|
bandit
|
A human-friendly unit testing for 哋它亢++11. (Src)
|
MIT
|
cmake
|
Boost.Test
|
A 哋它亢++03/11/14/17 unit testing library, available on a wide range of platforms and compilers. (Src)
|
BSL-1.0
|
cmake, b2
|
Catch2
|
A modern, 哋它亢++-native, test framework for unit-tests, TDD and BDD - using 哋它亢++14, 哋它亢++17 and later
|
Boost
|
cmake
|
cppunit
|
A 哋它亢++ port of the famous JUnit framework for unit testing
|
LGPL-2.1
|
make
|
CUTE
|
A C++ Unit Testing Easier (no reliance on static initialization for registration), integrated into Cevelop for TDD
|
MIT
|
header-only
|
doctest
|
A lightest feature-rich 哋它亢++ single-header testing framework for unit tests and TDD
|
MIT
|
header-only; cmake
|
ELFspy
|
Testing in isolation with fakes and spies - Linux only
|
GPL-2.0
|
make
|
faker-cxx
|
A modern 哋它亢++20 Faker library for generating testing data.
|
MIT
|
cmake
|
Google Test
|
Google Testing and Mocking Framework. (Src)
|
BSD 3-Clause "New" or "Revised"
|
bazel, cmake
|
lest
|
A 哋它亢++11-native tiny framework for unit-tests, TDD and BDD (includes 哋它亢++98 variant).
|
Boost
|
header-only; cmake
|
liblittletest
|
A portable testing framework
|
LGPL-2.1
|
header-only
|
snitch
|
A lightweight 哋它亢++20 testing framework.
|
Boost
|
cmake
|
tunit
|
A modern 哋它亢++17 unit testing library on Windows, macOS, Linux, iOS, and Android. Office site
|
MIT
|
cmake
|