User Experience on mobile might not be great yet, but I'm working on it.

Your first time on this page? Allow me to give some explanations.

Awesome C/C++

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

Here you can see meta information about this topic like the time we last updated this page, the original creator of the awesome list and a link to the original GitHub repository.

Last Update: Oct. 27, 2021, 12:05 p.m.

Thank you fffaraz & contributors
View Topic on GitHub:
fffaraz/awesome-cpp

Search for resources by name or description.
Simply type in what you are looking for and the results will be filtered on the fly.

Further filter the resources on this page by type (repository/other resource), number of stars on GitHub and time of last commit in months.

Standard Libraries

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

A specification of a C standard library for POSIX systems.

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

Frameworks

Abseil Common Libraries (C++)

8.1K
1.5K
8m
Apache-2.0

Basic Development Environment - a set of foundational C++ libraries used at Bloomberg.

1.19K
261
8m
Apache-2.0

C++ Programming Paradigm with Asynchronous Networking

2.74K
556
11m
Apache-2.0

A go-style C++ coroutine library and more.

1.86K
276
4m
n/a

A toolkit for making real world machine learning and data analysis applications in C++

9.91K
2.88K
8m
BSL-1.0

EASTL stands for Electronic Arts Standard Template Library. It is an extensive and robust implementation that has an emphasis on high performance.

5.33K
628
9m
BSD-3-Clause

Embedded Template Library

768
145
8m
MIT

Framework for Enterprise Application Development in c++, HTTP1/HTTP2/HTTP3 compliant, Supports multiple server backends

426
122
8m
n/a

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

16.35K
3.83K
8m
Apache-2.0

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

1.25K
120
8m
BSL-1.0

JUCE is an open-source cross-platform C++ application framework for desktop and mobile applications, including VST, VST3, AU, AUv3, RTAS and AAX audio plug-ins.

2.68K
918
9m
n/a

Kigs framework is a C++ modular multipurpose cross platform framework.

46
13
8m
MIT

An eventing framework for building high performance and high scalability systems in C.

1.66K
381
2y 7m
Apache-2.0

C++14 evented IO libraries for high performance networking and media based applications

1.16K
328
1y 12m
LGPL-2.1

LibU is a multiplatform utility library written in C, with APIs for handling memory allocation, networking and URI parsing, string manipulation, debugging, and logging in a very compact way, plus many other miscellaneous tasks

317
77
10m
n/a
13
6
7y 30d
BSL-1.0

openFrameworks is a community-developed cross platform toolkit for creative coding in C++.

8.22K
2.43K
8m
n/a

High performance server-side application framework

6.1K
1.21K
84d
Apache-2.0

๐ŸŽ A glib-like multi-platform c library

3.54K
549
9m
Apache-2.0

Fast, orthogonal, open multi-methods. Supersedes yomm11.

169
8
8m
BSL-1.0

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

APR

Apache Portable Runtime; another library of cross-platform utility functions. Apache 2.0

ASL

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

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

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

Library of utility functions and structures, designed to be portable, efficient and powerful. GNU LGPL2.1

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

Qt

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

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]

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]

An exemplary version of STL. [Free]

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

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

The small STL library. [MIT]

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

Artificial Intelligence

A GPU (CUDA) based Artificial Neural Network library

83
16
2y 113d
GPL-3.0

Behavior Tree Starter Kit

347
111
7y 4m
Zlib

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

704
160
8m
MIT

simple neural network library in ANSI C

1.09K
138
10m
Zlib

Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, Javascript and more

19.28K
6.8K
8m
Apache-2.0

Tensors and Dynamic neural networks in Python with strong GPU acceleration

46.37K
12.33K
8m
n/a

A C++ standalone library for machine learning

3.64K
320
5m
n/a

Navigation-mesh Toolset for Games

3.8K
1.04K
8m
Zlib

An Open Source Machine Learning Framework for Everyone

153.46K
84.06K
8m
Apache-2.0

oneAPI Deep Neural Network Library (oneDNN)

2.24K
593
9m
Apache-2.0

Microsoft Cognitive Toolkit (CNTK), an open source deep-learning toolkit

16.97K
4.41K
1y 7m
n/a

header only, dependency-free deep learning framework in C++14

5.3K
1.34K
3y 5d
n/a

Distributed machine learning platform

890
185
4y 9m
n/a

kaldi-asr/kaldi is the official location of the Kaldi project.

10.16K
4.44K
8m
n/a

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

Asynchronous Event Loop

Asio C++ Library

2.4K
716
1y 73d
n/a

An Open Source Implementation of the Actor Model in C++

2.46K
434
8m
BSD-3-Clause

C++20 thread confinement and dependency injection framework.

41
3
5m
MIT

Like libevent and libuv, libhv provides event-loop with non-blocking IO and timer, but simpler api and richer protocols.

1.84K
302
8m
BSD-3-Clause

Cross-platform asynchronous I/O

16.82K
2.7K
1y 5m
n/a

C++ promise/A+ library in Javascript style.

287
50
2y 6m
n/a

Header-only, event based, tiny and easy to use libuv wrapper in modern C++ - now available as also shared/static library!

1.21K
142
8m
MIT

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

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

Event loop replacement for network servers. 3-clause BSD

Audio

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

390
100
9m
GPL-3.0

Single file audio decoding libraries for C/C++.

673
118
66d
n/a

A C library for reading and writing sound files containing sampled audio data..

698
196
1y 55d
LGPL-2.1

C library for cross-platform real-time audio input and output

1.3K
160
1y 88d
MIT

C++ Audio and Music DSP Library

1.13K
227
8m
n/a

Single file audio playback and capture library written in C.

1.73K
139
60d
n/a

NI Media is a C++ library for reading and writing audio streams.

160
24
7m
MIT

SimplE Lossless Audio

199
22
1y 6m
MIT

Free, easy, portable audio engine for games

1.03K
156
8m
n/a

Easy and efficient audio synthesis in C++

415
57
1y 6m
Unlicense

Minimalistic MP3 decoder single header library

886
101
9m
CC0-1.0

๐ŸŽต Music notation engraving library for MEI with MusicXML and Humdrum support and various toolkits (JavaScript, Python)

369
118
8m
LGPL-3.0

Facebook AI Research's Automatic Speech Recognition Toolkit

5.65K
956
8m
n/a

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/Commercial]

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

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

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

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

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

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

Biology

C++ library and cmdline tools for parsing and manipulating VCF files

412
190
8m
MIT

Structural variant detection and association testing

77
18
4y 5m
n/a

C++ Computational Libraries for Bioinformatics. [BSD]

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

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

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

BitTorrent

BitTorrent DHT library

589
159
10m
MIT

an efficient feature complete C++ bittorrent implementation

3.07K
684
8m
n/a

libTorrent BitTorrent library

799
193
1y 10m
GPL-2.0

uTorrent Transport Protocol library

904
223
3y 5m
MIT

Chemistry

The d-SEAMS C++ core engine

15
1
1y 4m
GPL-3.0

Public/backup repository of the GROMACS molecular simulation toolkit. Please do not mine the metadata blindly; we use https://gitlab.com/gromacs/gromacs for code review and issue tracking.

332
217
8m
n/a

a unified framework for modeling chemically reactive systems

69
30
8m
LGPL-2.1

Public development project of the LAMMPS MD software package

1K
1.09K
8m
GPL-2.0

CLI

Argh! A minimalist argument handler.

741
55
1y 32d
n/a

A simple header-only C++ argument parser library. Supposed to be flexible and powerful, and attempts to be compatible with the functionality of the Python standard argparse library (though not necessarily the API).

830
107
9m
MIT

A simple to use, composable, command line parser for C++ 11 and beyond

636
65
2y 78d
BSL-1.0

A library for interactive command line interfaces in modern C++

512
47
9m
BSL-1.0

CLI11 is a command line parser for C++11 and beyond that provides a rich feature set with a simple and intuitive interface.

1.48K
163
9m
n/a

Lightweight C++ command line option parser

2.4K
372
8m
MIT

C++11 port of docopt

872
115
1y 4m
n/a

A text-based widget toolkit

363
15
23d
LGPL-3.0

Activity Indicators for Modern C++

1.07K
79
1y 97d
n/a

A small self-contained alternative to readline and libedit

2.66K
519
1y 7m
BSD-2-Clause

A small self-contained alternative to readline and libedit that supports UTF-8 and Windows and is BSD licensed.

314
41
4y 4m
n/a

A simple to use, composable, command line parser for C++ 11 and beyond

235
27
10m
BSL-1.0

PDCurses - a curses library for environments that don't fit the termcap/terminfo model.

601
124
1y 10m
n/a

Header-only C++ program options parser library

72
14
86d
MIT

A readline and libedit replacement that supports UTF-8, syntax highlighting, hints and Windows and is BSD licensed.

438
72
10m
n/a

Table Maker for Modern C++

849
52
9m
n/a

Library for writing text-based user interfaces

1.78K
147
1y 63d
MIT

Small header only C++ library for writing multiplatform terminal applications

20
6
11m
n/a

C++ Functional Terminal User Interface.

326
28
10m
MIT

ImTui: Immediate Mode Text-based User Interface

1.12K
32
10m
MIT

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

Commandline flags module for C++. [BSD]

A terminal user interface. [MIT]

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

Compression

A C++ static library offering a clean and simple interface to the 7-zip DLLs.

156
49
1y 4m
GPL-2.0

Brotli compression format

9.74K
911
9m
MIT

New generation entropy codecs : Finite State Entropy and Huff0

943
100
10m
BSD-2-Clause

Multi-format archive and compression library

1.46K
491
8m
n/a

Extremely Fast Compression algorithm

5.87K
917
8m
n/a

LZFSE compression library and command line tool

1.58K
164
4y 5m
n/a

miniz: Single C source file zlib-replacement library, originally from code.google.com/p/miniz

1.09K
178
8m
n/a

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

742
299
9m
n/a

Small strings compression library

878
111
9y 8m
BSD-3-Clause

zlib replacement with optimizations for "next generation" systems.

724
111
8m
Zlib

Zstandard - Fast real-time compression algorithm

13.98K
1.31K
8m
n/a

Patent free, high quality data compressor. 3-clause BSD

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]

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

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

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

A fast compressor/decompressor. [BSD]

Massively-spiffy yet delicately-unobtrusive compression library. 3-clause BSD

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

Concurrency

The project alpaka has moved to https://github.com/alpaka-group/alpaka

0
0
1y 6m
n/a

ArrayFire: a general purpose GPU library.

3.32K
473
8m
n/a

Async++ concurrency framework for C++11

882
146
1y 8m
MIT

A C++ GPU Computing Library for OpenCL

1.19K
274
2y 8m
BSL-1.0

Bolt is a C++ template library optimized for GPUs. Bolt provides high-performance library implementations for common algorithms such as scan, reduce, transform, and sort.

343
60
6y 10m
n/a

Concurrency primitives, safe memory reclamation mechanisms and non-blocking (including lock-free) data structures designed to aid in the research, design and implementation of high performance concurrent systems developed in C99+.

1.84K
245
10m
n/a

A fast multi-producer, multi-consumer lock-free concurrent queue for C++11

5.31K
1.11K
10m
n/a

A General-purpose Parallel and Heterogeneous Task Programming System

4.97K
564
9m
n/a

THIS REPOSITORY HAS MOVED TO github.com/nvidia/cub, WHICH IS AUTOMATICALLY MIRRORED HERE.

15
16
8m
BSD-3-Clause

Thin C++-flavored wrappers for the CUDA Runtime API

322
39
11m
BSD-3-Clause

The project alpaka has moved to https://github.com/alpaka-group/cupla

1
0
1y 6m
n/a

C++React: A reactive programming library for C++11.

896
119
3y 12m
BSL-1.0

A library for enabling task-based multi-threading. It allows execution of task graphs with arbitrary dependencies.

676
68
9m
n/a

The C++ Standard Library for Parallelism and Concurrency

1.5K
290
1y 55d
BSL-1.0

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

319
24
8m
MIT
538
53
1y 87d
n/a

Concurrent data structures in C++

1.12K
128
3y 8m
n/a

Kokkos C++ Performance Portability Programming EcoSystem: The Programming Model - Parallel Execution and Memory Abstraction

730
225
9m
n/a

A C++ library of Concurrent Data Structures

1.78K
295
1y 72d
BSL-1.0

OpenCL based GPU accelerated SPH fluid simulation library

39
8
6y 46d
MIT

Structured concurrency in C

1.32K
123
2y 0d
MIT

The libdispatch Project, (a.k.a. Grand Central Dispatch), for concurrency on multicore hardware

1.99K
366
9m
Apache-2.0

Go-style concurrency in C

2.41K
184
4y 30d
MIT

A hybrid thread / fiber task scheduler written in C++ 11

1.06K
85
8m
n/a

Patterns and behaviors for GPU computing

1.17K
234
1y 9m
n/a

Optimized primitives for collective multi-GPU communication

1.45K
384
8m
n/a

An implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework. With performance, quality, and stability proved by years in the production.

168
12
8m
n/a

Powerful multi-threaded coroutine dispatcher and parallel execution engine

287
52
8m
Apache-2.0

A fast single-producer, single-consumer lock-free queue for C++

2.02K
450
11m
n/a

stdgpu: Efficient STL-like Data Structures on the GPU

525
19
9m
Apache-2.0

A header-only C++ library for task concurrency

452
29
1y 8d
MIT

VexCL is a C++ vector expression template library for OpenCL/CUDA/OpenMP

621
79
11m
MIT

Tasks, executors, timers and C++20 coroutines to rule them all

168
15
10m
MIT

Intelยฎ Threading Building Blocks. [Apache2]

The open standard for parallel programming of heterogeneous systems.

The OpenMP API.

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

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

Configuration

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

84
20
66d
MIT

Simple .INI file parser in C, good for embedded systems

1.38K
326
8m
n/a

This is a header only C++ version of inih.

293
74
2y 15d
n/a

ini file parser

671
354
2y 4m
MIT

C/C++ library for processing configuration files

737
282
11m
LGPL-2.1

Small configuration file parser library for C.

348
84
9m
ISC

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

528
192
1y 4m
MIT

Header-only TOML config file parser and serializer for C++17 (and later!).

388
35
8m
MIT

Containers

Git mirror of the official (mercurial) repository of cpp-btree

43
17
7y 88d
Apache-2.0

An unordered C++ data container providing fast iteration/insertion/erasure while maintaining pointer/iterator validity to non-erased elements regardless of insertions/erasures. Provides higher-performance than std:: library containers for high-modification scenarios with unordered data.

262
19
9m
Zlib

Simple Useful Libraries: The C++17 header-only dynamic bitset

59
5
10m
MIT

Template Library of Tree Data Structures in C++17

149
34
8m
MIT

Various open addressing hashmap algorithms in C++

216
79
5y 10m
MIT

C++ implementation of a fast hash map and hash set using hopscotch hashing

452
42
11m
MIT

A c++ toolbox of locality-sensitive hashing (LSH), provides several popular LSH algorithms, also support python and matlab.

243
74
4y 4m
GPL-3.0

๐Ÿ…State-of-the-art learned 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

487
36
8m
Apache-2.0

A drop-in replacement for std::list with 293% faster insertion, 57% faster erasure, 17% faster iteration and 77% faster sorting on average. 20-24% speed increase in use-case testing.

99
10
9m
Zlib

A C++ data container replicating std::stack functionality but with better performance than standard library containers in a stack context.

37
3
9m
Zlib

ring-span lite - A C++yy-like ring_span type for C++98, C++11 and later in a single-file header-only library

86
8
10m
BSL-1.0

Fast & memory efficient hashtable based on robin hood hashing for C++11/14/17/20

639
67
9m
MIT

C++ implementation of a fast hash map and hash set using robin hood hashing

491
51
8m
MIT

A fast, memory efficient hash map for C++

1.01K
111
9m
n/a

Cryptography

free C++ class library of cryptographic schemes

2.67K
817
8m
n/a

C++11 header-only message digest library

115
22
1y 50d
Unlicense

A modern, portable, easy to use crypto library.

9.07K
1.41K
8m
n/a

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

242
24
10m
n/a

LibTomCrypt is a fairly comprehensive, modular and portable cryptographic toolkit that provides developers with a vast array of well known published block ciphers, one-way hash functions, chaining modes, pseudo-random number generators, public key cryptography and a plethora of other routines.

1.07K
344
9m
Unlicense

An open source, portable, easy to use, readable and flexible SSL library

2.83K
1.63K
8m
Apache-2.0

TLS/SSL and crypto library

14.85K
6.62K
8m
Apache-2.0

A collection of hash functions, ciphers, tools, libraries, and materials related to cryptography & security. (project was renamed, libchaos is main)

55
20
4y 7m
n/a

s2n : an implementation of the TLS/SSL protocols

3.91K
547
8m
Apache-2.0

Library and command line tool to detect SHA-1 collision in a file

1.11K
147
10m
n/a

Tink is a multi-language, cross-platform, open source library that provides cryptographic APIs that are secure, easy to use correctly, and hard(er) to misuse.

11.07K
912
8m
Apache-2.0

Small portable AES128/192/256 in C

2.43K
920
8m
Unlicense

Easy to use cryptographic framework for data protection: secure messaging with forward secrecy and secure data storage. Has unified APIs across 14 platforms.

1.36K
112
22d
Apache-2.0

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

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

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

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

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

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

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

A low-level cryptographic library. [LGPL]

CSV

Fast CSV parser and writer for Modern C++

153
22
1y 92d
MIT

Compile-time CSV parser in C++17

1
0
8m
Zlib

fast-cpp-csv-parser

1.2K
296
9m
BSD-3-Clause

A modern C++ library for reading, writing, and analyzing CSV (and similar) files.

353
60
9m
MIT

Database

C++ ORM for SQLite

571
104
3y 4m
BSD-3-Clause

Minimalistic C client for Redis >= 1.2

4.76K
1.54K
8m
BSD-3-Clause

LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values.

23.06K
5.33K
8m
BSD-3-Clause

C++11 wrapper for the LMDB embedded B+ tree database library.

223
74
5y 8m
Unlicense

A high-performance MongoDB driver for C

637
376
8m
Apache-2.0

C++ Driver for MongoDB

785
468
8m
Apache-2.0

ARCHIVED - libbson has moved to https://github.com/mongodb/mongo-c-driver/tree/master/src/libbson

329
185
3y 10m
Apache-2.0

A small C++ wrapper for the native C ODBC API | Requires C++14 since v2.12

174
44
8m
MIT

A C++ Redis client

172
75
2y 5m
Apache-2.0

A library that provides an embeddable, persistent key-value store for fast storage.

18.85K
4.27K
8m
n/a

A high performance, shared memory, lock free, cross platform, single file, no dependencies, C++11 key-value store

391
52
3y 6m
Apache-2.0

Official repository of the SOCI - The C++ Database Access Library

958
366
8m
BSL-1.0

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

1.1K
322
9m
MIT

The C++14 wrapper around sqlite library

581
117
11m
MIT

โค๏ธ SQLite ORM light header only library for modern C++

1.1K
167
8m
BSD-3-Clause

A type safe SQL template library for C++

1.71K
263
1y 28d
BSD-2-Clause

The Universal Storage Engine

1.05K
111
8m
MIT

An Embedded NoSQL, Transactional Database Engine

1.28K
119
1y 93d
n/a

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

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

ODB

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

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

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

Data visualization

Matplot++: A C++ Graphics Library for Data Visualization ๐Ÿ“Š๐Ÿ—พ

2.21K
150
103d
MIT

Debug

A beautiful stack trace pretty printer for C++

1.86K
263
9m
MIT

A microbenchmark support library

5.15K
984
8m
Apache-2.0

A unit testing framework for C

703
150
9m
LGPL-2.1

The fastest feature-rich C++11/14/17/20 single-header testing framework

3.08K
333
8m
MIT

A modern, C++-native, header-only, test framework for unit-tests, TDD and BDD - using C++11, C++14, C++17 and later (or C++03 on the Catch1.x branch)

12.78K
2.16K
8m
BSL-1.0

C++ Benchmark Authoring Library/Framework

583
76
8m
n/a

CppUTest unit testing and mocking framework for C/C++

882
389
8m
BSD-3-Clause

A dbg(โ€ฆ) macro for C++

1.54K
104
10m
MIT

DebugView++, collects, views, filters your application logs, and highlights information that is important to you!

629
110
88d
BSL-1.0

A testing micro framework for creating function test doubles

392
97
2y 68d
n/a

Googletest - Google Testing and Mocking Framework

20.66K
7.22K
8m
BSD-3-Clause

Debug heap useful for tracking down memory errors.

146
15
5y 11m
n/a

Write tests in C

206
45
1y 23d
LGPL-3.0

microprofile is an embeddable profiler

975
87
1y 10m
n/a

Minimal unit testing framework for C

351
73
1y 77d
MIT

A simple C++ 03/11/etc timer class for ~microsecond-precision cross-platform benchmarking. The implementation is as limited and as simple as possible to create the lowest amount of overhead.

55
4
9m
Zlib

A C++ micro-benchmarking framework

301
47
2y 29d
n/a

Single C file, Realtime CPU/GPU Profiler with Remote Web Viewer

1.67K
183
8m
Apache-2.0

Touca SDK for C++

11
2
82d
Apache-2.0

A lightweight unit testing framework for C++

452
166
11m
MIT

Simple Unit Testing for C

1.89K
559
8m
MIT

๐Ÿงช single header unit testing framework for C and C++

309
20
8m
Unlicense

UT: C++20 ฮผ(micro)/Unit Testing Framework

490
40
8m
BSL-1.0

C++ Unit Testing Easier. [LGPL3]

Unit testing framework with support for mock objects. Apache 2.0

The CMake test driver program. [BSD]

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

Tracking memory allocations in C++.

Eclipse CDT plug-in for C++ Seams and Mock Objects.

VLD

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

Font

Optimized OpenType builder and inspector.

347
49
1y 4m
Apache-2.0

Font configuration and customization library. [MIT] website

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

Game Engine

A high speed C++17 Vulkan game engine

799
86
11m
MIT

Pure C Game Engine

1.27K
160
1y 26d
n/a

The flexible game engine.

1.31K
104
8m
MIT

Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much more

4.87K
437
8m
MIT

Open-source, cross-platform, C++ game engine for creating 2D/3D games.

3.11K
1.2K
5y 7m
n/a

Godot Engine โ€“ Multi-platform 2D and 3D game engine

36.78K
6.92K
8m
n/a

Grit Game Engine

95
21
3y 5m
MIT

A lightweight game engine written in modern C++

2.63K
118
8m
Apache-2.0

KlayGE is a cross-platform open source game engine with plugin-based architecture.

1.5K
287
8m
GPL-2.0

A cross-platform 2D game engine

294
32
1y 24d
MIT

Source for fully featured AAA Open 3D Engine

2.98K
641
103d
n/a

Improved version of the X-Ray Engine, the game engine used in the world-famous S.T.A.L.K.E.R. game series by GSC Game World.

1.48K
315
8m
n/a

Powerful, mature open-source cross-platform game engine for Python and C++, developed by Disney and CMU

2.63K
606
8m
n/a

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

2.03K
580
8m
n/a

Polycode is a cross-platform framework for creative code.

2.36K
342
6y 36d
MIT

A simple and easy-to-use library to enjoy videogames programming

5.8K
659
8m
Zlib

A powerful free cross-platform RTS game engine

2.07K
680
9m
n/a

MIT Licensed Open Source version of Torque 2D game engine from GarageGames

1.63K
1.65K
1y 4m
MIT

MIT Licensed Open Source version of Torque 3D from GarageGames

3.24K
1.23K
1y 6m
MIT

the thin c++ game engine

1.36K
92
1y 10m
GPL-3.0

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

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

A robust simulation platform. [LGPL2]

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

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

GUI

Purely native C++ cross-platform GUI framework for Android and iOS development. https://www.boden.io

1.39K
81
1y 9m
n/a

Elements C++ GUI library

1.64K
116
8m
n/a

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

1.92K
272
8m
n/a

Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

27.82K
4.61K
8m
MIT

Advanced 2D Plotting for Dear ImGui

1.26K
98
8m
MIT

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

9.82K
584
9m
n/a

Minimalistic C++/Python GUI library for OpenGL, GLES2/3, Metal, and WebAssembly/WebGL

503
69
1y 18d
n/a

A single-header ANSI C immediate mode cross-platform GUI library

3.61K
210
10m
n/a

RmlUi - The HTML/CSS User Interface library evolved

485
58
8m
MIT

Free open-source modern C++17 / C++20 framework to create console, forms (GUI like WinForms) and unit test applications on Microsoft Windows, Apple macOS and Linux.

59
8
32d
MIT

A library for creating native cross-platform GUI apps

2.5K
117
8m
n/a

Flexible, cross-platform GUI library.

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

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

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

iup

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

Fast, flexible and simple GUI. [MIT]

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

Qt plotting widget without further dependencies. [GPLv3]

Qwt

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

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

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

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

Graphics

The official Open-Asset-Importer-Library Repository. Loads 40+ 3D-file-formats into one unified and clean data structure.

6.31K
1.89K
8m
n/a

Cross-platform, graphics API agnostic, "Bring Your Own Engine/Framework" style rendering library.

8.99K
1.39K
8m
BSD-2-Clause

2D Vector Graphics Engine Powered by a JIT Compiler

840
48
8m
Zlib

Modern C++14 library for the development of real-time graphical applications

1.59K
189
2y 2d
MIT

Port of Python's Turtle to C++

6
2
11m
n/a

A modern cross-platform low-level graphics library and rendering framework

1.67K
174
8m
Apache-2.0

The DirectX Tool Kit (aka DirectXTK) is a collection of helper classes for writing DirectX 11.x code in C++

1.72K
393
8m
MIT

A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input

7.3K
2.68K
8m
Zlib

A basic 3D scene implemented with various engines, frameworks or APIs.

1.55K
68
1y 82d
MIT

Horde3D is a small 3D rendering and animation engine. It is written in an effort to create an engine being as lightweight and conceptually clean as possible.

1.03K
273
8m
n/a

Ion

1.39K
90
3y 6m
Apache-2.0

Simple C++ geometry processing library.

2.8K
827
8m
n/a

Low Level Graphics Library (LLGL) is a thin abstraction layer for the modern graphics APIs OpenGL, Direct3D, Vulkan, and Metal

977
64
8m
n/a

Lightweight and modular C++11 graphics middleware for games and data visualization

3.38K
346
8m
n/a

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

3.86K
628
10m
Zlib

An Open-Source subdivision surface library.

2.44K
474
8m
Apache-2.0

C++ (with python bindings) library for easily reading/writing/manipulating common animation particle formats such as PDB, BGEO, PTC. See the discussion group @ http://groups.google.com/group/partio-discuss

353
120
9m
n/a

Skia is a complete 2D graphic library for drawing Text, Geometries, and Images.

4.76K
930
8m
n/a

ANSI C library for NURBS, B-Splines, and Bรฉzier curves with interfaces for C++, C#, D, Go, Java, Lua, Octave, PHP, Python, R, and Ruby.

613
125
8m
MIT

Cross-platform 2D and 3D game engine.

3.47K
883
8m
MIT

Yocto/GL: Tiny C++ Libraries for Data-Driven Physically-based Graphics

1.37K
126
9m
n/a

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

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

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

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

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

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

Image Processing

A toolkit for making real world machine learning and data analysis applications in C++

9.91K
2.88K
8m
BSL-1.0

GD Graphics Library

590
204
8m
n/a

Leptonica is an open source library containing software that is broadly useful for image processing and image analysis applications. The official github repository for Leptonica is: danbloomberg/leptonica. See leptonica.org for more documentation and recent releases.

992
283
8m
n/a

An open source library for face detection in images. The face detection speed can reach 1000FPS.

10.14K
2.79K
10m
n/a

Main libjpeg-turbo repository

2.36K
648
9m
n/a

A fast image processing library with low memory needs.

5.16K
412
8m
LGPL-2.1

Reading, writing, and processing images in a wide variety of file formats, using a format-agnostic API, aimed at VFX applications.

1.21K
433
8m
BSD-3-Clause

โ›ต The missing small and fast image decoding library for humans (not for machines).

41
3
6m
MIT

C++ image processing and machine learning 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.

1.25K
297
8m
MIT

stb single-file public domain libraries for C/C++

14.89K
5.1K
1y 106d
n/a