Skip to content
94

Awesome C++

A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.

74k stars8,350 forks1,358 entriesLast push Sep 29, 2026 (yesterday)License MIT

This page lists names, links and short descriptions. The original list on GitHub is the source and belongs to its authors.

Standard Libraries

C++ Standard Library

A collection of classes and functions, which are written in the core language and part of the C++ ISO Standard itself.

In 2 lists

Standard Template Library

The Standard Template Library (STL).

In 2 lists

C POSIX library

A specification of a C standard library for POSIX systems.

In 2 lists

ISO C++ Standards Committee

ISO/IEC JTC1/SC22/WG21 - The C++ Standards Committee. website

In 2 lists

The GNU C Library

The purpose of this manual is to tell you how to use the facilities of the GNU C Library.

In 2 lists

Frameworks

abseil-cpp

Abseil C++ Common Libraries. [Apache2]

In 5 listsDetails

Apache C++ Standard Library

STDCXX, A collection of algorithms, containers, iterators, and other fundamental components. [retired] [Apache2]

APR

Apache Portable Runtime. Another library of cross-platform utility functions. [Apache2]

ASL

Adobe Source Libraries provides peer-reviewed and portable C++ source libraries. [MIT]

AUI

Declarative UI toolkit for C++20. [MPL2]

In 2 lists

Boost

zap: - A large collection of generic C++ libraries. [Boost] website

In 3 lists

BDE

The BDE Development Environment from Bloomberg Labs. [Apache2]

In 3 lists

C++ Workflow

zap: - C++ Parallel Computing and Asynchronous Networking Engine. [Apache2]

In 6 listsDetails

CGraph

A cross-platform DAG framework based on C++ without any 3rd-party. [MIT]

In 3 lists

Cinder

A community-developed, free and open source library for professional-quality creative coding. [BSD]

In 5 listsDetails

Coost

A lightweight, dependency-free C++ library with go-style coroutines, logging, config and other utilities. [MIT]

In 2 lists

Cxxomfort

A small, header-only library that backports various facilities from more recent C++ Standards to C++03 and later. [MIT]

Dlib

zap: - A toolkit for making real world machine learning and data analysis applications in C++. [Boost] website

In 7 listsDetails

EASTL

Electronic Arts Standard Template Library. [BSD]

In 5 listsDetails

ETL

Embedded Template Library. [MIT]

In 4 listsDetails

ffead-cpp

Framework for Enterprise Application Development. [Apache2]

In 2 lists

Folly

An open-source C++ library developed and used at Facebook. [Apache2]

In 4 listsDetails

FunctionalPlus

Functional Programming Library for C++. Write concise and readable C++ code. [MIT]

In 4 listsDetails

GLib

GLib provides the core application building blocks for libraries and applications written in C. [LGPL]

In 3 lists

itlib

A collection of std-like single-header C++ libraries [MIT]

In 3 lists

JUCE

An all-encompassing C++ class library for developing cross-platform software. [Core-Module: ISC, Rest: GPL2/GPL3/Proprietary] website

Kigs framework

A free and open source C++ modular multi-purpose cross platform RAD framework. [MIT] website

In 2 lists

libPhenom

libPhenom is an eventing framework for building high performance and high scalability systems in C. [Apache2]

In 2 lists

LibSourcey

C++11 evented IO for real-time video streaming and high performance networking applications. [LGPL]

In 2 lists

LibU

A multiplatform utility library written in C. [BSD]

libxutils

Simple and yet powerful cross-platform C library providing data structures, algorithms and much more. [MIT]

Loki

A C++ library of designs, containing flexible implementations of common design patterns and idioms. [MIT]

micron.cpp

A pure C++ implementation (& redesign) of libc and the Standard Library. [Boost/MIT]

MiLi

Minimal headers-only C++ Library. [Boost]

In 2 lists

OpenFrameworks

A cross platform open source toolkit for creative coding in C++. [MIT] website

In 3 lists

PhotonLibOS

A comprehensive C++ framework featuring efficient user-space threading (coroutine with work-stealing), I/O, networking, RPC, HTTP, etc., and used extensively in Alibaba. It is compatible with C++ 14/17/20/23, Linux, MacOS, x86-64, ARM64, gcc and clang. [Apache2] website

In 2 lists

Qt

zap: - A cross-platform application and UI framework. [GPL/LGPL/Proprietary] website

In 3 lists

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

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]

In 2 lists

rpp

Minimal Rust-inspired C++20 STL replacement. [MIT]

SaneCppLibraries

a set of C++ platform abstraction libraries for macOS, Windows and Linux. [MIT] website

In 2 lists

Seastar

An advanced, open-source C++ framework for high-performance server applications on modern hardware. [Apache-2.0 License] seastar.io

In 3 lists

sfl library

a header-only C++11 library that provides several new or lesser-known containers, some of which can be used in C++20 constant expressions. [zlib]

In 3 lists

Siv3D

Siv3D (OpenSiv3D) is a C++20 framework for creative coding (2D/3D games, media art, visualizers, and simulators). [MIT] website

In 2 lists

STLport

An exemplary version of STL. [Free]

STXXL

Standard Template Library for Extra Large Data Sets. [Boost]

tbox

A glib-like multi-platform c library. [Apache2] website

In 2 lists

Ultimate++

A C++ cross-platform rapid application development framework. [BSD]

Windows Template Library

A C++ library for developing Windows applications and UI components. [Public]

WUI

WUI (Window User Interface Library) is a cross-platform library for creating graphical user interfaces in C++17+ [Boost]website

xtd

Modern C++20 framework to create console (CLI), forms (GUI) and unit tests (xUnit) applications on Windows, macOS, Linux, iOS, Android, FreeBSD and Haiku. [MIT]

Yomm2

Fast, Orthogonal, Open multi-methods. Supersedes Yomm11 [Boost]

YUP!

The modern framework optimized for realtime audio and GPU-native creative software [ISC]

In 2 lists

Artificial Intelligence

ANNetGPGPU

A GPU (CUDA) based Artificial Neural Network library. [LGPL]

In 2 lists

btsk

Game Behavior Tree Starter Kit. [zlib]

In 2 lists

cpp-mcp

Lightweight C++ MCP (Model Context Protocol) SDK. [MIT]

Evolving Objects

A template-based, ANSI-C++ evolutionary computation library which helps you to write your own stochastic optimization algorithms insanely fast. [LGPL]

fastmcpp

C++ port of the fastmcp Python library. [Apache2]

frugally-deep

Header-only library for using Keras models in C++. [MIT]

In 4 listsDetails

Genann

Simple neural network library in C. [zlib]

In 3 lists

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

In 5 listsDetails

PyTorch

Tensors and Dynamic neural networks in Python with strong GPU acceleration. website

In 16 listsDetails

flashlight

Flashlight is a fast, flexible machine learning library written entirely in C++. [BSD]

In 4 listsDetails

Recast/Detour

(3D) Navigation mesh generator and pathfinder, mostly for games. [zlib]

In 8 listsDetails

TensorFlow

An open source software library for numerical computation using data flow graphs. [Apache]

In 23 listsDetails

Txeo

A modern C++ wrapper for TensorFlow. [Apache]

In 3 lists

oneDNN

An open-source cross-platform performance library for deep learning applications. [Apache] website

In 3 lists

CNTK

Microsoft Cognitive Toolkit (CNTK), an open source deep-learning toolkit. [Boost]

In 6 listsDetails

tiny-dnn

A header only, dependency-free deep learning framework in C++11. [BSD]

In 5 listsDetails

Veles

Distributed platform for rapid Deep learning application development. [Apache]

In 4 listsDetails

Kaldi

Toolkit for speech recognition. [Apache]

In 5 listsDetails

Asynchronous Event Loop

Asio

A cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. [Boost] website

In 4 listsDetails

Boost.Asio

A cross-platform C++ library for network and low-level I/O programming. [Boost] website

In 2 lists

C++ Actor Framework

An Open Source Implementation of the Actor Model in C++. [BSD-3-Clause] website

In 3 lists

Ichor

An event queue which focuses on thread safety and provides dependency injection. [MIT]

libev

A full-featured and high-performance event loop that is loosely modelled after libevent, but without its limitations and bugs. [BSD and GPL]

libevent

An event notification library. [BSD]

libhv

Cross-platform event loop library. [BSD]

In 4 listsDetails

libuv

Cross-platform asynchronous I/O. [BSD]

In 4 listsDetails

promise-cpp

Header only library that implements Promise/A+ standard. [Anti-996]

uvw

C++ wrapper for libuv. [MIT]

In 4 listsDetails

uv-cpp

a simple interface, high-performance network library based on C++11. [MIT]

Audio

Amplitude Audio SDK

A cross-platform audio engine designed with the needs of games in mind. [Apache-2.0] website

In 3 lists

Aubio

A library for audio and music analysis.[GPL-3.0] website

In 6 listsDetails

AudioFile

A simple C++ library for reading and writing audio files. [MIT]

In 2 lists

audioFlux

A C library for audio and music analysis, feature extraction. [MIT]

In 6 listsDetails

dr_libs

Single file audio decoding libraries for C and C++. [Unlicense]

In 4 listsDetails

FMOD

An easy to use crossplatform audio engine and audio content creation tool for games. [Free for non-commercial/Commercial]

KFR

Fast, modern C++ DSP framework, FFT, FIR/IIR filters, Sample Rate Conversion. [GPL/Proprietary]

In 3 lists

LAME

LAME is a high quality MPEG Audio Layer III (MP3) encoder. [LGPL]

In 2 lists

libsndfile

C library with C++ wrapper for reading and writing files containing sampled sound through one standard library interface. [LGPL-2.1] website

In 2 lists

libsoundio

C library for cross-platform real-time audio input and output. [MIT] website

In 3 lists

Maximilian

C++ Audio and Music DSP Library. [MIT]

In 3 lists

OpenAL

Open Audio Library - A crossplatform audio API. [BSD/LGPL/Proprietary]

miniaudio

Single file audio playback and capture library. [Unlicense] website

In 5 listsDetails

ni-media

C++ library for reading and writing audio files. [MIT]

In 2 lists

Opus

A totally open, royalty-free, highly versatile audio codec. [BSD]

In 2 lists

PortAudio

PortAudio is a free, cross-platform, open-source, audio I/O library. [MIT]

rnnoise

Recurrent neural network for audio noise reduction. [BSD-3-Clause]

In 4 listsDetails

SELA

SimplE Lossless Audio. [MIT]

In 2 lists

SoLoud

Easy, portable audio engine for games. [zlib]

In 4 listsDetails

Speex

A free codec for free speech. Obsoleted by Opus. [BSD]

Tonic

Easy and efficient audio synthesis in C++. [Unlicense]

In 2 lists

Vorbis

Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format. [BSD]

minimp3

Public domain, header-only MP3 decoder with clean-room implementation. [CC0]

In 4 listsDetails

Verovio

Verovio is a fast and lightweight music notation engraving library. [LGPL] website

In 3 lists

Wav2Letter++

Public domain, a fast open source speech processing toolkit written entirely in C++ and uses the ArrayFire tensor library and the flashlight machine learning library for maximum efficiency. [BSD]

In 3 lists

PocketSphinx

A lightweight speech recognition engine. [BSD-2-Clause] website

In 2 lists

Biology

BioC++

C++ Computational Libraries for Bioinformatics. [BSD]

Chaste

An open source C++ library for the computational simulation of mathematical models developed for physiology and biology. [BSD]

libsequence

A C++ library for representing and analyzing population genetics data. [GPL]

SeqAn

Algorithms and data structures for the analysis of sequences with the focus on biological data. [BSD/3-clause]

Vcflib

A C++ library for parsing and manipulating VCF files. [MIT]

Wham

Structural variants (SVs) in Genomes by directly applying association tests to BAM files. [MIT]

htslib

A C library for reading/writing high-throughput sequencing data. [MIT/BSD] website

In 2 lists

BitTorrent

jech/dht

BitTorrent DHT library in C. [MIT]

libtorrent

(a.k.a. libtorrent-rasterbar) - An efficient feature complete C++ bittorrent implementation. [BSD]

In 2 lists

LibTorrent

(a.k.a. libtorrent-rakshasa) - BitTorrent library. [GPL]

libutp

uTorrent Transport Protocol library. [MIT]

Chemistry

d-SEAMS

A molecular dynamics trajectory analysis engine in C++ and Lua with Nix. It is an acronym for Deferred Structural Elucidation Analysis for Molecular Simulations. [GPL] website

gromacs

A message-passing parallel molecular dynamics implementation. [GPL] website

Reaktoro

A computational framework in C++ and Python for modeling chemically reactive systems. [LGPL] website

LAMMPS

A classical molecular dynamics code with a focus on materials modeling. It's an acronym for Large-scale Atomic/Molecular Massively Parallel Simulator. [GPL] website

MADNESS

Multiresolution Adaptive Numerical Environment for Scientific Simulation. [GPL] website

MPQC

The Massively Parallel Quantum Chemistry program, MPQC, computes properties of atoms and molecules from first principles using the time independent Schrödinger equation. [GPL] website

Psi

An ab initio computational chemistry package. [GPL] website

CLI

Argh!

A minimalist, frustration-free, header-only argument handler. [BSD]

In 3 lists

argparse

Argument Parser for Modern C++. [MIT]

In 3 lists

args

A simple header-only C++ argument parser library. [MIT]

In 5 listsDetails

Argy

Command-Line Argument Parsing Library for Modern C++ — Simple, Intuitive, and Header-only with Zero Dependencies [MIT]

barkeep

Small C++ header to display async animations, counters, and progress bars. [Apache-2.0] website

Boost.Program_options

A library to obtain program options via conventional methods such as command line and config file. [Boost] website

cli

A cross-platform header only C++14 library for interactive command line interfaces (Cisco style). [Boost]

In 2 lists

CLI11

Header only single or multi-file C++11 library for simple and advanced CLI parsing. [BSD]

In 5 listsDetails

clipp

Easy to use, powerful and expressive command line argument handling for C++11/14/17 contained in a single header file. [MIT]

In 4 listsDetails

cpp-terminal

Small header only C++ library for writing multiplatform terminal applications. [MIT]

Crossline

A small, self-contained, zero-config, MIT licensed, cross-platform, readline and libedit replacement. [MIT]

Ctrl+C

Crossplatform C++11 library to handle Ctrl+C event in custom functions. [MIT]

cxxopts

Lightweight C++ command line option parser. [MIT]

In 5 listsDetails

docopt.cpp

A library to generate option parser from docstring. [MIT/Boost]

In 3 lists

FINAL CUT

Library for creating terminal applications with text-based widgets. [LGPL]

FTXUI

C++ Functional Terminal User Interface. [MIT]

In 2 lists

gflags

Commandline flags module for C++. [BSD]

imtui

Immediate Mode Text-based User Interface. [MIT]

In 2 lists

indicators

Activity indicators for Modern C++. [MIT]

In 4 listsDetails

linenoise

A small self-contained alternative to readline and libedit. [BSD-2-Clause]

In 4 listsDetails

linenoise-ng

A small, portable GNU readline replacement for Linux, Windows and MacOS which is capable of handling UTF-8 characters. [BSD]

Lyra

A simple to use, composable, command line parser for C++ 11 and beyond. [Boost]

In 2 lists

Ncurses

A terminal user interface. [MIT]

oof

Convenient, high-performance RGB color and position control for console output. [MIT]

PDCurses

Public domain curses library with both source code and pre-compiled library available. [PublicDomain]

popl

A single-header templated command line arguments and ini file parser for C++ 11 and beyond. [MIT]

replxx

A readline and libedit replacement that supports UTF-8, syntax highlighting, hints, works on Unix and Windows. [BSD]

tabulate

Table Maker for Modern C++. [MIT]

In 4 listsDetails

TCLAP

A mature, stable and feature-rich library for defining and accessing command line arguments in ANSI C++. [MIT]

termbox

A C library for writing text-based user interfaces. [MIT]

In 2 lists

TermOx

C++17 Terminal User Interface(TUI) Library. [MIT]

tuibox

A single-header terminal UI (TUI) library, capable of creating mouse-driven, interactive applications on the command line. [MIT]

Ginseng

A C++ command-line argument parser. [MIT]

Compression

bit7z

A C++ static library offering a clean and simple interface to the 7-zip shared libraries. [MPL2]

Brotli

Brotli compression format. Developed by Google. [MIT]

In 2 lists

bzip2

A freely available, patent free, high-quality data compressor. [BSD]

bzip3

A better and stronger spiritual successor to BZip2. [LGPL]

FastLZ

Small & portable byte-aligned LZ77 compression. [MIT]

In 2 lists

FiniteStateEntropy

New generation entropy codecs : Finite State Entropy and Huff0.

In 3 lists

FSST

efficient random-access string compression. [MIT]

heatshrink

data compression library for embedded/real-time systems [ISC]

In 3 lists

Kanzi

a modern, modular, portable and efficient lossless data compressor implemented in C++. [Apache-2.0]

KArchive

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

Multi-format archive and compression library. [New BSD] website

In 3 lists

LZ4

Extremely Fast Compression algorithm. [BSD] website

In 2 lists

LZAV

Fast In-Memory Data Compression Algorithm. [MIT]

In 2 lists

LZFSE

LZFSE compression library and command line tool. Developed by Apple.

LZHAM

Lossless data compression library with a compression ratio similar to LZMA but with much faster decompression. [BSD]

LZMA

zap: - The default and general compression method of 7z format. [PublicDomain] website

LZMAT

An extremely fast real-time lossless data compression library. [GPL]

miniz

Single C source file Deflate/Inflate compression library with zlib-compatible API, ZIP archive reading/writing, PNG writing. [MIT]

In 5 listsDetails

Minizip

Zlib with latest bug fixes that supports PKWARE disk spanning, AES encryption, and IO buffering. [zlib]

minizip-ng

Fork of the popular zip manipulation library found in the zlib distribution. [zlib]

In 2 lists

misa77

Ridiculously fast decompression at good ratios. [MIT]

OpenZL

A novel data compression framework. [BSD] website

In 2 lists

PhysicsFS

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]

In 3 lists

Rapidgzip

Gzip Decompression and Random Access for Modern Multi-Core Machines. [Apache-2/MIT]

smaz

Small strings compression library. [BSD]

In 3 lists

Snappy

A fast compressor/decompressor. [BSD]

ZLib

A very compact compression library for data streams. [zlib]

zlib-ng

zlib for the "next generation" systems. Drop-In replacement with some serious optimizations. [zlib]

In 2 lists

zstd

Zstandard - Fast real-time compression algorithm. Developed by Facebook. [BSD]

In 2 lists

ZXC

High-performance asymmetric lossless compression. [BSD-3-Clause]

ZZIPlib

Provides read access on ZIP-archives. [MPL/LGPL]

cmix

A lossless data compression program that aims for the highest compression ratios at the cost of speed. [GPL-3.0]

LZSSE-SIMDe

A portable SIMD implementation of LZSSE compression. [BSD-2-Clause]

Zopfli

A compression library that performs very good but slow deflate/zlib compression. [Apache-2.0]

In 2 lists

Concurrency

alpaka

Abstraction library for parallel kernel acceleration. [LGPLv3+]

ArrayFire

A general purpose GPU library. [BSD]

In 4 listsDetails

Async++

A lightweight concurrency framework for C++11, inspired by the Microsoft PPL library and the N3428 C++ standard proposal. [MIT]

In 2 lists

atomic_queue

C++14 multiple-producer-multiple-consumer lock-free queues based on circular buffers and std::atomic. [MIT]

In 2 lists

Boost.Compute

A C++ GPU Computing Library for OpenCL. [Boost] website

In 2 lists

Bolt

A C++ template library optimized for GPUs. [Apache2]

BS::thread_pool

A fast, lightweight, and easy-to-use C++17 thread pool library [MIT]

In 2 lists

Channel

Thread-safe container for sharing data between threads. [MIT]

ck

Concurrency primitives, safe memory reclamation mechanisms and non-blocking data structures. [BSD]

In 2 lists

concurrentqueue

A fast multi-producer, multi-consumer lock-free concurrent queue for C++11. [BSD,Boost]

In 4 listsDetails

Coros

An easy-to-use and fast library for task-based parallelism, utilizing coroutines. [BSL-1.0]

CUB

CUB provides state-of-the-art, reusable software components for every layer of the CUDA programming mode. [New BSD]

cuda-api-wrappers

Lightweight, Modern-C++ wrappers for the CUDA GPU programming runtime API. [BSD]

cupla

C++ API to run CUDA/C++ on OpenMP, Threads, TBB, ... through Alpaka. [LGPLv3+]

C++React

A reactive programming library for C++11. [Boost]

dispenso

A high-performance C++ library for parallel programming with thread pools, parallel for loops, futures, task graphs, and concurrent containers. [MIT]

In 2 lists

FiberTaskingLib

Task-based multi-threading library that supports task graphs with arbitrary dependencies. [Apache]

In 2 lists

HPX

A general purpose C++ runtime system for parallel and distributed applications of any scale. [Boost]

In 2 lists

Intel Games Task Scheduler

A task scheduling framework designed for the needs of game developers. [MIT]

Intel Parallel STL

Intel® implementation of C++17 STL for C++11 and above. [Apache2]

Intel TBB

Intel® Threading Building Blocks. [Apache2]

In 2 lists

junction

A library of concurrent data structures in C++. [BSD]

In 2 lists

Kokkos

A performance portable programming model for parallel execution and memory abstraction. [BSD]

In 3 lists

libcds

A C++ library of Concurrent Data Structures. [BSD]

In 2 lists

Libclsph

An OpenCL based GPU accelerated SPH fluid simulation library. [MIT]

libdill

Introduces structured concurrency in C. [MIT]

In 2 lists

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

libfork

A bleeding-edge, lock-free, wait-free, continuation-stealing tasking library built on C++20's coroutines. [MPL-2.0] website

libmill

Introduces Go-style concurrency in C. [MIT]

In 3 lists

marl

Marl is a hybrid thread / fiber task scheduler written in C++ 11. [Apache-2.0]

In 2 lists

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

Optimized primitives for collective multi-GPU communication. [BSD]

In 2 lists

Neco

Concurrency library for C (coroutines). [MIT]

In 2 lists

OpenCL

The open standard for parallel programming of heterogeneous systems.

In 3 lists

OpenMP

The OpenMP API.

In 5 listsDetails

rotor

Event loop friendly C++ actor micro framework. [MIT]

SObjectizer

An implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework. [BSD-3-Clause]

Quantum

A powerful C++ coroutine dispatcher framework built on top of Boost.Coroutine2.

RaftLib

The RaftLib C++ library, streaming/dataflow concurrency via C++ iostream-like operators. [Apache2]

readerwriterqueue

A fast single-producer, single-consumer lock-free queue for C++. [BSD]

In 2 lists

stdgpu

Efficient STL-like Data Structures on the GPU. [Apache2]

Taskflow

A General-purpose Parallel and Heterogeneous Task Programming System. (renamed from Cpp-Taskflow) [MIT]

In 6 listsDetails

ThreadPool

A simple C++11 Thread Pool implementation [zlib]

In 2 lists

Thrust

A parallel algorithms library which resembles the C++ Standard Template Library (STL). [Apache2]

TooManyCooks

High-performance C++20 coroutine framework with advanced hardware detection features. [BSL-1.0]

transwarp

A header-only C++ library for task concurrency. [MIT]

In 4 listsDetails

VexCL

A C++ vector expression template library for OpenCL/CUDA. [MIT]

In 2 lists

STAPL

A C++ parallel programming framework designed to work on both shared and distributed memory parallel computers. [BSD]

concurrencpp

A general concurrency library containing tasks, executors, timers and C++20 coroutines to rule them all.

In 2 lists

libcu++

The NVIDIA C++ Standard Library, providing heterogeneous implementation of C++ Standard Library facilities. [Apache-2.0]

In 3 lists

nvthreads

A library for enabling efficient and persistent threading in C/C++. [LGPL-2.1]

Configuration

inifile-cpp

A header-only and easy to use Ini file parser for C++. [MIT]

inih

Simple .INI file parser in C, good for embedded systems. [BSD-3-Clause]

In 6 listsDetails

inih

Single header only C++ version of inih. [BSD-3-Clause]

In 2 lists

ini-cpp

Single header only C++ version, with some handy read/write interface, extend from inih. [BSD-3-Clause] website

iniparser

INI file parser. [MIT]

In 2 lists

inipp

Simple header-only C++ ini parser and generator. [MIT]

libconfig

C, C++ library for processing structured configuration files. [LGPL-2.1] website

In 2 lists

libconfuse

Small configuration file parser library for C. [ISC]

In 2 lists

mINI

INI file reader and writer. [MIT]

simpleini

Cross-platform C++ library providing a simple API to read and write INI-style configuration files. [MIT]

In 3 lists

toml++

Header-only TOML parser and serializer for C++17 and later. [MIT] website

In 3 lists

toml11

a C++11 (or later) header-only toml parser/encoder depending only on C++ standard library. [MIT]

In 3 lists

Containers

CRoaring

Roaring bitmaps in C (and C++), with SIMD optimizations. [Apache-2.0]

In 3 lists

dynamic_bitset

Simple Useful Libraries: C++17/20 header-only dynamic bitset. [MIT] website

In 3 lists

fixed-containers

Header-only C++20 library that provides fixed capacity constexpr containers. [MIT]

flat_hash_map

A very fast flat hashtable with Fibonacci hashing.

frozen

a header-only, constexpr alternative to gperf for C++14 users. [Apache-2.0]

In 4 listsDetails

Hashmaps

Implementation of open addressing hash table algorithms in C++. [MIT]

hat-trie

C++ implementation of a fast and memory efficient HAT-trie. [MIT]

Hopscotch map

A fast header-only hash map which uses hopscotch hashing for collisions resolution. [MIT]

In 3 lists

librb

C implementation of ring (circular) buffer, with full thread awareness that allows for concurrent read/write and can automatically grow in size when needed. [BSD] website

LSHBOX

A c++ toolbox of locality-sensitive hashing (LSH), provides several popular LSH algorithms, also support Python and MATLAB. [GPL]

marisa-trie

Matching Algorithm with Recursively Implemented StorAge. [BSD-2-Clause/LGPL-2.1]

parallel-hashmap

A family of header-only, very fast and memory-friendly hashmap and btree containers [Apache2] website

In 4 listsDetails

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

In 3 lists

plf::colony

An unordered "bag"-type container which outperforms std containers in high-modification scenarios while maintaining permanent pointers to non-erased elements regardless of insertion/erasure. [zLib] website

plf::list

A std::list implementation which removes range splicing in order to enable cache-friendlier structure, yielding significant performance gains. [zLib] website

plf::stack

A replacement container for the std::stack container adaptor, with better performance than any std container in a stack context. [zLib] website

ring_span lite

A simplified implementation of Arthur O'Dwyer's ring_span implementation ie. a circular buffer view. [MIT]

robin-hood-hashing

Fast & memory efficient hashtable based on robin hood hashing for C++14. [MIT]

In 4 listsDetails

robin-map

Fast hash map and hash set using robin hood hashing. [MIT]

In 4 listsDetails

sparsepp

A fast, memory efficient hash map for C++. [BSD 3-clause]

In 2 lists

sqlitemap

Persistent map backed by SQLite. [MIT]

st_tree

A fast and flexible c++ template class for tree data structures. [Apache-2.0]

svector

Compact SVO optimized vector for C++17 or higher. [MIT]

tree.hh

An STL-like C++ header-only tree library. [GPL2+]

unordered_dense

A fast & densely stored hashmap and hashset based on robin-hood backward shift deletion. [MIT]

fifo_map

A FIFO-ordered associative container for C++. [MIT]

ordered-map

A C++ hash map and hash set which preserves the order of insertion. [MIT]

Cryptography

Bcrypt

A cross platform file encryption utility. Encrypted files are portable across all supported operating systems and processors. [BSD]

BeeCrypt

A portable and fast cryptography library. [LGPLv2.1+]

BoringSSL

A fork of OpenSSL that is designed to meet Google's needs. [Apache2]

Botan

A crypto library for C++. [BSD-2]

In 2 lists

Crypto++

A free C++ class library of cryptographic schemes. [Boost] website

In 3 lists

digestpp

C++11 header-only message digest (hash) library. [PublicDomain]

In 3 lists

GnuPG

A complete and free implementation of the OpenPGP standard. [GPL]

In 4 listsDetails

GnuTLS

A secure communications library implementing the SSL, TLS and DTLS protocols. [LGPL2.1]

In 2 lists

Libgcrypt

A general purpose cryptographic library originally based on code from GnuPG. [LGPLv2.1+]

LibreSSL

A free version of the SSL/TLS protocol forked from OpenSSL in 2014. [?]

libsodium

P(ortable|ackageable) NaCl-based crypto library, opinionated and easy to use. [ISC]

In 3 lists

libhydrogen

A lightweight, secure, easy-to-use crypto library suitable for constrained environments. [ISC]

In 3 lists

LibTomCrypt

A fairly comprehensive, modular and portable cryptographic toolkit. [WTFPL]

In 4 listsDetails

mbedTLS

An open source, portable, easy to use, readable and flexible SSL library, previously known as PolarSSL. [Apache2] website

In 2 lists

Nettle

A low-level cryptographic library. [LGPL]

OpenSSL

A robust, commercial-grade, full-featured, and Open Source cryptography library. [Apache] website

In 4 listsDetails

retter

A collection of hash functions, ciphers, tools, libraries, and materials related to cryptography.

In 3 lists

s2n

An implementation of the TLS/SSL protocols. [Apache]

In 4 listsDetails

sha1collisiondetection

Library and command line tool to detect SHA-1 collision in a file. [MIT]

In 2 lists

stduuid

A C++17 cross-platform implementation for UUIDs. [MIT]

In 2 lists

Tink

A multi-language, cross-platform library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse. [Apache-2.0]

In 2 lists

Tiny AES in C

Small portable AES128/192/256 in C. [PublicDomain]

In 3 lists

tiny-ECDH-c

Small and portable implementation of the ECDH key agreement protocol in C. [PublicDomain]

Themis

crypto library for painless data security, providing symmetric and asymmetric encryption, secure sockets with forward secrecy, for mobile and server platforms. [Apache2]

In 13 listsDetails

HEhub

A library for homomorphic encryption and its applications. [Apache2]

Qt-Secret

Simple encryption library based on Qt for C++ projects. [LGPL]

micro-ecc

A small and fast ECDH and ECDSA implementation for 8-bit, 32-bit, and 64-bit processors. [BSD-2-Clause]

In 2 lists

crypto-algorithms

Basic implementations of standard cryptography algorithms (AES, SHA, etc.) in C. [PublicDomain]

In 3 lists

aes-stream

A fast AES-based stream cipher for C. [ISC]

CSV

commata

Just another header-only C++17 CSV parser. [Unlicense]

csv2

Fast CSV parser for modern C++. [MIT]

In 3 lists

Csv::Parser

Compile-time and runtime CSV parser written in C++17. [Zlib]

Fast C++ CSV Parser

Small, easy-to-use and fast header-only library for reading CSV files. [BSD-3-Clause]

In 4 listsDetails

Glaze

High performance, header only, CSV library with reflection support. [MIT]

In 3 lists

lazycsv

A fast, lightweight and single-header csv parser for modern C++. [MIT]

rapidcsv

An easy-to-use, header-only C++ CSV parser library. [BSD-3-Clause]

In 2 lists

ssp

A header only "csv" parser which is fast and versatile with modern C++ api. [MIT]

Vince's CSV Parser

A fast, self-contained, streaming C++17 CSV parser with optional type-casting and statistics. [MIT]

In 2 lists

zsv

The world's fastest (simd) CSV parser, with an extensible CLI. [MIT]

In 2 lists

Database

ClickHouse

C++ client for ClickHouse DBMS. [Apache2]

In 2 lists

CrossDB

Ultra High-performance Lightweight Embedded and Server OLTP RDBMS. [MPL-2.0] website

In 2 lists

Doltlite

Version Controlled SQLite. [PublicDomain/Apache2]

DuckDB

in-process SQL OLAP Database Management System. [MIT] website

In 8 listsDetails

hiberlite

C++ Object-relational mapping for sqlite3. [BSD]

In 2 lists

Hiredis

A minimalistic C client library for the Redis database. [BSD]

In 4 listsDetails

Infinity

The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2]

In 9 listsDetails

Kuzu

Embeddable property graph database management system built for query speed and scalability. Implements Cypher. [MIT]

In 4 listsDetails

Kvrocks

A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol. [Apache2]

In 2 lists

Ladybug

an embedded graph database built for query speed and scalability. [MIT] website

LevelDB

A fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. [BSD]

In 6 listsDetails

libpg_query

C library for accessing the PostgreSQL parser outside of the server environment. [BSD-3-Clause]

In 4 listsDetails

libpqxx

The official C++ client API for PostgreSQL. [BSD-3-Clause]

In 2 lists

LMDB

Very fast embedded key/value store with full ACID semantics. [OpenLDAP]

In 2 lists

LMDB++

C++11 wrapper for the LMDB embedded database library. [PublicDomain]

mgclient

C/C++ Memgraph Client. [Apache2]

MongoDB C Driver

MongoDB client library for C. [Apache2]

In 3 lists

MongoDB C++ Driver

C++ driver for MongoDB. [Apache2]

In 3 lists

MongoDB Libbson

A BSON utility library. [Apache2]

In 2 lists

MySQL++

A C++ wrapper for MySQL's C API. [LGPL]

nanodbc

A small C++ wrapper for the native C ODBC API. [MIT]

ODB

An open-source, cross-platform, and cross-database object-relational mapping (ORM) system for C++. [GPLv2]

redis3m

Wrapper of hiredis with clean C++ interface, supporting sentinel and ready to use patterns. [Apache2]

Reindexer

Embeddable, in-memory, document-oriented database with a high-level Query builder interface. [Apache2] website

RocksDB

Embedded key-value store for fast storage from facebook. [BSD]

In 4 listsDetails

SimDB

High performance, shared memory, lock free, cross platform, single file, minimal dependencies, C++11 key-value store. [Apache2]

In 2 lists

SlothDB

an embedded SQL database that runs everywhere: on your laptop, on a server, and in the browser. [MIT] website

In 2 lists

SOCI

A database abstraction layer for C++. [Boost]

In 2 lists

Speedb

Community-led project: A RocksDB compliant high performance scalable embedded key-value store. [Apache2]

sqlgen

A reflection-based ORM and SQL query generator for C++-20, similar to Python's SQLAlchemy/SQLModel or Rust's Diesel. [MIT]

SQLite

A completely embedded, full-featured relational database in a few 100k that you can include right into your project. [PublicDomain]

In 7 listsDetails

SQLiteC++

SQLiteC++ (SQLiteCpp) is a smart and easy to use C++ SQLite3 wrapper. [MIT]

In 3 lists

sqlite_modern_cpp

Header only C++14 wrapper around sqlite library. [MIT]

sqlite_orm

SQLite ORM light header only library for modern C++. [AGPL + paid MIT]

In 3 lists

sqlpp11

A type safe embedded domain specific language for SQL queries and results in C++. [BSD-2-Clause]

In 2 lists

sqlpp23

A type safe SQL library for C++. [BSD-2-Clause]

TidesDB

High-performance, durable, transactional embedded storage engine designed for flash and RAM optimization. [MPL-2.0] website

TileDB

Fast Dense and Sparse Multidimensional Array DBMS. [MIT] website

In 2 lists

TinyORM

Modern C++ ORM library. [MIT] website

In 2 lists

UnQLite

A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] website

In 5 listsDetails

upscaledb

An embedded "typed" key/value store with a built-in query interface. [GPLv3]

TigerBeetleDB C++ client (Community)

TigerBeetle is a financial accounting database designed for mission critical safety and performance to power the future of financial services. [BSL-1.0]

Trilogy

a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. [MIT]

In 2 lists

UStore

Multi-Modal database for BLOBs, JSON, and graphs. [Apache2]

Velox

A C++ vectorized database acceleration library aimed to optimizing query engines and data processing systems. [Apache-2.0] website

In 3 lists

Zvec

A lightweight, lightning-fast, in-process vector database. [Apache2] website

In 7 listsDetails

constexpr-sql

A compile-time SQL query parser and executor in C++17. [MIT]

NuDB

A fast, append-only key/value store for SSD drives. [Boost]

Data visualization

gplot++

Cross-platform header-only C++ plotting library that interfaces with Gnuplot. [MIT]

In 2 lists

matplotplusplus

C++ Graphics Library for Data Visualization. [MIT] website

In 4 listsDetails

mathplot

C++ header-only graphing and data visualization with modern OpenGL. [Apache-2.0] website

In 2 lists

Plotly++

A C++ interface to the Plotly.js figure spec, for creating interactive data visualizations. [MIT]

matplotlib-cpp

A C++ wrapper around the matplotlib Python plotting library. [MIT]

In 3 lists

Debug

Attest

Cross-platform, heap-free C test framework with parameterized and lifecycle-aware tests and assertions with ad-hoc formatted messages. [MIT]

backward-cpp

A beautiful stack trace pretty printer for C++. [MIT]

In 5 listsDetails

Bencher

A suite of continuous benchmarking tools designed to catch performance regressions in CI. [MIT]/[Apache2]

In 8 listsDetails

benchmark

Google provided small microbenchmark support library. [Apache2]

In 4 listsDetails

Boost.Test

Boost Test Library. [Boost] website

In 2 lists

check

Check is a unit testing framework for C. [LGPL-2.1] website

In 3 lists

doctest

The lightest feature rich C++ single header testing framework. [MIT]

In 4 listsDetails

Catch2

A modern, C++-native, test framework for unit-tests, TDD and BDD. [Boost]

In 4 listsDetails

Celero

C++ Benchmarking Framework. [Apache2]

In 2 lists

cpp-dump

A C++ library for debugging purposes that can print any variable, even user-defined types. [MIT]

In 2 lists

CppUTest

Unit testing and mocking framework for C/C++. [BSD-3-clause]

In 3 lists

CUTE

C++ Unit Testing Easier. [LGPL3]

CMocka

unit testing framework for C with support for mock objects. [Apache2]

In 2 lists

CppBenchmark

Performance benchmark framework for C++ with nanoseconds measure precision. [MIT]

Cpptrace

A simple, portable, and self-contained C++ stacktrace library supporting C++11 and greater. [MIT]

In 2 lists

CppUnit

C++ port of JUnit. [LGPL2]

CrashCatch

Single-header crash reporting for C++ that logs stack traces and creates .dmp and .txt crash dumps. [MIT] website

CTest

The CMake test driver program. [BSD]

dbg-macro

A dbg(…) macro for C++. [MIT]

In 3 lists

DebugViewPP

Debug logging viewer. [Boost]

In 2 lists

Deleaker

A tool for resource leak detection, including memory, GDI and handle leaks.

In 2 lists

FakeIt

Simple mocking framework for C++. [MIT]

In 4 listsDetails

fff

A micro-framework for creating fake C functions. [MIT]

In 4 listsDetails

Google Mock

A library for writing and using C++ mock classes. [BSD]

In 5 listsDetails

Hippomocks

Single-header mocking framework. [LGPL-2.1]

In 2 lists

IceCream-Cpp

Never use cout/printf to debug again [MIT]

ig-debugheap

Multiplatform debug heap useful for tracking down memory errors. [BSD]

libassert

The most over-engineered C++ assertion library. [MIT]

libtap

Write tests in C. [GPL2]

microprofile

Profiler with web-view for multiple platforms. [Unlicense]

In 2 lists

MinUnit

A minimal unit testing framework for C self-contained in a single header file. [MIT]

In 2 lists

nanobench

Simple, fast, accurate single-header microbenchmarking functionality for C++11/14/17/20. [MIT] website

In 4 listsDetails

Nanotimer

A simple low-overhead cross-platform timer class for benchmarking. [zLib] website

In 2 lists

Nonius

A C++ micro-benchmarking framework. [CC]

In 2 lists

Remotery

Single C File Profiler with Web Viewer. [Apache2]

In 4 listsDetails

snitch

Lightweight C++20 testing framework. [Boost]

In 2 lists

Touca

Open-source regression testing system that you can self-host. [Apache2] website

In 3 lists

UnitTest++

A lightweight unit testing framework for C++. [MIT/X Consortium license]

Unity

Simple Unit Testing for C. [MIT]

In 2 lists

utest.h

Single header unit testing framework for C and C++. [Unlicense]

utl::profiler

Singe-header profiler for C++17. [MIT]

μt

C++20 single header/single module, macro-free μ(micro)/Unit Testing Framework. [Boost]

VLD

Visual Leak Detector. A free, robust, open-source memory leak detection system for Visual C++.

heaptrack

A heap memory profiler for Linux. [LGPL-2.1]

In 3 lists

Documentation

Doxide

Modern documentation for modern C++, configure with YAML, output Markdown. [Apache 2.0] website

In 2 lists

doxygen

zap: - The de facto standard tool for generating documentation from annotated C++ sources. [GPL2] website

In 4 listsDetails

doxyrest

A compiler from Doxygen XML to reStructuredText for Sphinx. [MIT]

hdoc

The modern documentation tool for C++. [AGPL/Proprietary] website

In 2 lists

Natural Docs

Natural Docs is an open source documentation generator for multiple programming languages. [AGPL/Proprietary] website

In 2 lists

Sourcey

Static documentation generator that consumes Doxygen XML alongside OpenAPI, godoc, MCP, and Markdown. [AGPL-3.0] website

Sphinx

Sphinx makes it easy to create intelligent and beautiful documentation. [BSD-2-Clause] website

In 7 listsDetails

DSP

DSPFilters

A collection of useful C++ classes for digital signal processing. [MIT]

In 3 lists

fCWT

The fast Continuous Wavelet Transform (fCWT) is a library for fast calculation of CWT. [Apache-2.0]

FFTW

A C library for computing the DFT in one or more dimensions. [GPL]

iir1

IIR Realtime C++ filter library. [MIT]

In 3 lists

kissfft

A Fast Fourier Transform (FFT) library that tries to Keep it Simple, Stupid. [BSD-3-Clause]

In 3 lists

pocketfft

FFT implementation based on FFTPack, but with several improvements. [BSD-3-Clause]

In 3 lists

wavelib

C implementation of 1D and 2D wavelet transforms. [BSD-3-Clause]

Font

Fontconfig

Font configuration and customization library. [MIT] website

FreeType

FreeType is a freely available software library to render fonts. [FTL & GPLv2]

In 2 lists

otfcc

A C library and utility used for parsing and writing OpenType font files. [Apache-2.0]

In 2 lists

harfbuzz

A text shaping engine. [Old MIT]

In 3 lists

libschrift

A lightweight TrueType font rendering library. [ISC]

SheenBidi

A sophisticated implementation of Unicode Bidirectional Algorithm. [Apache-2.0]

Game Engine

Acid

A high speed C++17 Vulkan game engine. [MIT]

In 3 lists

Allegro

A cross-platform library mainly aimed for video games and multimedia programming. [zlib]

In 2 lists

Axmol Engine

A cross-platform game engine for desktop, mobile, and XBOX (UWP), derived from Cocos2d-x-4.0. [MIT] website

In 2 lists

Cocos2d-x

A multi-platform framework for building 2d games, interactive books, demos and other graphical applications. [MIT]

In 2 lists

Corange

A game engine written in pure C, SDL and OpenGL. [BSD]

In 6 listsDetails

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]

In 2 lists

delta3d

A robust simulation platform. [LGPL2]

EnTT

Gaming meets modern C++. [MIT]

In 4 listsDetails

GamePlay

A cross-platform native C++ game framework for creating 2D/3D mobile and desktop games. [Apache2]

In 6 listsDetails

Godot

A fully featured, open source, MIT licensed, game engine. [MIT]

In 6 listsDetails

Grit

Community project to build a free game engine for implementing open world 3D games. [MIT]

In 2 lists

Halley

A lightweight game engine written in C++14 with a "true" entity-component system. [Apache 2.0]

In 5 listsDetails

Hazel Game Engine

Hazel is primarily an early-stage interactive application and rendering engine for Windows. [Apache-2.0 license]

In 5 listsDetails

IX-Ray Platform

Fork of X-Ray 1.6 engine that aims to improve gaming experience and simplify development of modifications. [Modified MIT/non-commercial only]

JNGL

2D library for Linux, Windows, macOS, Android, iOS, Xbox, the Nintendo Switch and the Web. [zlib] website

In 3 lists

KlayGE

a cross-platform open source game engine with plugin-based architecture. [GPLv2] website

In 2 lists

nCine

A cross-platform 2D game engine with an emphasis on performance, written in C++11 and optionally scriptable in Lua. [MIT] website

In 4 listsDetails

o3de

An open-source, real-time, multi-platform 3D engine based on Amazon Lumberyard. [Apache2] website

In 5 listsDetails

OpenXRay

a community-modified X-Ray engine used in S.T.A.L.K.E.R. game series. [Modified BSD/non-commercial only]

In 4 listsDetails

Oxygine

A cross-platform 2D C++ game engine. [MIT]

Panda3D

A game engine, a framework for 3D rendering and game development for Python and C++ programs. [Modified BSD] website

In 5 listsDetails

PixelGameEngine

The official distribution of olcPixelGameEngine, a tool used in javidx9's YouTube videos and projects. [OLC3]

In 2 lists

Polycode

A cross-platform framework for creative code in C++ (with Lua bindings). [MIT]

In 2 lists

quakeforge

Actively maintained branch of the original Quake engine code with 20+ years of development. [GPL-2.0]

In 2 lists

raylib

A simple and easy-to-use library to enjoy videogames programming. [zlib/libpng] website

In 6 listsDetails

Spring

A powerful free cross-platform RTS game engine. [GPLv2/GPLv3] website

In 3 lists

Torque2D

An open-source and cross-platform C++ engine built for 2D game development. [MIT] website

In 3 lists

Torque3D

An open-source C++ engine built for 3D game development. [MIT] website

In 2 lists

toy engine

toy is a thin and modular c++ game engine and offers simple expressive c++ idioms to design full featured 2D or 3D games in fast iterations.

In 2 lists

Urho3D

A free lightweight, cross-platform 2D and 3D game engine implemented in C++. Greatly inspired by OGRE and Horde3D. [MIT]

In 3 lists

Zodiac Engine

An open-source cross-platform 3D rendering engine and editor (ZEngine) written in C++20 with Vulkan. [MIT]

ezEngine

Is a free, open-source game engine written in C++. Its philosophy is to be modular and flexible, such that it can be adapted to many different use cases. [MIT] website

In 5 listsDetails

Graph

CXXGraph

free C++(17) graph header-only library for representation and algorithms execution. [AGPL-3.0]

In 2 lists

Graaf

A general-purpose lightweight C++20 graph library. [MIT] website

In 2 lists

GUI

Boden

Native, mobile, cross-platform GUI Framework. [GPL/LGPL/Proprietary] website

In 3 lists

Brisk

Cross-platform C++20 GUI framework. MVVM, reactive capabilities. Scalable, accelerated GPU rendering [GPL/Proprietary] website

CEGUI

Flexible, cross-platform GUI library.

Elements

Lightweight, fine-grained, resolution independent, modular GUI library. [MIT]

In 5 listsDetails

FLTK

Fast, light, cross-platform C++ GUI toolkit. [LGPL2]

FOX Toolkit

an open-source, cross-platform widget toolkit. [LGPL]

GacUI

GPU Accelerated C++ User Interface, with WYSIWYG developing tools, XML supports, built-in data binding and MVVM features. [Ms-PL]

In 3 lists

GTK+

A multi-platform toolkit for creating graphical user interfaces. [LGPL]

In 5 listsDetails

gtkmm

The official C++ interface for the popular GUI library GTK+. [LGPL]

imgui

Immediate Mode Graphical User Interface with minimal dependencies. [MIT]

In 11 listsDetails

implot

Immediate Mode Plotting widgets for imgui. [MIT]

In 2 lists

iup

Multi-platform toolkit for building graphical user interfaces. [MIT]

libui

Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports. [MIT]

In 5 listsDetails

MyGUI

Fast, flexible and simple GUI. [MIT]

nana

Nana is a cross-platform library for GUI programming in modern C++ style. [Boost]

In 3 lists

NanoGui

A minimalistic cross-platform widget library for OpenGL 3.x or higher. [BSD]

In 2 lists

NAppGUI

SDK for building cross-platform desktop apps in ANSI-C. [MIT] website

In 2 lists

nuklear

A single-header ANSI C gui library. [PublicDomain]

In 7 listsDetails

QCustomPlot

Qt plotting widget without further dependencies. [GPLv3]

Qwt

Qt Widgets for Technical Applications. [Own based on LGPL]

QwtPlot3D

A feature-rich Qt/OpenGL-based C++ programming library, providing essentially a bunch of 3D-widgets. [zlib]

RmlUi

The HTML/CSS User Interface library evolved. Fork of libRocket. [MIT]

In 3 lists

Saucer

A modern, cross-platform C++ webview library. [MIT]

In 2 lists

Sciter

Sciter is an embeddable HTML/CSS/scripting engine aimed to be used as an UI layer of modern desktop applications. [Free/Commercial]

In 4 listsDetails

Slint

Lightweight GUI toolkit for desktop and embedded. [GPL/Free/Proprietary] website

In 3 lists

TGUI

Cross-platform modern c++ GUI. [Zlib] website

WebUI

Use any web browser as GUI, with your preferred language in the backend and HTML5 in the frontend. [MIT] website

In 2 lists

wxCharts

A library to create charts in wxWidgets applications. [MIT] website

wxWidgets

A C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base. [Own LGPL]

In 2 lists

Yue

A library for creating native cross-platform GUI apps. [LGPLv2]

In 3 lists

GuiLite

The smallest header-only GUI library (5 KLOC) for all platforms. [Apache-2.0]

In 4 listsDetails

LCUI

A small C library for building user interfaces with C, XML and CSS. [MIT]

In 2 lists

Graphics

assimp

Open Asset Import Library (assimp) is a cross-platform 3D model import library which aims to provide a common API for different 3D asset file formats. [BSD-3-Clause] website

In 5 listsDetails

bgfx

A cross-platform rendering library. [BSD]

In 10 listsDetails

Blend2D

2D vector graphics engine powered by a JIT compiler. [Zlib] website

In 3 lists

Cairo

A 2D graphics library with support for multiple output devices. [LGPL2 or Mozilla MPL]

In 2 lists

C-Turtle

A C++11 header-only turtle graphics library acting as a CImg wrapper. [MIT]

In 2 lists

Diligent Engine

A modern cross-platform low-level 3D graphics library. [Apache2]

In 7 listsDetails

DirectXTK

A collection of helper classes for writing DirectX 11.x code in C++. [MIT]

In 3 lists

GLFW

A simple, cross-platform OpenGL wrangling library. [zlib/libpng]

In 5 listsDetails

GLFWPP

A thin modern C++17 header-only wrapper for GLFW. [MIT]

In 2 lists

Harfang 3D

3D visualization library usable in C++, Python, Lua and Go. Based on BGFX. [GPLv3/LGPLv3/Proprietary] website

In 4 listsDetails

herebedragons

A basic 3D scene implemented with various engines, frameworks or APIs. [MIT] website

In 3 lists

Horde3D

A small 3D rendering and animation engine. [EPL]

In 4 listsDetails

Ion

A small and efficient set of libraries for building cross-platform client or server applications that use 3D graphics. [Apache2] website

In 2 lists

Irrlicht

A high performance realtime 3D engine written in C++. [zlib]

libigl

Simple C++ geometry processing library. [MPL2]

In 4 listsDetails

LLGL

Low Level Graphics Library (LLGL) is a thin abstraction layer for the modern graphics APIs. [BSD-3-Clause]

In 4 listsDetails

LunaSVG

a standalone SVG rendering library in C++. [MIT]

In 3 lists

magnum

Lightweight and modular C++11/C++14 graphics middleware for games and data visualization. [MIT] website

In 6 listsDetails

MESHLIB

An SDK to Supercharge Your 3D Data Processing Efficiency. [Free/Commercial] website

micro-gl

Realtime, Embeddable, Headers Only C++11 CPU vector graphics. no STD lib, no FPU and no GPU required. [CUSTOM] website

In 3 lists

NanoVG

Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations. [Zlib]

In 5 listsDetails

Ogre 3D

zap: - A scene-oriented, real-time, flexible 3D rendering engine (as opposed to a game engine) written in C++. [MIT] website

In 2 lists

OpenSceneGraph

An open source high performance 3D graphics toolkit. [OSGPL]

OpenSubdiv

Pixar's library for evaluating and rendering subdivision surfaces on CPU and GPU. [Modified Apache2]

OpenVDB

Library and tools for storing, editing, and rendering volumetric datasets. [MPL2]

Panda3D

A framework for 3D rendering and game development for Python and C++. [BSD]

In 5 listsDetails

Partio

Library for wrangling particle data, with support for most common file formats. [Modified BSD]

Skia

A complete 2D graphic library for drawing Text, Geometries, and Images. [BSD] website

In 3 lists

ThorVG

a platform-independent portable library that allows for drawing vector-based scenes and animations, including SVG and Lottie. [MIT] website

In 2 lists

TinySpline

A small, yet powerful ANSI C library for interpolating, transforming, and querying arbitrary NURBS, B-Splines, and Bézier curves. [MIT]

In 3 lists

urho3d

Cross-platform rendering and game engine. [Many different, mostly MIT]

In 5 listsDetails

Yocto/GL

Tiny C++ Libraries for Data-Driven Physically-based Graphics. [MIT]

In 3 lists

olive.c

Simple 2D Graphics Library. [MIT]

In 4 listsDetails

Image Processing

avir

High-quality Pro HDR image resizer and fast SIMD Lanczos resizer. [MIT]

Boost.GIL

Generic Image Library. [Boost] website

BitmapPlusPLus

Simple and Fast header only Bitmap C++ library. [MIT]

CImg

A small, open source, C++ toolkit for image processing. [Own LGPL or GPL]

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

zap: - A toolkit for making real world machine learning and data analysis applications in C++. [Boost] website

In 7 listsDetails

fpng

Super fast C++ .PNG writer/reader. [Unlicense]

In 2 lists

FreeImage

An open source library that supports popular graphics image formats and others as needed by today's multimedia applications. [GPL2 or GPL3]

GD

GD Graphics Library, famously used in PHP for image loading/manipulation & thumbnail generation. [custom permissive license, requires mention in user docs] website

In 3 lists

DCMTK

DICOM Toolkit.

GDCM

Grassroots DICOM library.

ITK

An open-source, cross-platform system for image analysis. [Apache2 from ITK 4.0]

In 3 lists

Jpegli

an improved JPEG encoder and decoder implementation. [BSD-3-Clause]

In 2 lists

Leptonica

Leptonica is an open source library containing software that is broadly useful for image processing and image analysis applications. [BSD-2-Clause] website

In 2 lists

libavif

Library for encoding and decoding .avif files. [BSD-2-Clause]

In 2 lists

libfacedetection

Open source library for face detection in images. The face detection speed can reach 1500FPS. [BSD]

In 3 lists

libjpeg-turbo

A JPEG image codec that uses SIMD instructions to accelerate baseline JPEG encoding and decoding. [IJG & BSD-3-Clause & zlib] website

In 4 listsDetails

libjxl

JPEG XL image format reference implementation. [BSD-3-Clause]

In 4 listsDetails

libpng

the reference library for use in applications that read, create, and manipulate PNG (Portable Network Graphics) raster image files. [libpng-2.0] website

In 2 lists

libspng

Simple, modern libpng alternative. [BSD-2] website

In 4 listsDetails

libvips

A fast image processing library with low memory needs. [LGPL] website

In 2 lists

LodePNG

PNG encoder and decoder in C and C++. [Zlib]

In 3 lists

Magick++

ImageMagick program interfaces for C++. [Apache2]

In 2 lists

MagickWnd

ImageMagick program interfaces for C. [Apache2]

In 2 lists

MozJPEG

Improved JPEG encoder. [BSD/BSD-3-Clause/ZLIB]

In 6 listsDetails

OpenCV

zap: - Open source computer vision. [Apache2] website

OpenEXR

Cross-platform library for high dynamic range imaging. [Modified BSDF]

OpenImageIO

Powerful image and texture wrangling library with support for a wide number of common lossy and RAW formats. [Modified BSD]

In 2 lists

OpenJPEG

an open-source JPEG 2000 codec written in C language. [BSD-2-Clause]

In 2 lists

PlutoFilter

A single-header, zero-allocation image filter library in C. [MIT]

QOI

The “Quite OK Image Format” for fast, lossless image compression. [MIT]

In 4 listsDetails

SAIL

Easy-to-use cross-platform image decoding library with pluggable image codecs. [MIT]

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]

In 3 lists

stb-image

STB single-header image loading library. [Public Domain]

In 8 listsDetails

tesseract-ocr

An OCR engine. [Apache2]

TinyDNG

Header-only Tiny DNG/TIFF loader and writer in C++. [MIT]

In 2 lists

TinyEXIF

Tiny ISO-compliant C++ EXIF and XMP parsing library for JPEG. [MIT]

TinyTIFF

lightweight TIFF reader/writer library. [GPL-3.0]

Video++

A C++14 high performance video and image processing library. [MIT]

VIGRA

A generic C++ computer vision library for image analysis. [MIT X11]

In 2 lists

VTK

Open-source, freely available software system for 3D computer graphics, image processing and visualization. [BSD]

In 3 lists

OpenImageDenoise

High-performance, high-quality denoising library for ray-traced images. [Apache-2.0] website

bitmap

C++ Bitmap Library for reading, writing, and processing BMP image files. [MIT]

In 2 lists

Internationalization

gettext

GNU 'gettext'. [GPL2]

IBM ICU

A set of C/C++ and Java libraries providing Unicode and Globalization support. [ICU]

libiconv

An encoding conversion library between different character encodings. [GPL]

In 2 lists

simdutf

Unicode routines (UTF8, UTF16, UTF32): billions of characters per second using SSE2, AVX2, NEON, AVX-512. [Apache-2/MIT]

uni-algo

Unicode Algorithms Implementation for C/C++. [Unlicense or MIT]

In 2 lists

utf8.h

Single header utf8 string functions for C and C++. [Unlicense]

In 4 listsDetails

utf8proc

A clean C library for processing UTF-8 Unicode data. [MIT]

In 2 lists

Inter-process communication

Apache Thrift

Efficient cross-language IPC/RPC, works between C++, Java, Python, PHP, C#, and many more other languages. Originally developed by Facebook. [Apache2]

In 4 listsDetails

Boost.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

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

In 2 lists

Cap'n Proto

Fast data interchange format and capability-based RPC system. [MIT] website

In 5 listsDetails

eCAL

Pub/sub, client/server, C++/Python/C#, various message protocols (protobuf, capnproto ..). [Apache2] website

gRPC

A high performance, open source, general-purpose RPC framework. [BSD] website

In 7 listsDetails

Ice

Comprehensive RPC framework with support for C++, C#, Java, JavaScript, Python and more. [GPLv2]

In 3 lists

iceoryx

True zero-copy inter-process communication framework for safety critical systems with bindings for C, Rust. Runs on Linux, QNX, Windows, Mac OS, FreeBSD. [Apache2] website

libjson-rpc-cpp

JSON-RPC framework for C++ servers and clients. [MIT]

In 2 lists

nanomsg

A simple high-performance implementation of several "scalability protocols". [MIT] website

In 3 lists

nng

nanomsg-next-generation, a light-weight brokerless messaging library. [MIT] website

In 2 lists

rpclib

A modern C++ msgpack-RPC server and client library. [MIT]

In 2 lists

simple-rpc-cpp

A simple RPC wrapper generator to C/C++ functions. [BSD]

SRPC

A lightweight RPC system that supports multiple protocols and OpenTelemetry. [Apache2]

In 3 lists

WAMP

Provides RPC and pub/sub messaging patterns. (various implementations, various languages)

xmlrpc-c

A lightweight RPC library based on XML and HTTP. [BSD]

JSON

Boost.PropertyTree

A property tree parser/generator that can be used to parse XML/JSON/INI/Info files. [Boost] website

cJSON

Ultralightweight JSON parser in ANSI C. [MIT]

In 3 lists

DAW JSON Link

Fast, convenient JSON serialization and parsing in C++. [BSL-1.0]

In 2 lists

frozen

JSON parser and generator for C/C++. [GPL & GPL2]

In 2 lists

Glaze

High performance, header only, CSV library with reflection support. [MIT]

In 3 lists

Jansson

C library for encoding, decoding and manipulating JSON data. [MIT]

In 3 lists

jbson

jbson is a library for building & iterating BSON data, and JSON documents in C++14. [Boost]

JeayeSON

A very sane (header only) C++ JSON library. [BSD]

Jsmn

A minimalistic JSON parser in C. [MIT]

In 2 lists

json

zap: - JSON for Modern C++. [MIT] website

In 7 listsDetails

json.cpp

a baroque JSON parsing / serialization library for C++. [Apache-2.0]

json.h

A simple one header/one source solution to parsing JSON in C and C++. [Unlicense]

In 2 lists

json-build

C89 tiny zero-allocation JSON serializer. [MIT]

In 2 lists

json-c

A JSON implementation in C. [MIT]

In 3 lists

jsoncons

A C++ header-only library for JSON and JSON-like binary formats with JSONPointer, JSONPatch, JSONPath and JMESPath. [Boost]

In 2 lists

JsonCpp

A C++ library for interacting with JSON. [MIT]

In 2 lists

Jsonifier

A few classes for parsing and serializing objects from/into JSON - very rapidly. [MIT]

jsonParse

A simple JSON parser in ANSI C. [MIT]

json-parser

Very low footprint JSON parser written in portable ANSI C. [BSD]

json-struct

High performance, single header JSON parser parsing to and from C++ structs. [MIT]

In 2 lists

json-voorhees

JSON library for C++. Support for C++11. No dependencies, fast and dev-friendly. [Apache2]

JSON Toolkit

JSON, JSON Pointer, JSON Schema, and JSONL library for C++20. [AGPL/Commercial]

jute

Very simple C++ JSON Parser. [PublicDomain]

libjson

A JSON parser and printer library in C. easy to integrate with any model. [LGPL]

libjson

Lightweight JSON library. [?]

LIBUCL

zap: - Universal configuration library parser. [BSD-2-Clause]

In 2 lists

meojson

Next-gen C++ JSON/JSON5 Serialization Engine | Zero Dependency | Header-Only | Unleash JSON Potential. [MIT]

parson

Parson is a lighweight json library written in C. [MIT]

In 3 lists

PicoJSON

A header-file-only, JSON parser serializer in C++. [BSD]

In 4 listsDetails

qt-json

A simple class for parsing JSON data into a QVariant hierarchy and vice versa. [GPLv3]

RapidJSON

zap: - A fast JSON parser/generator for C++ with both SAX/DOM style API. [MIT] website

sajson

Lightweight, extremely high-performance JSON parser for C++11. [MIT]

simdjson

Extremely fast JSON library that can parse gigabytes of JSON per second. [Apache-2.0]

Sonic-Cpp

A fast JSON serializing & deserializing library, accelerated by SIMD. [Apache-2.0]

taoJSON

Zero-dependency C++ header-only JSON library. [MIT]

In 2 lists

ujson

µjson is a a small, C++11, UTF-8, JSON library. [MIT]

UltraJSON

Ultra fast JSON decoder and encoder written in C. [BSD-3-Clause]

In 3 lists

YAJL

A fast streaming JSON parsing library in C. [ISC]

In 2 lists

yyjson

A high performance JSON library written in ANSI C. [MIT]

In 4 listsDetails

libdart

A high-performance, network-optimized JSON manipulation library. [MIT]

Logging

Abseil Logging

The Abseil Logging library provides facilities for writing log messages to stderr, files, or other sinks. [Apache-2.0]

In 2 lists

Blackhole

Attribute-based logging framework, which is designed to be fast, modular and highly customizable. [MIT]

In 2 lists

Boost.Log

Designed to be very modular and extensible. [Boost] website

In 2 lists

BqLog

A lightweight, high-performance logging system used in projects such as "Honor of Kings". [Apache-2.0]

In 3 lists

fmtlog

A performant fmtlib-style logging library with latency in nanoseconds. [MIT]

In 2 lists

G3log

Asynchronous logger with Dynamic Sinks. [PublicDomain]

In 2 lists

glog

C++ implementation of the Google logging module.

In 4 listsDetails

haclog

An extremely fast plain C logging library. [MIT]

In 2 lists

Log4cpp

A library of C++ classes for flexible logging to files, syslog, IDSA and other destinations. [LGPL]

log4cplus

A simple to use C++ logging API providing thread-safe, flexible, and arbitrarily granular control over log management and configuration. [BSD & Apache2]

In 3 lists

loguru

A lightweight C++ logging library. [PublicDomain]

In 3 lists

lwlog

Very fast synchronous and asynchronous C++17 logging library. [MIT]

In 2 lists

ng-log

C++14 library for application-level logging. [BSD-3-Clause]

In 2 lists

plog

Portable and simple log for C++ in less than 1000 lines of code. [MPL2]

In 4 listsDetails

reckless

Low-latency, high-throughput, asynchronous logging library for C++. [MIT]

In 2 lists

spdlog

Super fast, header only, C++ logging library.

In 10 listsDetails

templog

A very small and lightweight C++ library which you can use to add logging to your C++ applications. [Boost]

P7Baical

An open source and cross-platform library for high-speed sending telemetry & trace data with minimal usage of CPU and memory. [LGPL]

Quill

Asynchronous cross platform low latency logging library. [MIT]

In 2 lists

logfault

A simple, elegant and efficient C++ header-only logging library. [MIT]

Machine Learning

Caffe

A fast framework for neural networks. [BSD]

In 10 listsDetails

catboost

A fast, scalable, high performance Gradient Boosting on Decision Trees library. [Apache2]

In 10 listsDetails

CCV

C-based/Cached/Core Computer Vision Library, A Modern Computer Vision Library. [BSD]

In 5 listsDetails

darknet

Open source neural network framework written in C and CUDA. [PublicDomain] website

In 3 lists

Dlib

zap: - A toolkit for making real world machine learning and data analysis applications in C++. [Boost] website

In 7 listsDetails

FAISS

A library for efficient similarity search and clustering of dense vectors. [MIT]

In 8 listsDetails

FANN

Fast Artificial Neural Network library in C. [LGPL]

In 3 lists

Fido

A highly-modular C++ machine learning library for embedded electronics and robotics. [MIT] website

In 3 lists

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

ggml

Tensor library for machine learning with 16-bit and 4-bit quantization support. [MIT]

In 2 lists

libsvm

A simple, easy-to-use, efficient library for Support Vector Machines. [BSD-3-Clause] website

In 3 lists

m2cgen

A CLI tool to transpile trained classic ML models into a native C code with zero dependencies. [MIT]

In 16 listsDetails

MeTA

A modern C++ data sciences toolkit. [MIT]

In 3 lists

Minerva

A fast and flexible system for deep learning. [Apache2]

In 2 lists

mlpack

A scalable c++ machine learning library. [LGPLv3] website

In 6 listsDetails

ncnn

A high-performance neural network inference computing framework optimized for mobile platforms. [BSD]

In 6 listsDetails

OpenCV

zap: - Open Source Computer Vision Library. [BSD] website

oneDAL

A powerful machine learning library that helps speed up big data analysis. [Apache]

In 2 lists

ONNX runtime

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

In 3 lists

Recommender

C library for product recommendations/suggestions using collaborative filtering (CF). [BSD]

In 2 lists

RNNLIB

RNNLIB is a recurrent neural network library for sequence learning problems. [GPLv3]

SHOGUN

The Shogun Machine Learning Toolbox. [GPLv3]

In 4 listsDetails

sofia-ml

The suite of fast incremental algorithms for machine learning. [Apache2]

USearch

Fast search and clustering library for vectors and strings. [Apache2]

In 6 listsDetails

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

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]

In 11 listsDetails

TensorComprehensions

A fully-functional C++ library to automatically synthesize high-performance machine learning kernels. [Apache-2.0]

In 2 lists

kann

A lightweight C library for artificial neural networks. [MIT]

In 4 listsDetails

Math

Apophenia

A C library for statistical and scientific computing. [GPL2]

Armadillo

Fast C++ library for linear algebra & scientific computing. [Apache2] website

autodiff

A modern, fast and expressive C++ library for automatic differentiation. [MIT] website

In 2 lists

blaze

high-performance C++ math library for dense and sparse arithmetic. [BSD]

In 2 lists

Boost.Multiprecision

provides higher-range/precision integer, rational and floating-point types in C++, header-only or with GMP/MPFR/LibTomMath backends. [Boost] website

ceres-solver

C++ library for modeling and solving large complicated nonlinear least squares problems from google. [BSD]

CGAL

Collection of efficient and reliable geometric algorithms. [LGPL&GPL] website

In 3 lists

cml

The configurable math library. [Boost]

CNL

A Compositional Numeric Library for C++. [Boost]

DirectXMath

An all inline SIMD C++ linear algebra library for use in games and graphics apps.

In 4 listsDetails

Dlib

zap: - A toolkit for making real world machine learning and data analysis applications in C++. [Boost] website

In 7 listsDetails

Eigen

A high-level C++ library of template headers for linear algebra, matrix and vector operations, numerical solvers and related algorithms. [MPL2]

ExprTk

The C++ Mathematical Expression Toolkit Library (ExprTk) is a simple to use, easy to integrate and extremely efficient run-time mathematical expression parser and evaluation engine. [MIT]

In 3 lists

Fastor

A lightweight high performance tensor algebra framework for modern C++. [MIT]

geo-utils-cpp

Header-only C++17 library for spherical lat/lng geometry: distance, bearing, area, point-in-polygon. [Apache2]

In 4 listsDetails

Geometric Tools

C++ library for computing in the fields of mathematics, graphics, image analysis and physics. [Boost] website

In 4 listsDetails

GLM

Header-only C++ math library that matches and inter-operates with OpenGL's GLSL math. [MIT] website

In 5 listsDetails

GMTL

Graphics Math Template Library is a collection of tools implementing Graphics primitives in generalized ways. [GPL2]

GMP

A C library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating-point numbers. [LGPL3 & GPL2]

In 4 listsDetails

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

In 3 lists

libfixmath

Cross Platform Fixed Point Maths Library. [MIT]

In 2 lists

linalg.h

Single header, public domain, short vector math library for C++. [Unlicense]

In 3 lists

MATIO

MATLAB MAT File I/O Library. [BSD-2-Clause] website

In 2 lists

MatX

A GPU-accelerated C++17 numerical computing library with a MATLAB/Python-like syntax. [BSD 3-clause]

In 3 lists

mexce

A single-header, dependency-free JIT compiler for scalar mathematical expressions that generates optimized x87 FPU machine code. [BSD]

MIRACL

A Multiprecision Integer and Rational Arithmetic Cryptographic Library. [AGPL]

In 2 lists

NumCpp

A templatized header only C++ implementation of the Python Numpy library. [MIT]

In 4 listsDetails

NumKong

SIMD-accelerated distances, dot products, matrix ops, geospatial & geometric kernels for 16 numeric types. [Apache2] (previously named SimSIMD)

In 3 lists

OMath

Cross-platform modern general purpose math library written in C++23 that suitable for cheat/game development. [ZLIB]

In 3 lists

muparser

muParser is an extensible high performance math expression parser library written in C++. [MIT]

In 2 lists

LibTomMath

A free open source portable number theoretic multiple-precision integer library written entirely in C. [PublicDomain & WTFPL] website

In 3 lists

linmath.h

A lean linear math library, aimed at graphics programming. [WTFPL]

In 2 lists

lp_solve

A library used to formulate and solve linear programming problems. [LGPL] website

In 2 lists

OpenBLAS

An optimized BLAS library based on GotoBLAS2 1.13 BSD version. [BSD 3-clause] website

In 3 lists

PCG-rand

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]

In 3 lists

QuantLib

A free/open-source library for quantitative finance. [Modified BSD] website

In 5 listsDetails

sebsjames/maths

A templated C++20 math library which emphasizes convenience and pleasure for the client programmer (used in mathplot). [Apache2] website

StatsLib

A C++ header-only library of statistical distribution functions. [Apache2] website

In 3 lists

SymEngine

Fast symbolic manipulation library, a rewriting of SymPy's core in C++. [MIT]

In 3 lists

TinyExpr

A C library for parsing and evaluating math expressions from strings. [zlib]

In 4 listsDetails

Vc

SIMD Vector Classes for C++. [BSD]

In 2 lists

Versor

A (fast) Generic C++ library for Geometric Algebras, including Euclidean, Projective, Conformal, Spacetime (etc).

Wagyu

A general library for geometry operations of union, intersections, difference, and xor. [mapbox-wagyu original]

wide-integer

Wide-Integer implements a generic C++ template for uint128_t, uint256_t, uint512_t, uint1024_t, etc. [BSL-1.0]

Wykobi

A C++ library of efficient, robust and simple to use C++ 2D/3D oriented computational geometry routines. [MIT]

xtensor

A C++14 library for numerical analysis with multi-dimensional array expressions, inspired by NumPy syntax. [BSD 3-clause] website

In 2 lists

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]

In 2 lists

utl::profiler

Singe-header profiler for C++17. [MIT]

XAD

Powerful Automatic Differentiation for C++. [AGPL] website

In 3 lists

geogram

A programming library of geometric algorithms. [BSD-3-Clause]

In 2 lists

std-simd

A portable implementation of std::experimental::simd for C++. [BSD-3-Clause]

libdivide

Optimized integer division for C/C++ using libdivide. [zlib] website

fpsqrt

Fast fixed point and floating point square root for C. [MIT]

fastmod

Header-only fast C/C++ library for computing remainders and modular reductions. [Apache-2.0]

Spectra

A C++ library for large scale eigenvalue problems, built on top of Eigen. [MPL2] website

In 2 lists

FastNoiseSIMD

A library for SIMD-accelerated noise generation functions. [MIT]

Memory Allocation

Boehm GC

Conservative garbage collector for C and C++. [similar to X11] website

In 3 lists

C Smart Pointers

Smart pointers for the (GNU) C programming language. [MIT]

In 3 lists

Hoard

Fast, Scalable, and Memory-efficient Malloc for Linux, Windows, and Mac. [Apache-2.0] website

In 3 lists

jemalloc

General purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support. [BSD] website

In 4 listsDetails

memory

STL compatible C++ memory allocator library. [ZLib]

In 3 lists

memory-allocators

Custom memory allocators to improve the performance of dynamic memory allocation. [MIT]

In 3 lists

mimalloc

A compact general purpose allocator with excellent performance. [MIT]

In 4 listsDetails

rpmalloc

Cross platform lock free thread caching 16-byte aligned memory allocator implemented in C. [PublicDomain]

In 3 lists

snmalloc

Message passing based high-performance allocator. [MIT]

In 2 lists

TCMalloc

Google's fast, multi-threaded malloc implementation. [Apache-2.0] website

In 4 listsDetails

buddy_alloc

A single header buddy memory allocator for C with bounded allocation costs. [0BSD]

In 2 lists

tgc

A tiny garbage collector for C written in ~500 LOC. [BSD]

In 3 lists

Mesh

A memory allocator that automatically reduces the memory footprint of C/C++ applications. [Apache-2.0]

In 2 lists

rpmalloc

A public domain cross-platform lock-free thread-caching 16-byte aligned memory allocator. [PublicDomain]

In 2 lists

TLSF

Two-Level Segregated Fit memory allocator, a general purpose dynamic memory allocator. [BSD]

Multimedia

GStreamer

A library for constructing graphs of media-handling components. [LGPL]

In 6 listsDetails

icey

Real-time media stack and lightweight libwebrtc alternative for RTSP ingest, media processing, signaling, TURN, and browser delivery, built in C++20. [LGPL v2.1+]

In 3 lists

libass

Portable subtitle renderer for the ASS/SSA subtitle format. [ISC]

In 3 lists

libav

A collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata. [LGPL v2.1+ and others] website

In 3 lists

LIVE555 Streaming Media

Multimedia streaming library using open standard protocols (RTP/RTCP, RTSP, SIP). [LGPL]

libVLC

libVLC (VLC SDK) media framework. [GPL]

In 3 lists

MediaInfoLib

Convenient unified display of the most relevant technical and tag data for video and audio files. [BSD]

In 2 lists

QtAv

A multimedia playback framework based on Qt and FFmpeg to write a player easily. [LGPL] website

In 4 listsDetails

SDL

zap: - Simple DirectMedia Layer. [zlib] website

In 4 listsDetails

SFML

zap: - Simple and Fast Multimedia Library. [zlib] website

In 5 listsDetails

TagLib

A library for reading and editing the metadata of several popular audio formats. [LGPL/MPL] website

In 2 lists

Networking

ada

WHATWG-compliant and fast URL parser written in modern C++. [Apache-2.0/MIT]

In 3 lists

ACE

An OO Network Programming Toolkit in C++. [?MIT?]

AGENT++

C++ framework provides a complete tri-lingual SNMP v1/2c/3 protocol engine and dispatcher for the development of SNMP agents. [Apache-2.0]

In 2 lists

Boost.Asio

A cross-platform C++ library for network and low-level I/O programming. [Boost] website

In 2 lists

Boost.Beast

zap: - HTTP and WebSocket built on Boost.Asio in C++11. [Boost] website

In 3 lists

Breep

Event based, high-level C++14 peer-to-peer library. [EUPL-1.1 (OSI approved)]

In 2 lists

C++ REST SDK

C++ REST SDK (previously named Casablanca). [Apache2]

In 3 lists

CZMQ

High-level C binding for ØMQ. [MPL2] website

In 2 lists

Restbed

C++11 Asynchronous RESTful framework. [AGPL]

In 3 lists

Restinio

A header-only C++14 library that gives you an embedded HTTP/Websocket server. [BSD]

In 4 listsDetails

c-ares

A C library for asynchronous DNS requests. [MIT]

In 4 listsDetails

cofetch

Chainable async HTTP client built on libcurl's multi interface and ASIO. Callbacks, coroutines and futures from one implementation. [MIT]

cpp-httplib

A single file C++11 header-only HTTP/HTTPS server library. [MIT]

In 4 listsDetails

cpp-netlib

A collection of open-source libraries for high level network programming. [Boost]

cpp-netlib/uri

URI parser/builder library for C++, compatible with RFC 3986 and RFC 3987. [Boost]

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]

In 3 lists

cpr

A modern C++ HTTP requests library with a simple but powerful interface. Modeled after the Python Requests module. [MIT] website

curlcpp

An object oriented C++ wrapper for CURL(libcurl). [MIT]

curlpp

C++ wrapper around libcURL. [MIT]

In 2 lists

DPDK

Data Plane Development Kit, libraries and drivers for fast packet processing. [BSD-3-Clause & GPL-2.0] website

In 2 lists

ENet

Reliable UDP networking library. [MIT] website

In 4 listsDetails

evpp

C++ high performance networking with TCP/UDP/HTTP protocols. [BSD]

In 5 listsDetails

FTP client for C++

C++ client for making FTP requests. [MIT]

In 2 lists

H2O

An optimized HTTP server with support for HTTP/1.x and HTTP/2. It can also be used as a library. [MIT]

In 3 lists

KCP

A fast and reliable ARQ protocol that helps applications to reduce network latency. [MIT]

In 7 listsDetails

libcurl

Multiprotocol file transfer library. [MIT/X derivate license]

In 2 lists

libhttpserver

C++ library for creating an embedded Rest HTTP server (and more). [LGPL2.1]

In 3 lists

Libmicrohttpd

GNU libmicrohttpd is a small C library that is supposed to make it easy to run an HTTP server as part of another application. [LGPL v2.1+]

In 2 lists

libpcap

A portable C/C++ library for network traffic capture. [BSD] website

In 3 lists

libquic

A QUIC protocol library extracted from Chromium's QUIC Implementation. [BSD]

librdkafka

Apache Kafka client library for C and C++. [BSD-2-Clause]

In 2 lists

libwebsockets

A lightweight pure C WebSocket implementation that provides both client and server libraries. [LGPL2.1 + static link exception] website

In 2 lists

Lithium

Build high performance C++ HTTP servers without being a C++ expert. [MIT]

lwIP

A lightweight TCP/IP stack. [Modified BSD]

mailio

mailio is a cross platform C++ library for MIME format and SMTP, POP3 and IMAP protocols. [BSD]

Mongoose

Extremely lightweight webserver. [GPL2]

In 5 listsDetails

MQTT-C

A portable MQTT C client for embedded systems and PCs alike. [MIT] website

In 5 listsDetails

mTCP

Highly scalable user-level TCP stack for multicore systems. [Modified BSD]

Muduo

A C++ non-blocking network library for multi-threaded server in Linux. [BSD]

In 4 listsDetails

nghttp2

HTTP/2 C Library. [MIT] website

In 2 lists

nghttp3

HTTP/3 library written in C. [MIT] website

In 2 lists

Onion

HTTP server library in C designed to be lightweight and easy to use. [Apache2/GPL2]

In 2 lists

OpenDDS

An open source C++ implementation of the Object Management Group (OMG) Data Distribution Service (DDS). [Apache2]

PF_RING™

High-speed packet processing framework. [LGPL-2.1] website

In 2 lists

PicoHTTPParser

A tiny, primitive, fast HTTP request/response parser. [MIT]

In 3 lists

POCO

zap: - C++ class libraries and frameworks for building network- and internet-based applications that run on desktop, server, mobile and embedded systems. [Boost] website

Proxygen

Facebook's collection of C++ HTTP libraries including an easy to use HTTP server. [BSD]

In 3 lists

RedPanda

Streaming data platform for developers. Kafka API compatible. 10x faster. [BSL]

In 6 listsDetails

RakNet

A cross platform, open source, C++ networking engine for game programmers. [BSD]

In 2 lists

restclient-cpp

Simple REST client for C++. It wraps libcurl for HTTP requests. [MIT]

In 3 lists

Seasocks

Simple, small, C++ embeddable webserver with WebSockets support. [BSD]

In 2 lists

SNMP++

a C++ API which supports SNMP v1/2c/v3. [custom permissive license]

In 2 lists

tlse

Single C file TLS 1.2/1.3 implementation, using tomcrypt as crypto library [BSD-2-Clause]

In 3 lists

TQUIC

A high-performance, lightweight, and cross-platform QUIC library, exposed to C and C++. [Apache2]

In 3 lists

Tufão

An asynchronous web framework for C++ built on top of Qt. [LGPL2]

In 2 lists

uriparser

Strictly RFC 3986 compliant URI parsing and handling library. [BSD-3-Clause]

In 2 lists

uWebSockets

µWS is one of the most lightweight, efficient & scalable WebSocket & HTTP server implementations available. [Zlib]

In 7 listsDetails

UCall

A high-performance SIMD-accelerated RPC library on io_uring. [Apache2]

In 2 lists

WAFer

A C language-based ultra-light software platform for scalable server-side and networking applications. Think node.js for C programmers. [GPL2]

In 4 listsDetails

Wangle

A client/server application framework to build asynchronous, event-driven modern C++ services. [Apache-2.0]

In 2 lists

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]

WebSocket++

C++/Boost Asio based websocket client/server library. [BSD]

In 2 lists

wspp

a zero-dependency single-header, modern WebSocket client & server, ws/wss library. [MIT]

PcapPlusPlus

a multiplatform C++ network sniffing and packet parsing and crafting framework. [Unlicense]

In 4 listsDetails

ZeroMQ

High-speed, modular asynchronous communication library. [LGPL3/MPL2] website

In 4 listsDetails

Zyre

Local Area Clustering for Peer-to-Peer Applications. [MPL2]

In 2 lists

easyhttpcpp

A cross-platform HTTP client library providing a caching facility from Sony. [MIT]

GameNetworkingSockets

Reliable & unreliable messages over UDP by Valve. Connection-oriented API (like TCP). [BSD-3-Clause]

In 5 listsDetails

wepoll

A Windows epoll wrapper based on Winsock. [BSD-2-Clause]

Office Open XML

DuckX

C++ library for creating and modifying Microsoft Word (.docx) files. [MIT]

In 2 lists

FreeXL

an open source library to extract valid data from within Spreadsheets. [MPL/GPL-2/LGPL-2]

In 2 lists

libxls

Read binary Excel files from C/C++ [BSD-2-Clause]

In 2 lists

libxlsxwriter

A C library for creating Excel XLSX files. [BSD-2-Clause] website

In 4 listsDetails

OpenXLSX

A C++ library for reading, writing, creating and modifying Microsoft Excel® (.xlsx) files. [BSD-3-Clause]

In 3 lists

SimpleXlsxWriter

XLSX files writer for Microsoft Excel 2007 and above. [zlib]

In 2 lists

XLSX I/O

C library for reading and writing .xlsx files. [MIT]

In 2 lists

PDF

libharu

A free, cross platform, open-sourced software library for generating PDF. [zlib]

litePDF

Library to create and edit PDF documents that uses GDI functions through a device context to draw the page content. [LGPL v3 and zlib]

MuPDF

A lightweight PDF, XPS, and E-book viewer. [AGPL/Proprietary]

In 3 lists

PDF-Writer

High performance library for creating, modiyfing and parsing PDF files in C++ [Apache-2.0] website

In 2 lists

PDF4QT

PDF toolkit with a rendering and editing library, a viewer and command line tools. [MIT] website

pdfio

A simple C library for reading and writing PDF files. [Apache-2] website

In 2 lists

PDFium

PDF generation and rendering library. [BSD-3-Clause]

PoDoFo

A library to work with the PDF file format. [LGPL]

Poppler

Open-source multi-backend PDF rendering library based on the xpdf-3.0 code base. [GPLv2/GPLv3]

In 2 lists

QPDF

A tool and C++ library for content-preserving transformations of PDF files. [Apache-2.0] website

In 3 lists

Xpdf

Xpdf is a free PDF viewer and toolkit, including a text extractor, image converter, HTML converter, and more. [GPL v2/GPL v3]

DynaPDF

An easy-to-use PDF generation library. [Commercial]

Physics

Box2D

A 2D physics engine for games. [BSD-like]

In 3 lists

Bullet

A 3D physics engine for games. [zlib] website

In 5 listsDetails

Chipmunk

A fast and lightweight 2D game physics library. [MIT] website

In 4 listsDetails

Jolt Physics

A multi core friendly rigid body physics and collision detection library. [MIT]

In 6 listsDetails

Kratos

framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. [BSD] website

In 2 lists

LiquidFun

A 2D physics engine for games. [BSD-like]

In 3 lists

Newton Dynamics

An integrated solution for real time simulation of physics environments. [zlib]

In 3 lists

ODE

Open Dynamics Engine - An open source, high performance library for simulating rigid body dynamics. [BSD&LGPL]

In 2 lists

ofxBox2d

openFrameworks wrapper for Box2D. [BSD-like]

PhysX

An open-source realtime physics engine middleware SDK developed by Nvidia as a part of Nvidia GameWorks software suite. [BSD-3-Clause]

In 2 lists

PlayRho

An interactive physics engine & library. [Zlib]

Project Chrono

An open source multi-physics simulation engine. [BSD-3-Clause] website

In 3 lists

Quantum++

A modern C++11 quantum computing library. [MIT]

In 2 lists

QuarkPhysics

A 2D Soft Body and Rigid Body Physics Engine. [MIT]

Simbody

High-performance C++ multibody dynamics/physics library for simulating articulated biomechanical and mechanical systems like vehicles, robots, and the human skeleton. [Apache2]

In 4 listsDetails

SOFA

SOFA is an open-source framework targeting at real-time simulation, with an emphasis on medical simulation. [LGPL] website

tungsten

A high-performance physically based renderer in C++. [zlib]

In 4 listsDetails

Reflection

config-loader

A C++17 static reflection framework, from parse configuration file to native data structure. [MIT]

In 2 lists

Better Enums

Reflective enums (to string, iteration). Single header. [BSD] website

In 4 listsDetails

clReflect

C++ Reflection using clang. [MIT]

In 2 lists

CPFG

A C++03 library for reflection, callback and script binding. [Apache2]

In 2 lists

CPP-Reflection

C++ Reflection using clang. [MIT]

In 2 lists

Easy Reflection

Easy and fast reflection + serialization solution like in Rust, Java or Go. [Apache]

In 2 lists

Enchantum

modern C++17 header-only library for compile-time enum reflection. [MIT]

Magic Enum

Header-only C++17 library provides static reflection for enums (to string, from string, iteration), work with any enum type without any macro or boilerplate code. [MIT]

In 5 listsDetails

magic_get

std::tuple like methods for user defined types without any macro or boilerplate code. [Boost]

In 2 lists

meta

Header-only, non-intrusive and macro-free runtime reflection system in C++. [MIT]

In 4 listsDetails

Nameof

Header-only C++17 library provides nameof macros and functions to obtain the simple name of variable, type, function, macro, and enum. [MIT]

In 5 listsDetails

REFLECT

C++20 Static Reflection library. [MIT]

In 2 lists

reflect-cpp

Serialization through reflection, including automatic field name retrieval from structs. [MIT]

In 3 lists

RTTR

A C++11 library for reflection. [MIT] website

In 4 listsDetails

simple_enum

An Fast, Intuitive and Type-Safe C++ Enumeration Support Library. [BSL-1.0] website

In 2 lists

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]

In 2 lists

visit_struct

A miniature library for struct-field reflection in C++. [Boost]

In 2 lists

Refureku

A C++17 runtime reflection and code generation library. [MIT]

In 2 lists

Regular Expression

CppVerbalExpressions

C++ regular expressions made easy. [MIT]

CTRE

A Compile time PCRE (almost) compatible regular expression matcher. [MIT]

In 4 listsDetails

Hyperscan

Hyperscan is a high-performance multiple regex matching library by Intel. Provides simultaneous matching of large numbers of regexps (up to tens of thousands). Typically used in a DPI library stack. [BSD]

In 3 lists

Oniguruma

A modern and flexible regular expressions library that supports a variety of character encodings. [BSD]

In 4 listsDetails

PCRE

A regular expression C library inspired by the regular expression capabilities in Perl. [BSD]

PCRE2

a set of C functions that implement regular expression pattern matching. [BSD] website

In 2 lists

PIRE

Perl Incompatible Regular Expressions library by Yandex. Can be really fast (more than 400 MB/s). [LPGL v3.0]

RE2

A software library for regular expressions via a finite-state machine using automata theory. [BSD-3-Clause]

In 4 listsDetails

SLRE

Super Light Regexp engine for C/C++. [GPLv2/Proprietary]

In 2 lists

sregex

A non-backtracking NFA/DFA-based Perl-compatible regex engine library for matching on large data streams. [BSD]

SRELL

Unicode-aware regular expression template library for C++. [BSD]

TRE

The approximate regex matching library and agrep command line tool. [BSD-2-Clause]

In 2 lists

Vectorscan

A portable fork of the high-performance regular expression matching library. [BSD-3-Clause]

Pawn.Regex

A Pawn plugin that provides support for regular expressions using C++11 std::regex. [MIT]

Robotics

FusionCore

ROS 2 UKF sensor fusion library fusing GPS, IMU, and wheel odometry with adaptive noise and outlier rejection for robust outdoor localization. [Apache2]

In 2 lists

MOOS-IvP

A set of open source C++ modules for providing autonomy on robotic platforms, in particular autonomous marine vehicles.

MRPT

Mobile Robot Programming Toolkit. [BSD]

In 3 lists

PCL

Point Cloud Library is a standalone, large scale, open project for 2D/3D image and point cloud processing. [BSD] website

In 5 listsDetails

Robotics Library (RL)

A self-contained C++ library for robot kinematics, motion planning and control. [BSD]

In 2 lists

RobWork

A collection of C++ libraries for simulation and control of robot systems. [Apache2] website

ROS

Robot Operating System provides libraries and tools to help software developers create robot applications. [BSD]

Ruckig

Real-time motion generation for robots and machines. [MIT] website

In 3 lists

YARP (Yet Another Robot Platform)

Library and toolkit for communication and device interfaces. [BSD-3-Clause] website

In 2 lists

SPICE Toolkit

Library and toolkit for computing geometric information used in planning and analyzing science observations obtained from robotic spacecraft. [MIT] website

Scientific Computing

AMGCL

a header-only C++ library for solving large sparse linear systems with algebraic multigrid. [MIT]

In 2 lists

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

FFTW

A C library for computing the DFT in one or more dimensions. [GPL]

GSL

GNU scientific library. [GPL]

In 5 listsDetails

preCICE

Coupling library for partitioned multi-physics simulations (FSI, CHT, and more). [LGPL] website

In 2 lists

TileDB

Fast Dense and Sparse Multidimensional Array DBMS. [MIT] website

In 2 lists

Trilinos

High performance PDE solvers. [BSD]

Torch

A scientific computing framework with wide support for machine learning algorithms that puts GPUs first. [BSD-3-Clause] website

In 5 listsDetails

volesti

High dimensional sampling from truncated distributions, convex optimization and volume computation.

Scripting

AngelScript

AngelScript is a game-oriented interpreted/compiled scripting language. [zlib]

In 2 lists

Boost.Python

A C++ library which enables seamless interoperability between C++ and the Python programming language. [Boost] website

In 2 lists

cppimport

Import C++ files directly from Python! [MIT]

In 2 lists

CppSharp

Tools and libraries to glue C/C++ APIs to high-level languages. [MIT]

In 3 lists

ChaiScript

An easy to use embedded scripting language for C++. [BSD] website

In 4 listsDetails

ctypes.sh

A foreign function interface for bash. [MIT]

In 3 lists

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

In 5 listsDetails

djinni

A tool for generating cross-language type declarations and interface bindings. [Apache2]

In 2 lists

Duktape

An embeddable JavaScript engine with compact footprint. [MIT] website

In 4 listsDetails

JavaCpp

The missing bridge between Java and native C++. [Apache2]

In 5 listsDetails

JerryScript

Ultra-lightweight JavaScript engine for the Internet of Things. [Apache-2.0] website

In 3 lists

libffi

A portable foreign-function interface library. [MIT] website

In 2 lists

Lua

A minimal and fast scripting engine for configuration files and basic application scripting. [MIT]

In 2 lists

LuaBridge

A lightweight, dependency-free library for binding Lua to C++. [MIT]

In 3 lists

LuaBridge3

A lightweight, dependency-free library for binding Lua, LuaJIT, Luau and Ravi to C++. [MIT]

luacxx

C++11 API for creating Lua bindings. [MIT]

Luau

A fast, small, safe, gradually typed embeddable scripting language derived from Lua. [MIT] website

In 2 lists

MicroQuickJS

MicroQuickJS (aka. MQuickJS) is a JavaScript engine targeted at embedded systems. [MIT]

In 2 lists

MiniScript

scripting language modern, elegant, easy to learn, and easy to embed in your own C# or C++ projects. [MIT]

In 2 lists

nanobind

tiny and efficient C++/Python bindings. [BSD-3-Clause]

In 3 lists

nbind

Magical headers that make your C++ library accessible from JavaScript. [MIT]

In 3 lists

PHP-CPP

A library to build PHP extensions with C++. [Apache2] website

In 3 lists

pocketpy

C++17 header-only Python interpreter for game scripting. [MIT] website

In 2 lists

pybind11

Seamless operability between C++11 and Python. [BSD]

In 6 listsDetails

QuickJS

a small and embeddable JavaScript engine. [MIT]

In 2 lists

SIP

C or C++ Bindings Generator for Python v2 and v3. [GPL]

In 2 lists

sol2

A C++ <-> Lua API wrapper with advanced features and top notch performance. [MIT]

In 5 listsDetails

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

In 3 lists

txiki.js

A tiny JavaScript runtime. [MIT]

In 3 lists

V7

An embedded JavaScript engine. [GPL2]

In 4 listsDetails

V8

A fast JavaScript engine by Google that can be embedded into any C++ application. [BSD]

In 2 lists

v8pp

Header-only library to expose C++ classes and functions into V8 to use them in JavaScript code. [BOOST] website

In 3 lists

ChakraCore

A JavaScript engine by Microsoft that can be embedded into nodejs. [MIT]

MuJS

An embeddable Javascript interpreter in C. [ISC] website

hobbes

A language and an embedded JIT compiler from Morgan Stanley. [Apache-2.0]

Serialization

BitSerializer

Multi-format serialization library (JSON, XML, YAML, CSV, MsgPack) [MIT]

Bitsery

Header only C++ binary serialization library. [MIT]

Bond

An open source, cross-platform framework for working with schematized data. [MIT]

In 4 listsDetails

Boost.Serialization

Boost Serialization Library. [Boost] website

Cap'n Proto

Fast data interchange format and capability-based RPC system. [MIT] website

In 5 listsDetails

cereal

A C++11 library for serialization. [BSD]

In 5 listsDetails

cista

A C++17 library for zero-copy high-performance (de-)serialization. [MIT]

In 5 listsDetails

cppcodec

Header-only C++11 library to encode/decode base64, base32 and hex with consistent, flexible API. [MIT]

In 3 lists

FastBinaryEncoding

Fast Binary Encoding is ultra fast and universal serialization solution for C++, C#, Go, Java, JavaScript, Kotlin, Python, Ruby, Swift. [MIT]

In 2 lists

FlatBuffers

A Memory efficient serialization library. [Apache2]

In 9 listsDetails

Kaitai Struct

A declarative language to describe various binary data structures and a compiler to generate C++ parser code. [GPLv3+][MIT][Apache2]

iguana

a modern, universal and easy-to-use serialization engine developed in C++20 and C++17. [Apache2]

MessagePack

Efficient binary serialization format "like JSON" for C and C++. [Apache2] website

mrpt-serialization

Versioned serialization to binary or text formats. [BSD] website

nanopb

Small code-size Protocol Buffers implementation in ANSI C. [Zlib]

In 4 listsDetails

protobuf

Protocol Buffers - Google's data interchange format. [BSD]

In 9 listsDetails

protobuf-c

Protocol Buffers implementation in C. [BSD]

In 3 lists

Protocol Puffers

A little, highly templated, and protobuf-compatible serialization/deserialization header-only library written in C++20. [Apache-2.0]

SimpleBinaryEncoding

encoding and decoding application messages in binary format for low-latency applications. [Apache2]

In 6 listsDetails

upb

A small protobuf implementation in C. [BSD]

In 2 lists

Wirehair

O(N) Fountain Code for Large Data. [BSD-3-Clause]

YAS

Very fast Yet Another Serialization library supports the binary/text/json formats. [Boost]

In 2 lists

zpp_bits

Actually, the fastest modern Serialization library. Just check this video.

fbthrift

Facebook's branch of Apache Thrift, including a serialization library and RPC framework. [Apache-2.0]

In 2 lists

Serial Port

Asio

A cross-platform C++ library for network and low-level I/O programming that provides developers with a consistent asynchronous model using a modern C++ approach. [Boost] website

In 4 listsDetails

Boost.Asio

A cross-platform C++ library for network and low-level I/O programming. [Boost] website

In 2 lists

CSerialPort

lightweight cross-platform serial port library. [LGPL3]

Libserial

Serial Port Programming in C++. [BSD-3-Clause]

Serial Communication Library

Cross-platform, Serial Port library written in C++. [MIT] website

In 2 lists

Sorting

cpp-sort

Sorting algorithms & related tools for C++14. [MIT]

pdqsort

Pattern-defeating quicksort. [zlib]

Timsort

A templated stable sorting function which outperforms quicksort-based algorithms including std::sort, for reversed or semi-sorted data. [MIT]

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

x86-simd-sort

C++ template library for high performance SIMD based sorting algorithms. [BSD-3-Clause]

Video

libvpx

VP8/VP9 Codec SDK. [BSD]

In 2 lists

FFmpeg

A complete, cross-platform solution to record, convert and stream audio and video. [LGPL2/GPL2]

In 14 listsDetails

avcpp

Modern C++ wrapper around FFmpeg. [MIT]

In 2 lists

libde265

Open h.265 video codec implementation. [LGPL] website

In 3 lists

x265

Open h.265 video codec implementation. [GPL2] website

In 2 lists

OpenH264

Open Source H.264 Codec. [BSD] website

In 4 listsDetails

Theora

A free and open video compression format. [BSD]

In 2 lists

Vireo

A lightweight and versatile video processing library by Twitter. [MIT]

In 3 lists

libuvc

A cross-platform library for USB video devices. [BSD]

Virtual Machines

CarpVM

"interesting" VM in C. Let's see how this goes. [GPLv3]

In 2 lists

MicroPython

Aims to put an implementation of Python 3.x on a microcontroller. [MIT]

In 7 listsDetails

TinyVM

A small, fast, lightweight virtual machine written in pure ANSI C. [MIT]

In 2 lists

Web Application Framework

aeronet

High-performance, modular C++ HTTP/1.1, HTTP/2 and WebSocket microservices framework focused on performance and scalability. [MIT]

Civetweb

Provides easy to use, powerful, C/C++ embeddable web server with optional CGI, SSL and Lua support. [MIT]

In 3 lists

C++ REST SDK

C++ REST SDK (previously named Casablanca). [Apache2]

In 3 lists

CppCMS

A Free High Performance Web Development Framework (not a CMS). [LGPLv3]

Crow

Crow is a C++ microframework for running web services. It uses routing similar to Python's Flask. [BSD] website

In 3 lists

Cutelyst

A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. [BSD-3-Clause] website

In 2 lists

Drogon

A C++17/20 based, high-performance HTTP application framework. [MIT]

In 2 lists

C++ wfrest

C++ Web Framework REST API. [Apache2]

In 2 lists

facil.io

Evented, high performance C web framework supporting HTTP, WebSockets, SSE and more. [MIT] website

In 3 lists

Kore

ultra fast and flexible web server / framework for web applications developed in C. [ISC]

In 3 lists

libOnion

lightweight library to help you create webservers in C programming language. [LGPLv3]

In 2 lists

lwan

Experimental, scalable, high performance HTTP server. [GPL2]

In 4 listsDetails

Mach

A modern C++20 web framework focused on performance, type safety, and developer experience. [MIT] website.

oat++

Light, zero-dependency framework to create high-performance web-services. [Apache-2.0] website

In 4 listsDetails

Pistache

Pistache is a C++ REST framework written in pure C++11 with no external dependency. [Apache2]

In 2 lists

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]

In 2 lists

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

In 3 lists

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

In 3 lists

Wt

A C++ library for developing web applications. [GPL/Proprietary]

httpserver.h

A single-header HTTP server library for C. [MIT]

In 2 lists

libhttp

A cross-platform HTTP and HTTPS library in C/C++. [MIT]

XML

Boost.PropertyTree

A property tree parser/generator that can be used to parse XML/JSON/INI/Info files. [Boost] website

Expat

An XML parser library written in C. [MIT]

Libxml2

The XML C parser and toolkit of Gnome. [MIT]

libxml++

An XML Parser for C++. [LGPL2]

Mini-XML

A small XML parsing library written in ANSI C. [LGPL2 with exceptions]

PugiXML

A light-weight, simple and fast XML parser for C++ with XPath support. [MIT]

RapidXml

An attempt to create the fastest XML parser possible, while retaining useability, portability and reasonable W3C compatibility. [Boost]

TinyXML

A simple, small, minimal, C++ XML parser that can be easily integrating into other programs. [zlib]

TinyXML2

A simple, small, efficient, C++ XML parser that can be easily integrating into other programs. [zlib]

In 3 lists

TinyXML++

A completely new interface to TinyXML that uses MANY of the C++ strengths. Templates, exceptions, and much better error handling. [MIT]

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

Xerces-C++

A validating XML parser written in a portable subset of C++. [Apache2]

Yaml

fkYAML

A C++ header-only YAML library. [MIT]

LibCYAML

C library for reading and writing YAML. [ISC]

libfyaml

A fancy 1.2 YAML and JSON parser/writer. [MIT]

LibYAML

A C library for parsing and emitting YAML. [MIT] website

In 2 lists

mini-yaml

Single header YAML 1.0 C++11 serializer/deserializer. [MIT]

rapidyaml

Rapid YAML is a C++ library to parse and emit YAML. [MIT]

yaml-cpp

A YAML parser and emitter in C++. [MIT]

In 2 lists

Miscellaneous

access_profiler

A tool to count accesses to member variables in c++ programs. [GPL3]

American fuzzy lop

a.k.a. afl-fuzz - Crazy fuzzing tool that automatically discovers bugs given time and minimal example input. [Apache2]

In 2 lists

Argon2

The password hash Argon2, winner of PHC. [CC0/Apache2]

In 2 lists

AsmJit

Low-latency machine code generation. [Zlib] website

In 2 lists

Better String

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

An implementation of a managed signals and slots system. [Boost] website

casacore

A set of c++ core libraries derived from aips++. [LGPL]

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

Cool cheat sheets and infographics for algorithms, views, containers, randomness, etc.

Concord

A Discord API wrapper library written in C. [MIT] website

In 3 lists

CPPItertools

Range-based for loop add-ons inspired by the Python builtins and itertools library. [BSD-2-Clause]

In 2 lists

CPP-JWT

JSON Web Token library for C++. [MIT]

cpp-lazy

a fast and easy lazy evaluation library for C++11/14/17/20. [MIT]

CRCpp

Easy to use and fast C++ CRC library. [BSD-3-Clause]

cxx-prettyprint

A pretty printing library for C++ containers. [Boost]

In 3 lists

date

A date and time library based on the C++11/14/17 header. [MIT] website

In 2 lists

D++ (DPP)

A lightweight, high performance and scalable C++ library for creating Discord Bots. [Apache2] website

In 2 lists

Dragonbox

Reference implementation of a new float-to-string conversion algorithm in C++. [Apache2/BSL-1.0]

DynaMix

A library which allows you to compose and modify objects at run time. [MIT]

emio

A safe and fast high-level and low-level character input/output library. [MIT]

In 3 lists

faker-cxx

C++20 Faker library for generating fake (but realistic) data for testing and development. [MIT]

In 2 lists

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]

In 2 lists

FastFormat

Fast, Safe C++ Formatting inspired by log4j and Pantheios. [Simplified BSD]

fast_io

Significantly faster input/output for C++20. [MIT]

fccf

A command-line tool that recursively searches a directory to find C/C++ source code matching a search string. [MIT]

ffc.h

Single-header c99 accelerated float/double parsing. Port of the fast_float library. [Apache-2.0/BSL-1.0/MIT]

{fmt}

zap: - Small, safe and fast formatting library for C++. [Simplified BSD] website

In 5 listsDetails

gcc-poison

A simple header file for developers to ban unsafe C/C++ functions from applications.

Gear-Lib

A collection of basic libraries in POSIX C for embedded and network service development. [MIT]

In 2 lists

happly

A C++ header-only parser for the PLY file format. Parse .ply happily! [MIT]

hedley

A C/C++ header file designed to smooth over some platform-specific annoyances. website

In 2 lists

Hexi

Header-only, lightweight C++ library for binary streaming & serialization. [Apache-2.0/MIT]

HighwayHash

Fast strong hash functions: SipHash/HighwayHash. [Apache-2.0]

In 2 lists

inja

A Template Engine for Modern C++. [MIT]

In 3 lists

Jinja2С++

almost full-conformance template engine implementation. website

jwt-cpp

A header only library for creating and validating JSON web tokens in C++. [MIT]

In 2 lists

Kangaru

A dependency injection container for C++11 and C++14. [MIT]

Klib

Small and lightweight implementations of common algorithms and data structures. [MIT]

In 2 lists

KOMIHASH

Very fast, high-quality hash function, discrete-incremental and streamed hashing-capable. [MIT]

libcpuid

A small C library for x86 CPU detection and feature extraction. [BSD]

libenvpp

A modern C++ library for type-safe environment variable parsing. [Apache-2.0]

libevil

The Evil License Manager. [GPLv3]

libnih

A lightweight library of C functions and structures. [GPL2.1]

In 2 lists

libONVIF

Yet another ONVIF library. [GPL-3.0]

libpopcnt

Fast C/C++ bit population count library. [BSD-2-Clause]

libsigc++

A typesafe callback system for standard C++. [LGPL] website

libusb

A universal USB library which allows for portable access to USB devices. [LGPL2]

In 2 lists

Mach7

A Pattern-matching library for C++. [BSD]

In 2 lists

minja.hpp

A minimalistic C++ Jinja templating engine for LLM chat templates. [MIT]

mio

Cross-platform C++11 header-only library for memory mapped file IO. [MIT]

In 2 lists

MPark.Variant

C++17 std::variant for C++11/14/17. [BSL-1.0]

MPH

C++20 [Minimal] Static Perfect Hash library. [MIT]

Patternia

Providing pattern matching for modern c++. [MIT] website

PEGTL

The Parsing Expression Grammar Template Library. [MIT]

In 2 lists

Pipes

Pipelines for expressive code on collections in C++. [MIT]

pprint

Pretty Printer for Modern C++. [MIT]

In 3 lists

pspsdk

An open-source SDK for PSP homebrew development. [BSD/GNU GPL3]

In 2 lists

QtVerbalExpressions

This Qt lib is based off of the C++ VerbalExpressions library. [MIT]

In 2 lists

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

Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] website

rapidhash

Very fast, high quality, platform-independent hashing algorithm. [BSD-2-Clause]

Reaction

A lightweight, header-only reactive programming framework leveraging modern C++20 features for building efficient dataflow applications. [MIT]

reproc

A cross-platform (C99/C++11) process library. [MIT]

SafetyHook

C++23 procedure hooking library. [BSL-1.0]

scnlib

scanf for modern C++. [Apache-2.0] website

In 2 lists

Scintilla

A free source code editing component. [MIT]

SDS

Simple Dynamic Strings library for C. [BSD]

In 3 lists

semver.c

A semver parser and render in ANSI C. [MIT]

sigslot

C++ Signal/Slot Library. [PublicDomain]

SIMD Everywhere

Implementations of SIMD instruction sets for systems which don't natively support them. [MIT]

In 3 lists

SLJIT

Platform independent low-level JIT compiler. [BSD] website

In 2 lists

palacaze/sigslot

A simple, header only, C++14 signal-slots implementation [MIT]

simdzone

Fast and standards compliant DNS zone parser. [BSD-3-Clause]

SimpleSignal

High performance C++11 signals. [PublicDomain]

single_file_libs

C/C++ open-source libraries with minimal dependencies. [Various]

Spicy

C++ parser generator for dissecting protocols & files. [BSD] website

Stage

Mobile robot simulator. [GPL2]

stb-image

STB single-header image loading library. [Public Domain]

In 8 listsDetails

stdman

A tool that parses archived HTML files from cppreference and generates groff-formatted manual pages for Unix-based systems. [MIT]

In 2 lists

StringZilla

the Godzilla of string libraries, splitting, sorting, and shuffling large textual datasets faster than you can say "Tokyo Tower". [Apache-2.0]

In 6 listsDetails

StrTk

A C++ library consisting of high performance string processing routines. [MIT]

tgbotxx

Telegram Bot C++ Library. [MIT]

The RaBitQ Library

A lightweight library for the RaBitQ algorithm. [Apache-2.0] website

tiny::optional

Replacement for std::optional that does not waste memory unnecessarily. [BSL-1.0]

Tulip Indicators

A C library of over 100 financial technical analysis indicators. [LGPL]

In 2 lists

ub-canaries

A collection of C/C++ programs that try to get compilers to exploit undefined behavior.

value-category-cheatsheet

A PDF cheatsheet for lvalues, rvalues, and the like. [Jank copyleft]

VarTypes

A feature-rich, object-oriented framework for managing variables in C++ / Qt4. [LGPL]

Wildcards

A simple C++ header-only template library implementing matching using wildcards. [BSL-1.0]

In 2 lists

xjb

A fast float to string algorithm. [Apache-2.0]

xxHash

Extremely fast non-cryptographic hash algorithm. [BSD-2-Clause] website

In 4 listsDetails

xxhash_cpp

Port of the xxhash library to C++17. [BSD-2-Clause]

ZBar

A barcode scanner library, which allows to scan photos/images/video streams for barcodes and return their value. [LGPL2]

In 2 lists

ZXing

An open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. [Apache]

In 7 listsDetails

spy

A C++17 constexpr library for detecting OS, compiler, architecture, and SIMD at compile time. [MIT]

licensepp

A software license management library for C++ projects. [Apache-2.0]

tinydir

A lightweight, portable, and easy to integrate C directory and file reader. [BSD-2-Clause]

In 3 lists

Cello

Higher level programming in C, including generic data structures and polymorphism. [BSD-2-Clause] website

In 2 lists

dyno

A C++ library for runtime polymorphism with value semantics. [Boost]

PolyHook

A C++ x86/x64 hooking library. [MIT]

In 2 lists

Verdigris

A header-only library that allows using Qt without the need for moc. [MIT]

In 2 lists

Flicks

A unit of time defined by Facebook/Oculus for exact representation of common frame rates. [BSD]

Linq

Provides a LINQ syntax for list comprehension in C++. [Boost]

libcorrect

A C library for convolutional codes and Reed-Solomon error correction. [BSD-3-Clause]

libfsm

A library for building and executing finite state machines, including regex and glob. [BSD-2-Clause]

origin

A C++ library for concepts, diagnostics, and other foundational utilities.

Compiler

8cc

A Small C Compiler.

In 2 lists

c

Compile and execute C "scripts" in one go! [MIT]

In 3 lists

Clang

A C compiler for LLVM. Supports C++11/14/1z C11. Developed by LLVM Team. [NCSA]

In 3 lists

Fil-C

a fanatically compatible memory-safe implementation of C and C++.

GCC

GNU Compiler Collection. Supports C++11/14/1z C11 and OpenMP. [GNU GPL3]

In 5 listsDetails

PCC

A very old C compiler. Supports C99.

AMD C++ Compiler

Developed by AMD.

Intel C++ Compiler

Developed by Intel.

In 2 lists

LLVM

Collection of modular and reusable compiler and toolchain technologies.

In 3 lists

Microsoft Visual C++

MSVC, developed by Microsoft.

Open WatCom

Watcom C, C++, and Fortran cross compilers and tools. [Sybase Open Watcom Public License]

Oracle Solaris Studio

C, C++ and Fortran compiler for SPARC and x86. Supports C++11. Available on Linux and Solaris. [OTN Developer License]

TCC

Tiny C Compiler. [LGPL]

In 2 lists

sierra

A CISC-oriented programming language focused on creating maintainable programs.

movfuscator

The single instruction C compiler, compiling programs into only mov instructions. [MIT]

Online Compiler

codechef

A simple online compiler CodeChef.

coliru

Online compiler/shell with support for various C++ compilers.

Compiler Explorer

An interactive compiler with assembly output available.

CompileOnline

Compile and Execute C++ online on Linux.

Ideone

An online compiler and debugging tool which allows you to compile source code and execute it online in more than 60 programming languages.

In 3 lists

OneCompiler

An online compiler supporting over 70 programming languages and database systems.

In 4 listsDetails

Programiz

An online compiler for learners and developers.

repl.it

A powerful yet simple tools and platforms for educators, learners, and developers.

In 2 lists

Rextester

Online compiler which provides several compilers(Clang, GCC, MSVC) and several editors.

Try It Online

TIO is a family of online interpreters for an evergrowing list of practical and recreational programming languages.

In 3 lists

Wandbox

An online Clang/GCC compiler with Boost available.

paiza.io

An online C/C++ compiler with multiple files supporting feature, GitHub(gist) integration and collaborative editing.

InterviewBit

A simple and easy to use online C++ compiler.

Debugger

Comparison of debuggers

A list of Debuggers from Wikipedia.

GDB

GNU Debugger.

In 5 listsDetails

LLDB

The LLDB Debugger.

In 2 lists

Metashell

An interactive template metaprogramming shell which includes the MDB metadebugger.

Valgrind

A tool for memory debugging, memory leak detection, and profiling.

In 4 listsDetails

x64dbg

An open-source x64/x32 debugger for windows.

In 3 lists

Integrated Development Environment

Anjuta DevStudio

The GNOME IDE. [GPL3]

AppCode

an IDE for Objective-C, C, C++, and JavaScript development built on JetBrains’ IntelliJ IDEA platform.

In 3 lists

Cevelop

Cross-platform C and C++ IDE based on Eclipse CDT with additional plug-ins.

CLion

Cross-platform C and C++ IDE from JetBrains.

In 3 lists

Code::Blocks

A free C, C++ and Fortran IDE.

In 2 lists

CodeLite

Another cross-platform, free C and C++ IDE. [GPL2 with an exception for plugins]

In 2 lists

Dev-C++

A portable C/C++/C++11 IDE.

Eclipse CDT

A fully functional C and C++ IDE based on the Eclipse platform.

Embarcadero Dev-CPP

A fork of Dev-C++ that comes preinstalled with new themes and modern compilers. [GPLv2] website

Geany

Small, fast, cross-platform IDE. [GPL]

In 8 listsDetails

IBM VisualAge

A family of computer integrated development environments from IBM.

Irony-mode

A C/C++ minor mode for Emacs powered by libclang.

In 2 lists

juCi++

Cross-platform, lightweight C++ IDE with libclang integration. [MIT]

KDevelop

A free, open source IDE.

In 5 listsDetails

Microsoft Visual Studio

An IDE from Microsoft.

In 3 lists

Microsoft Visual Studio Code

zap: - An open-source IDE from Microsoft. [MIT] website

In 13 listsDetails

NetBeans

An IDE for developing primarily with Java, but also with other languages, in particular PHP, C/C++, and HTML5.

In 7 listsDetails

Qt Creator

zap: - A cross-platform C++, JavaScript and QML IDE which is part of the SDK for Qt. [GPL3 with exceptions] website

In 2 lists

rtags

A c/c++ client/server indexer with for integration with emacs based on clang.

In 3 lists

Xcode

Developed by Apple.

In 5 listsDetails

YouCompleteMe

YouCompleteMe is a fast, as-you-type, fuzzy-search code completion engine for Vim.

In 3 lists

C Playground - Online C Programming IDE

An online IDE to practice C Programming where you can write, edit, and run code online.

Build Systems

awesome-cmake

A curated list of awesome CMake scripts, modules, and resources.

In 3 listsDetails

Bazel

A multi-language, fast and scalable build system from Google. [Apache]

In 2 lists

Bear

A tool to generate compilation database for clang tooling. [GPLv3]

In 2 lists

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]

In 2 lists

build2

cross-platform build, packaging and dependency management toolchain for developing and packaging C/C++ projects. [MIT]

Ccache

A fast C/C++ compiler cache. [GPLv3]

In 2 lists

clib

Package manager for the C programming language. [MIT]

In 3 lists

CMake

Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD]

In 6 listsDetails

Cget

Cmake package retrieval. [Boost] website

In 2 lists

Conan

C/C++ Package Manager, open sourced. [MIT]

In 3 lists

CPM

A C++ Package Manager based on CMake and Git.

In 3 lists

FASTBuild

High performance, open-source build system supporting highly scalable compilation, caching and network distribution.

Hunter

CMake driven cross-platform package manager for C++. [BSD-2]

In 2 lists

MesonBuild

An open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible.

In 3 lists

Ninja

A small build system with a focus on speed.

In 2 lists

Sccache

A fast compiler cache for C/C++, with cross-platform support and cloud backed storage options.

In 2 lists

Scons

A software construction tool configured with a Python script.

In 3 lists

Sconsolidator

Scons build system integration for Eclipse CDT.

Spack

A flexible package manager that supports multiple versions, configurations, platforms, and compilers. [Apache-2.0/MIT]

In 4 listsDetails

SW

Cross-platform C++ (and other langs) Build System and Package Manager with a lot of packages available. [GPLv3]

tundra

High-performance code build system designed to give the best possible incremental build times even for very large software projects.

In 2 lists

tup

File-based build system that monitors in the background for changed files.

Premake

A tool configured with a Lua script to generate project files for Visual Studio, GNU Make, Xcode, Code::Blocks, and more across Windows, Mac OS X, and Linux.

In 3 lists

Vcpkg

C++ library manager for Windows, Linux, and MacOS. [MIT]

In 3 lists

waf

Python-based framework for configuring, compiling and installing applications. [BSD] website

XMake

A C/C++ cross-platform build utility based on Lua that comes with an integrated package manager, xrepo. [Apache]

In 3 lists

boost-cmake

CMake modules for Boost libraries. [BSD-3-Clause]

cmake-examples

A collection of useful CMake examples for various scenarios. [MIT]

In 2 lists

Static Code Analysis

Cppcheck

A tool for static C/C++ code analysis. - source

CppDepend

Simplifies managing a complex C/C++ code base by analyzing and visualizing code dependencies, by defining design rules, by doing impact analysis, and comparing different versions of the code.

In 2 lists

cpplint

A C++ style checker following Google's C++ style guide.

In 2 lists

PVS-Studio

A tool for bug detection in the source code of programs, written in C, C++ and C#.

cpp-dependencies

Tool to check C++ #include dependencies (dependency graphs created in .dot format). [Apache]

In 2 lists

include-what-you-use

A tool for use with clang to analyze includes in C and C++ source files. website

In 3 lists

Infer

A static analyzer for Java, C and Objective-C. [BSD]

In 5 listsDetails

OCLint

A static source code analysis tool to improve quality and reduce defects for C, C++ and Objective-C. - source

Clang Static Analyzer

A source code analysis tool that finds bugs in C, C++, and Objective-C programs.

Linticator

Eclipse CDT integration of Pc-/FlexeLint.

IKOS

Static analyzer for C/C++ based on the theory of Abstract Interpretation. [NOSA 1.3]

In 2 lists

List of tools for static code analysis

A list of tools for static code analysis from Wikipedia.

In 2 lists

OptView2

Inspect missed Clang optimizations.

Trunk

Toolkit to check, test, merge, and monitor code.

In 2 lists

CodeCompass

An open-source code comprehension tool for large C/C++ projects. [GPL-3.0]

CodeChecker

An analyzer tooling, defect database and viewer extension for the Clang Static Analyzer and Clang-Tidy. [Apache-2.0]

Coding Style Tools

Artistic Style

A tool to format C/C++/C#/Obj-C/Java code. Also known as astyle.

ClangFormat

A tool to format C/C++/Obj-C code.

In 2 lists

Clang-Tidy

Clang-based C++ linter tool.

EditorConfig

EditorConfig helps maintain consistent coding styles across different editors and IDEs.

Uncrustify

Code beautifier.

API Design

Beautiful Native Libraries

Designing Qt-Style C++ APIs

Articles

CppCon 2023 Presentation Materials

CppCon 2023 Presentation Materials.

CppCon 2022 Presentation Materials

CppCon 2022 Presentation Materials.

CppCon 2021 Presentation Materials

CppCon 2021 Presentation Materials.

CppCon 2020 Presentation Materials

CppCon 2020 Presentation Materials.

In 2 lists

CppCon 2019 Presentation Materials

CppCon 2019 Presentation Materials.

CppCon 2018 Presentation Materials

CppCon 2018 Presentation Materials.

In 2 lists

CppCon 2017 Presentation Materials

CppCon 2017 Presentation Materials.

CppCon 2016 Presentation Materials

CppCon 2016 Presentation Materials.

In 2 lists

CppCon 2015 Presentation Materials

CppCon 2015 Presentation Materials.

In 2 lists

CppCon 2014 Presentation Materials

CppCon 2014 Presentation Materials.

In 2 lists

C++Now 2023 Presentations

Presentation materials presented at C++Now 2023.

C++Now 2022 Presentations

Presentation materials presented at C++Now 2022.

C++Now 2021 Presentations

Presentation materials presented at C++Now 2021.

C++Now 2019 Presentations

Presentation materials presented at C++Now 2019.

C++Now 2018 Presentations

Presentation materials presented at C++Now 2018.

C++Now 2017 Presentations

Presentation materials presented at C++Now 2017.

C++Now 2016 Presentations

Presentation materials presented at C++Now 2016.

C++Now 2015 Presentations

Presentation materials presented at C++Now 2015.

C++Now 2014 Presentations

Presentation materials presented at C++Now 2014.

C++Now 2013 Presentations

Presentation materials presented at C++Now 2013.

C++Now 2012 Presentations

Presentation materials presented at C++Now 2012.

cpp17_in_TTs

Descriptions of C++17 features, presented mostly in "Tony Tables".

All C++20 core language features with examples

A reference of all C++20 core language features with examples.

Memory Footprint of GUI Toolkits

A comparison of the memory footprint of various GUI toolkits.

C++ UI Libraries

A comprehensive list of C++ UI solutions.

In 2 lists

C++ Compilation

A short description of the C++ compilation process.

Books on C++17

A list of books on C++17.

modern-cpp-features

A cheatsheet of modern C++ language and library features.

In 2 lists

Choosing Some C++ Over C

An article about when to use C++ instead of C.

C++ 17 Features

A comprehensive list of C++17 features.

Master C Programming with Open Source Books

A curated list of open source books for learning C programming.

Books

Free C Books

vhf/free-programming-books/C.

In 7 listsDetails

Practical Guide to Bare Metal C++

cppbestpractices

Collaborative Collection of C++ Best Practices.

Coding Standards

Cert C++

Misra C++ 2008

Autosar C++ 2014

F-35 Fighter Jet's C++ Coding Standards

Coding Style

C++ Core Guidelines

"Official" set of C++ guidelines, reviewed by the author of C++.

In 5 listsDetails

C++ Dos and Don'ts

The Chromium Projects > For Developers > Coding Style > C++ Dos and Don'ts.

google-styleguide

Style guides for Google-originated open-source projects.

In 4 listsDetails

Google C++ Style Guide

C++ coding standards and best practices.

In 5 listsDetails

GNU Coding Standard

Linux kernel coding style

In 2 lists

LLVM Coding Standards

Coding standards for the LLVM project.

In 2 lists

Podcasts

CppCast

The first podcast by C++ developers for C++ developers.

CppChat

A (sometimes) weekly look at what's going on in the world of C++ chatting with a guest from the community.

Talks

C++ Conferences

Catalog of C++ conferences

CppCon Talks

zap: - The C++ conference.

In 2 lists

Quick game development with C++11/C++14

CppCon 2014 talk by Vittorio Romeo.

Presentation on Hana for C++Now 2015

Meeting Cpp

Meeting C++ YouTube Channel

Videos

Awesome C Programming Tutorials in Hi Def [HD]

A collection of detailed C Programming Language Tutorials for Beginners and New Programmers.

C++

by VoidRealms.

C++ Qt Programming

by VoidRealms.

C++ Programming Tutorials Playlist

TheNewBoston Official Buckys C++ Programming Tutorials Playlist.

C++ Programming Tutorials from thenewboston

These are all of thenewboston's C++ programming tutorials.

C++ GUI with Qt Playlist

Official Playlist for thenewboston C++ GUI with Qt tutorials.

Caleb Curry's C Programming Tutorials

An all-in-one playlist of tutorials for C programming.

C Programming Tutorials

All of TheNewBoston's C programming tutorials are right here.

Bo Qian's playlist

Boost Library, C++ Standard Library, Modern C++, Advanced C++, Advanced STL, ...

The Cherno's C++ Playlist

Extensive C++ tutorial series by The Cherno.

Code for Yourself C++ Playlist

A complete C++ course covering everything from fundamentals to software design.

Websites

Standard C++

zap: - News, Status & Discussion about Standard C++.

Build Bench

Compare C++ Builds.

Quick Bench

Quick C++ Benchmarks.

In 2 lists

CppCon

The C++ Conference.

In 2 lists

C++ reference

A complete online reference for the C and C++ languages and standard libraries.

cppstat

A site that lists C++ features and their support by compilers and standard library implementations in an accessible way.

C++ by Example

Learn C++ by Example.

cplusplus.com

The C++ Resources Network.

C FAQ

C frequently asked questions.

C++ FAQ

C++ frequently asked questions.

C++ FQA Lite

C++ frequently questioned answers.

C++ Quiz

A simple online quiz that you can use to test your knowledge of the C++ programming language.

Guru of the Week

A regular series of C++ programming problems created and written by Herb Sutter.

Meeting C++

PVS-Studio’s challenge

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

In 2 lists

C++ Hints

Every business day hints about most often C++ mistakes and ways to solve them from PVS-Studio Team.

C++ tutorial

A user ranked online tutorial bank site displaying multiple courses to learn C++ from.

In 2 lists

C++ Tutorial for Beginners

A comprenhensive tutorial on C++ curated by trained experts.

In 2 lists

C++ for yourself

A comprehensive tutorial on modern C++ covering everything from fundamentals to software design.

CompileBytes C++ Compiler

Online C++ compiler and interactive code execution environment.

C++ Resources

A collection of C++ resources including books, articles, and tools.

CppPatterns

A repository of modern C++ patterns and idioms. website

In 2 lists

Function Pointers

A guide to understanding function pointers in C/C++.

Weblogs

Coding For Speed

Coding For Speed DOT COM, Less Execution Time.

Eric Niebler

In 2 lists

Sticky Bits

Paul Fultz II's Blog

ridiculousfish

Will It Optimize?

Embedded in Academia

Simplify C++

by Arne Mertz

In 2 lists

Fluent C++

by Jonathan Boccara

In 3 lists

Bartek's Coding Blog

Kenny Kerr

Sutter’s Mill

Vorbrodt's C++ Blog

by Martin Vorbrodt

In 2 lists

foonathan::blog()

by Jonathan Müller

In 2 lists

C++ Team Blog

Dev blog from the Microsoft Visual C++ team

Other Awesome Projects

algorithms

Algorithms & Data Structures in C++.

In 2 lists

c-algorithms

C algorithms library.

In 2 lists

30 Seconds of C++

30 Seconds of C++ (STL in C++). Read More about 30C++ here 👉 (archived)

In 2 lists

awesome-ld-preload

A curated list of resources related to LD_PRELOAD.

In 2 lists

awesome-static-analysis

A curated list of static analysis tools for all programming languages.

In 3 lists

cpp_functional_programming

A list of materials and links for C++ functional programming.

algorithms_and_data_structures

Implementation of algorithms and data structures in C++.

In 3 lists
See category
94

Awesome Rust

rust-unofficial/awesome-rust

A curated list of Rust code and resources.

Fresh★ 60k1833 entriesPushed today
94

Awesome Mac

jaywcjlove/awesome-mac

 This project is dedicated to collecting high-quality macOS software and organizing them systematically by different categories for easy search and use.

Fresh★ 115k1316 entriesPushed today
94

Awesome Python

vinta/awesome-python

Curated Python frameworks, libraries and resources.

Fresh★ 324k504 entriesPushed today
94

Awesome Go

avelino/awesome-go

Curated Go frameworks and libraries.

Fresh★ 186k3119 entriesPushed yesterday
94

Awesome PHP

ziadoz/awesome-php

A curated list of amazingly awesome PHP libraries, resources and shiny things.

Fresh★ 33k87 entriesPushed 2 days ago
93

Awesome Java

akullpp/awesome-java

A curated list of awesome frameworks, libraries and software for the Java programming language.

Fresh★ 49k924 entriesPushed 6 days ago