A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
- Awesome C++
- Standard Libraries
- Frameworks
- Artificial Intelligence
- Asynchronous Event Loop
- Audio
- Biology
- BitTorrent
- Chemistry
- CLI
- Compression
- Concurrency
- Configuration
- Containers
- Cryptography
- CSV
- Database
- Data visualization
- Debug
- Documentation
- DSP
- Font
- Game Engine
- Graph
- GUI
- Graphics
- Image Processing
- Internationalization
- Inter-process communication
- JSON
- Logging
- Machine Learning
- Math
- Memory Allocation
- Multimedia
- Networking
- Office Open XML
- Physics
- Reflection
- Regular Expression
- Robotics
- Scientific Computing
- Scripting
- Serialization
- Serial Port
- Sorting
- Video
- Virtual Machines
- Web Application Framework
- XML
- Yaml
- Miscellaneous
- Software
- Resources
- Other Awesome Lists
- Jobs
- Sponsors
- Contributing - If you see a project or link here that is no longer maintained or is not a good fit, please submit a pull request to improve this document. Thank you!
C++ Standard Library - including STL Containers, STL Algorithm, STL Functional, etc.
- 🌎 C++ Standard Library - A collection of classes and functions, which are written in the core language and part of the C++ ISO Standard itself.
- 🌎 Standard Template Library - The Standard Template Library (STL).
- 🌎 C POSIX library - A specification of a C standard library for POSIX systems.
- ISO C++ Standards Committee - ISO/IEC JTC1/SC22/WG21 - The C++ Standards Committee. website
- 🌎 The GNU C Library - The purpose of this manual is to tell you how to use the facilities of the GNU C Library.
C++ generic frameworks and libraries.
16274⭐
2835🍴
abseil-cpp) - Abseil C++ Common Libraries. [Apache2]- 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]
392⭐
32🍴
AUI) - Declarative UI toolkit for C++20. [MPL2]- Boost ⚡ - A large collection of generic C++ libraries. [Boost] 🌎 website
1748⭐
325🍴
BDE) - The BDE Development Environment from Bloomberg Labs. [Apache2]14005⭐
2528🍴
C++ Workflow) ⚡ - C++ Parallel Computing and Asynchronous Networking Engine. [Apache2]2103⭐
367🍴
CGraph) - A cross-platform DAG framework based on C++ without any 3rd-party. [MIT]- 🌎 Cinder - A community-developed, free and open source library for professional-quality creative coding. [BSD]
4149⭐
578🍴
Coost) - A tiny boost library in C++11. [MIT]- Cxxomfort - A small, header-only library that backports various facilities from more recent C++ Standards to C++03 and later. [MIT]
14121⭐
3442🍴
Dlib) ⚡ - A toolkit for making real world machine learning and data analysis applications in C++. [Boost] website8907⭐
993🍴
EASTL) - Electronic Arts Standard Template Library. [BSD]2615⭐
459🍴
ETL) - Embedded Template Library. [MIT]733⭐
149🍴
ffead-cpp) - Framework for Enterprise Application Development. [Apache2]29723⭐
5761🍴
Folly) - An open-source C++ library developed and used at Facebook. [Apache2]2226⭐
177🍴
FunctionalPlus) - Functional Programming Library for C++. Write concise and readable C++ code. [MIT]- 🌎 GLib - GLib provides the core application building blocks for libraries and applications written in C. [LGPL]
192⭐
15🍴
itlib) - A collection of std-like single-header C++ libraries [MIT]7513⭐
1878🍴
JUCE) - An all-encompassing C++ class library for developing cross-platform software. [Core-Module: ISC, Rest: GPL2/GPL3/Proprietary] website87⭐
24🍴
Kigs framework) - A free and open source C++ modular multi-purpose cross platform RAD framework. [MIT] 🌎 website1665⭐
360🍴
libPhenom) - libPhenom is an eventing framework for building high performance and high scalability systems in C. [Apache2]1346⭐
351🍴
LibSourcey) - C++11 evented IO for real-time video streaming and high performance networking applications. [LGPL]451⭐
97🍴
LibU) - A multiplatform utility library written in C. [BSD]64⭐
9🍴
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]
40⭐
8🍴
MiLi) - Minimal headers-only C++ Library. [Boost]10211⭐
2569🍴
OpenFrameworks) - A cross platform open source toolkit for creative coding in C++. [MIT] website1069⭐
147🍴
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- Qt ⚡ - A cross-platform application and UI framework. [GPL/LGPL/Proprietary] 🌎 website
- 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]
199⭐
5🍴
rpp) - Minimal Rust-inspired C++20 STL replacement. [MIT]588⭐
16🍴
SaneCppLibraries) - a set of C++ platform abstraction libraries for macOS, Windows and Linux. [MIT] 🌎 website8821⭐
1633🍴
Seastar) - An advanced, open-source C++ framework for high-performance server applications on modern hardware. [Apache-2.0 License] seastar.io1111⭐
150🍴
Siv3D) - Siv3D (OpenSiv3D) is a C++20 framework for creative coding (2D/3D games, media art, visualizers, and simulators). [MIT] 🌎 website- STLport - An exemplary version of STL. [Free]
- STXXL - Standard Template Library for Extra Large Data Sets. [Boost]
5029⭐
753🍴
tbox) - A glib-like multi-platform c library. [Apache2] website- Ultimate++ - A C++ cross-platform rapid application development framework. [BSD]
- Windows Template Library - A C++ library for developing Windows applications and UI components. [Public]
1051⭐
70🍴
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]375⭐
21🍴
Yomm2) - Fast, Orthogonal, Open multi-methods. Supersedes117⭐
16🍴
Yomm11) [Boost]
109⭐
20🍴
ANNetGPGPU) - A GPU (CUDA) based Artificial Neural Network library. [LGPL]476⭐
128🍴
btsk) - Game Behavior Tree Starter Kit. [zlib]- Evolving Objects - A template-based, ANSI-C++ evolutionary computation library which helps you to write your own stochastic optimization algorithms insanely fast. [LGPL]
1111⭐
239🍴
frugally-deep) - Header-only library for using Keras models in C++. [MIT]2185⭐
260🍴
Genann) - Simple neural network library in C. [zlib]20825⭐
6756🍴
MXNet) - Lightweight, Portable, Flexible Distributed/Mobile Deep Learning with Dynamic, Mutation-aware Dataflow Dep Scheduler; for Python, R, Julia, Scala, Go, JavaScript and more. 🌎 website92768⭐
25121🍴
PyTorch) - Tensors and Dynamic neural networks in Python with strong GPU acceleration. 🌎 website5405⭐
499🍴
flashlight) - Flashlight is a fast, flexible machine learning library written entirely in C++. [BSD]7249⭐
1706🍴
Recast/Detour) - (3D) Navigation mesh generator and pathfinder, mostly for games. [zlib]191382⭐
74808🍴
TensorFlow) - An open source software library for numerical computation using data flow graphs. [Apache]51⭐
4🍴
Txeo) - A modern C++ wrapper for TensorFlow. [Apache]3874⭐
1066🍴
oneDNN) - An open-source cross-platform performance library for deep learning applications. [Apache] 🌎 website17588⭐
4267🍴
CNTK) - Microsoft Cognitive Toolkit (CNTK), an open source deep-learning toolkit. [Boost]5970⭐
1391🍴
tiny-dnn) - A header only, dependency-free deep learning framework in C++11. [BSD]913⭐
179🍴
Veles) - Distributed platform for rapid Deep learning application development. [Apache]15080⭐
5366🍴
Kaldi) - Toolkit for speech recognition. [Apache]
?⭐
?🍴
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] website1422⭐
446🍴
Boost.Asio) - A cross-platform C++ library for network and low-level I/O programming. [Boost] 🌎 website3323⭐
559🍴
C++ Actor Framework) - An Open Source Implementation of the Actor Model in C++. [BSD-3-Clause] website227⭐
14🍴
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]
7306⭐
1316🍴
libhv) - Cross-platform event loop library. [BSD]25730⭐
3745🍴
libuv) - Cross-platform asynchronous I/O. [BSD]693⭐
95🍴
promise-cpp) - Header only library that implements Promise/A+ standard. [Anti-996]1972⭐
222🍴
uvw) - C++ wrapper for libuv. [MIT]826⭐
215🍴
uv-cpp) - a simple interface, high-performance network library based on C++11. [MIT]
Audio, Sound, Music, Digitized Voice Libraries
57⭐
5🍴
Amplitude Audio SDK) - A cross-platform audio engine designed with the needs of games in mind. [Apache-2.0] 🌎 website3509⭐
394🍴
Aubio) - A library for audio and music analysis.[GPL-3.0] 🌎 website1071⭐
215🍴
AudioFile) - A simple C++ library for reading and writing audio files. [MIT]3149⭐
144🍴
audioFlux) - A C library for audio and music analysis, feature extraction. [MIT]1506⭐
224🍴
dr_libs) - Single file audio decoding libraries for C and C++. [Unlicense]- 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]
- 🌎 LAME - LAME is a high quality MPEG Audio Layer III (MP3) encoder. [LGPL]
?⭐
?🍴
libsndfile) - C library with C++ wrapper for reading and writing files containing sampled sound through one standard library interface. [LGPL-2.1] website2027⭐
248🍴
libsoundio) - C library for cross-platform real-time audio input and output. [MIT] website1641⭐
285🍴
Maximilian) - C++ Audio and Music DSP Library. [MIT]- OpenAL - Open Audio Library - A crossplatform audio API. [BSD/LGPL/Proprietary]
4973⭐
446🍴
miniaudio) - Single file audio playback and capture library. [Unlicense] 🌎 website251⭐
37🍴
ni-media) - C++ library for reading and writing audio files. [MIT]- Opus - A totally open, royalty-free, highly versatile audio codec. [BSD]
- PortAudio - PortAudio is a free, cross-platform, open-source, audio I/O library. [MIT]
4961⭐
984🍴
rnnoise) - Recurrent neural network for audio noise reduction. [BSD-3-Clause]215⭐
24🍴
SELA) - SimplE Lossless Audio. [MIT]2001⭐
315🍴
SoLoud) - Easy, portable audio engine for games. [zlib]- Speex - A free codec for free speech. Obsoleted by Opus. [BSD]
545⭐
69🍴
Tonic) - Easy and efficient audio synthesis in C++. [Unlicense]- Vorbis - Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format. [BSD]
1767⭐
233🍴
minimp3) - Public domain, header-only MP3 decoder with clean-room implementation. [CC0]766⭐
196🍴
Verovio) - Verovio is a fast and lightweight music notation engraving library. [LGPL] 🌎 website?⭐
?🍴
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]
Bioinformatics, Genomics, Biotech
- 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]
654⭐
224🍴
Vcflib) - A C++ library for parsing and manipulating VCF files. [MIT]109⭐
27🍴
Wham) - Structural variants (SVs) in Genomes by directly applying association tests to BAM files. [MIT]
703⭐
169🍴
jech/dht) - BitTorrent DHT library in C. [MIT]5663⭐
1048🍴
libtorrent) (a.k.a. libtorrent-rasterbar) - An efficient feature complete C++ bittorrent implementation. [BSD]931⭐
220🍴
LibTorrent) (a.k.a. libtorrent-rakshasa) - BitTorrent library. [GPL]1145⭐
264🍴
libutp) - uTorrent Transport Protocol library. [MIT]
Chemistry, Quantum Chemistry, Solid-State Chemistry/Physics, Geochemistry, Biochemistry
40⭐
10🍴
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] 🌎 website804⭐
359🍴
gromacs) - A message-passing parallel molecular dynamics implementation. [GPL] website194⭐
65🍴
Reaktoro) - A computational framework in C++ and Python for modeling chemically reactive systems. [LGPL] 🌎 website2576⭐
1861🍴
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] 🌎 website208⭐
69🍴
MADNESS) - Multiresolution Adaptive Numerical Environment for Scientific Simulation. [GPL]208⭐
69🍴
website)72⭐
25🍴
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] 🌎 website1078⭐
465🍴
Psi) - An ab initio computational chemistry package. [GPL] 🌎 website
Console/Terminal User Interface, Command Line Interface
1396⭐
97🍴
Argh!) - A minimalist, frustration-free, header-only argument handler. [BSD]3202⭐
279🍴
argparse) - Argument Parser for Modern C++. [MIT]1554⭐
171🍴
args) - A simple header-only C++ argument parser library. [MIT]17⭐
1🍴
Argy) - Command-Line Argument Parsing Library for Modern C++ — Simple, Intuitive, and Header-only with Zero Dependencies [MIT]198⭐
2🍴
barkeep) - Small C++ header to display async animations, counters, and progress bars. [Apache-2.0] 🌎 website122⭐
115🍴
Boost.Program_options) - A library to obtain program options via conventional methods such as command line and config file. [Boost] 🌎 website1310⭐
149🍴
cli) - A cross-platform header only C++14 library for interactive command line interfaces (Cisco style). [Boost]3814⭐
384🍴
CLI11) - Header only single or multi-file C++11 library for simple and advanced CLI parsing. [BSD]1278⭐
156🍴
clipp) - Easy to use, powerful and expressive command line argument handling for C++11/14/17 contained in a single header file. [MIT]601⭐
64🍴
cpp-terminal) - Small header only C++ library for writing multiplatform terminal applications. [MIT]26⭐
5🍴
Ctrl+C) - Crossplatform C++11 library to handle Ctrl+C event in custom functions. [MIT]4546⭐
617🍴
cxxopts) - Lightweight C++ command line option parser. [MIT]1074⭐
146🍴
docopt.cpp) - A library to generate option parser from docstring. [MIT/Boost]1099⭐
54🍴
FINAL CUT) - Library for creating terminal applications with text-based widgets. [LGPL]8681⭐
499🍴
FTXUI) - C++ Functional Terminal User Interface. [MIT]- 🌎 gflags - Commandline flags module for C++. [BSD]
3351⭐
143🍴
imtui) - Immediate Mode Text-based User Interface. [MIT]?⭐
?🍴
indicators) - Activity indicators for Modern C++. [MIT]4035⭐
692🍴
linenoise) - A small self-contained alternative to readline and libedit. [BSD-2-Clause]364⭐
55🍴
linenoise-ng) - A small, portable GNU readline replacement for Linux, Windows and MacOS which is capable of handling UTF-8 characters. [BSD]542⭐
66🍴
Lyra) - A simple to use, composable, command line parser for C++ 11 and beyond. [Boost]- Ncurses - A terminal user interface. [MIT]
848⭐
39🍴
oof) - Convenient, high-performance RGB color and position control for console output. [MIT]1184⭐
198🍴
PDCurses) - Public domain curses library with both source code and pre-compiled library available. [PublicDomain]178⭐
32🍴
popl) - A single-header templated command line arguments and ini file parser for C++ 11 and beyond. [MIT]718⭐
119🍴
replxx) - A readline and libedit replacement that supports UTF-8, syntax highlighting, hints, works on Unix and Windows. [BSD]2083⭐
150🍴
tabulate) - Table Maker for Modern C++. [MIT]- TCLAP - A mature, stable and feature-rich library for defining and accessing command line arguments in ANSI C++. [MIT]
1999⭐
190🍴
termbox) - A C library for writing text-based user interfaces. [MIT]757⭐
53🍴
TermOx) - C++17 Terminal User Interface(TUI) Library. [MIT]220⭐
11🍴
tuibox) - A single-header terminal UI (TUI) library, capable of creating mouse-driven, interactive applications on the command line. [MIT]
Compression and Archiving Libraries
747⭐
132🍴
bit7z) - A C++ static library offering a clean and simple interface to the 7-zip shared libraries. [MPL2]14262⭐
1281🍴
Brotli) - Brotli compression format. Developed by Google. [MIT]- bzip2 - A freely available, patent free, high-quality data compressor. [BSD]
1047⭐
53🍴
bzip3) - A better and stronger spiritual successor to BZip2. [LGPL]501⭐
98🍴
FastLZ) - Small & portable byte-aligned LZ77 compression. [MIT]1417⭐
151🍴
FiniteStateEntropy) - New generation entropy codecs : Finite State Entropy and Huff0.1464⭐
207🍴
heatshrink) - data compression library for embedded/real-time systems [ISC]171⭐
5🍴
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]
3287⭐
826🍴
libarchive) - Multi-format archive and compression library. [New BSD] website11265⭐
1458🍴
LZ4) - Extremely Fast Compression algorithm. [BSD] website1807⭐
182🍴
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 ⚡ - The default and general compression method of 7z format. [PublicDomain] 🌎 website
- LZMAT - An extremely fast real-time lossless data compression library. [GPL]
2471⭐
367🍴
miniz) - Single C source file Deflate/Inflate compression library with zlib-compatible API, ZIP archive reading/writing, PNG writing. [MIT]1380⭐
467🍴
Minizip) - Zlib with latest bug fixes that supports PKWARE disk spanning, AES encryption, and IO buffering. [zlib]1380⭐
467🍴
minizip-ng) - Fork of the popular zip manipulation library found in the zlib distribution. [zlib]- 🌎 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]
429⭐
12🍴
Rapidgzip) - Gzip Decompression and Random Access for Modern Multi-Core Machines. [Apache-2/MIT]1200⭐
133🍴
smaz) - Small strings compression library. [BSD]- 🌎 Snappy - A fast compressor/decompressor. [BSD]
- ZLib - A very compact compression library for data streams. [zlib]
1841⭐
307🍴
zlib-ng) - zlib for the "next generation" systems. Drop-In replacement with some serious optimizations. [zlib]25549⭐
2301🍴
zstd) - Zstandard - Fast real-time compression algorithm. Developed by Facebook. [BSD]- ZZIPlib - Provides read access on ZIP-archives. [MPL/LGPL]
Concurrency and Multithreading
4⭐
0🍴
alpaka) - Abstraction library for parallel kernel acceleration. [LGPLv3+]4771⭐
548🍴
ArrayFire) - A general purpose GPU library. [BSD]1405⭐
203🍴
Async++) - A lightweight concurrency framework for C++11, inspired by the Microsoft PPL library and the N3428 C++ standard proposal. [MIT]1624⭐
338🍴
Boost.Compute) - A C++ GPU Computing Library for OpenCL. [Boost] 🌎 website374⭐
64🍴
Bolt) - A C++ template library optimized for GPUs. [Apache2]2641⭐
286🍴
BS::thread_pool) - A fast, lightweight, and easy-to-use C++17 thread pool library [MIT]553⭐
38🍴
Channel) - Thread-safe container for sharing data between threads. [MIT]2541⭐
328🍴
ck) - Concurrency primitives, safe memory reclamation mechanisms and non-blocking data structures. [BSD]11445⭐
1817🍴
concurrentqueue) - A fast multi-producer, multi-consumer lock-free concurrent queue for C++11. [BSD,Boost]328⭐
8🍴
Coros) - An easy-to-use and fast library for task-based parallelism, utilizing coroutines. [BSL-1.0]84⭐
50🍴
CUB) - CUB provides state-of-the-art, reusable software components for every layer of the CUDA programming mode. [New BSD]856⭐
86🍴
cuda-api-wrappers) - Lightweight, Modern-C++ wrappers for the CUDA GPU programming runtime API. [BSD]4⭐
1🍴
cupla) - C++ API to run CUDA/C++ on OpenMP, Threads, TBB, ... through Alpaka. [LGPLv3+]1037⭐
130🍴
C++React) - A reactive programming library for C++11. [Boost]960⭐
80🍴
FiberTaskingLib) - Task-based multi-threading library that supports task graphs with arbitrary dependencies. [Apache]?⭐
?🍴
HPX) - A general purpose C++ runtime system for parallel and distributed applications of any scale. [Boost]455⭐
45🍴
Intel Games Task Scheduler) - A task scheduling framework designed for the needs of game developers. [MIT]751⭐
117🍴
Intel Parallel STL) - Intel® implementation of C++17 STL for C++11 and above. [Apache2]- 🌎 Intel TBB - Intel® Threading Building Blocks. [Apache2]
1435⭐
157🍴
junction) - A library of concurrent data structures in C++. [BSD]2299⭐
467🍴
Kokkos) - A performance portable programming model for parallel execution and memory abstraction. [BSD]2675⭐
363🍴
libcds) - A C++ library of Concurrent Data Structures. [BSD]52⭐
9🍴
Libclsph) - An OpenCL based GPU accelerated SPH fluid simulation library. [MIT]?⭐
?🍴
libdill) - Introduces structured concurrency in C. [MIT]2525⭐
477🍴
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] 🌎 website718⭐
30🍴
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]1966⭐
194🍴
marl) - Marl is a hybrid thread / fiber task scheduler written in C++ 11. [Apache-2.0]1738⭐
283🍴
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]3988⭐
996🍴
NCCL) - Optimized primitives for collective multi-GPU communication. [BSD]1280⭐
107🍴
Neco) - Concurrency library for C (coroutines). [MIT]- 🌎 OpenCL - The open standard for parallel programming of heterogeneous systems.
- OpenMP - The OpenMP API.
368⭐
34🍴
rotor) - Event loop friendly C++ actor micro framework. [MIT]549⭐
51🍴
SObjectizer) - An implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework. [BSD-3-Clause]605⭐
100🍴
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]
4281⭐
708🍴
readerwriterqueue) - A fast single-producer, single-consumer lock-free queue for C++. [BSD]1233⭐
91🍴
stdgpu) - Efficient STL-like Data Structures on the GPU. [Apache2]11184⭐
1308🍴
Taskflow) - A General-purpose Parallel and Heterogeneous Task Programming System. (renamed from Cpp-Taskflow) [MIT]8473⭐
2329🍴
ThreadPool) - A simple C++11 Thread Pool implementation [zlib]- Thrust - A parallel algorithms library which resembles the C++ Standard Template Library (STL). [Apache2]
630⭐
47🍴
transwarp) - A header-only C++ library for task concurrency. [MIT]715⭐
83🍴
VexCL) - A C++ vector expression template library for OpenCL/CUDA. [MIT]- STAPL - A C++ parallel programming framework designed to work on both shared and distributed memory parallel computers. [BSD]
2652⭐
235🍴
concurrencpp) - A general concurrency library containing tasks, executors, timers and C++20 coroutines to rule them all.
Configuration files, INI files
399⭐
73🍴
inifile-cpp) - A header-only and easy to use Ini file parser for C++. [MIT]2792⭐
538🍴
inih) - Simple .INI file parser in C, good for embedded systems. [BSD-3-Clause]446⭐
95🍴
inih) - Single header only C++ version of2792⭐
538🍴
inih). [BSD-3-Clause]44⭐
7🍴
ini-cpp) - Single header only C++ version, with some handy read/write interface, extend from2792⭐
538🍴
inih). [BSD-3-Clause] 🌎 website1040⭐
434🍴
iniparser) - INI file parser. [MIT]301⭐
57🍴
inipp) - Simple header-only C++ ini parser and generator. [MIT]1179⭐
382🍴
libconfig) - C, C++ library for processing structured configuration files. [LGPL-2.1] 🌎 website494⭐
113🍴
libconfuse) - Small configuration file parser library for C. [ISC]603⭐
117🍴
mINI) - INI file reader and writer. [MIT]1223⭐
340🍴
simpleini) - Cross-platform C++ library providing a simple API to read and write INI-style configuration files. [MIT]1853⭐
180🍴
toml++) - Header-only TOML parser and serializer for C++17 and later. [MIT] 🌎 website1174⭐
180🍴
toml11) - a C++11 (or later) header-only toml parser/encoder depending only on C++ standard library. [MIT]
75⭐
27🍴
C++ B-tree) - A template library that implements ordered in-memory containers based on a B-tree data structure. [Apache2]165⭐
15🍴
dynamic_bitset) - Simple Useful Libraries: C++17/20 header-only dynamic bitset. [MIT] 🌎 website423⭐
45🍴
fixed-containers) - Header-only C++20 library that provides fixed capacity constexpr containers. [MIT]1794⭐
197🍴
flat_hash_map) - A very fast flat hashtable with Fibonacci hashing.1460⭐
112🍴
frozen) - a header-only, constexpr alternative to gperf for C++14 users. [Apache-2.0]257⭐
85🍴
Hashmaps) - Implementation of open addressing hash table algorithms in C++. [MIT]833⭐
117🍴
hat-trie) - C++ implementation of a fast and memory efficient HAT-trie. [MIT]754⭐
69🍴
Hopscotch map) - A fast header-only hash map which uses hopscotch hashing for collisions resolution. [MIT]288⭐
77🍴
LSHBOX) - A c++ toolbox of locality-sensitive hashing (LSH), provides several popular LSH algorithms, also support Python and MATLAB. [GPL]3038⭐
292🍴
parallel-hashmap) - A family of header-only, very fast and memory-friendly hashmap and btree containers [Apache2] 🌎 website826⭐
99🍴
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] 🌎 website464⭐
33🍴
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] website157⭐
20🍴
plf::list) - A std::list implementation which removes range splicing in order to enable cache-friendlier structure, yielding significant performance gains. [zLib] website67⭐
6🍴
plf::stack) - A replacement container for the std::stack container adaptor, with better performance than any std container in a stack context. [zLib] website161⭐
14🍴
ring_span lite) - A simplified implementation of Arthur O'Dwyer's ring_span implementation ie. a circular buffer view. [MIT]1581⭐
153🍴
robin-hood-hashing) - Fast & memory efficient hashtable based on robin hood hashing for C++14. [MIT]1386⭐
130🍴
robin-map) - Fast hash map and hash set using robin hood hashing. [MIT]1288⭐
127🍴
sparsepp) - A fast, memory efficient hash map for C++. [BSD 3-clause]6⭐
2🍴
sqlitemap) - Persistent map backed by SQLite. [MIT]108⭐
23🍴
st_tree) - A fast and flexible c++ template class for tree data structures. [Apache-2.0]107⭐
11🍴
svector) - Compact SVO optimized vector for C++17 or higher. [MIT]146⭐
32🍴
tree.hh) - An STL-like C++ header-only tree library. [GPL2+]1139⭐
93🍴
unordered_dense) - A fast & densely stored hashmap and hashset based on robin-hood backward shift deletion. [MIT]
Cryptography and Encryption Libraries
- 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+]
- Botan - A crypto library for C++. [BSD-2]
5289⭐
1634🍴
Crypto++) - A free C++ class library of cryptographic schemes. [Boost] website202⭐
51🍴
digestpp) - C++11 header-only message digest (hash) library. [PublicDomain]- 🌎 GnuPG - A complete and free implementation of the OpenPGP standard. [GPL]
- GnuTLS - A secure communications library implementing the SSL, TLS and DTLS protocols. [LGPL2.1]
- 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. [?]
12896⭐
1803🍴
libsodium) - P(ortable|ackageable) NaCl-based crypto library, opinionated and easy to use. [ISC]707⭐
107🍴
libhydrogen) - A lightweight, secure, easy-to-use crypto library suitable for constrained environments. [ISC]1699⭐
485🍴
LibTomCrypt) - A fairly comprehensive, modular and portable cryptographic toolkit. [WTFPL]6080⭐
2748🍴
mbedTLS) - An open source, portable, easy to use, readable and flexible SSL library, previously known as PolarSSL. [Apache2] 🌎 website- Nettle - A low-level cryptographic library. [LGPL]
28420⭐
10791🍴
OpenSSL) - A robust, commercial-grade, full-featured, and Open Source cryptography library. [Apache] website111⭐
22🍴
retter) - A collection of hash functions, ciphers, tools, libraries, and materials related to cryptography.4620⭐
738🍴
s2n) - An implementation of the TLS/SSL protocols. [Apache]1362⭐
197🍴
sha1collisiondetection) - Library and command line tool to detect SHA-1 collision in a file. [MIT]13550⭐
1179🍴
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]4660⭐
1353🍴
Tiny AES in C) - Small portable AES128/192/256 in C. [PublicDomain]1934⭐
153🍴
Themis) - crypto library for painless data security, providing symmetric and asymmetric encryption, secure sockets with forward secrecy, for mobile and server platforms. [Apache2]95⭐
21🍴
HEhub) - A library for homomorphic encryption and its applications. [Apache2]
Libraries for parsing Comma Separated Value (CSV) files
15⭐
1🍴
commata) - Just another header-only C++17 CSV parser. [Unlicense]599⭐
104🍴
csv2) - Fast CSV parser for modern C++. [MIT]31⭐
5🍴
Csv::Parser) - Compile-time and runtime CSV parser written in C++17. [Zlib]2286⭐
440🍴
Fast C++ CSV Parser) - Small, easy-to-use and fast header-only library for reading CSV files. [BSD-3-Clause]2074⭐
182🍴
Glaze) - High performance, header only, CSV library with reflection support. [MIT]88⭐
12🍴
lazycsv) - A fast, lightweight and single-header csv parser for modern C++. [MIT]981⭐
191🍴
rapidcsv) - An easy-to-use, header-only C++ CSV parser library. [BSD-3-Clause]55⭐
5🍴
ssp) - A header only "csv" parser which is fast and versatile with modern C++ api. [MIT]1016⭐
175🍴
Vince's CSV Parser) - A fast, self-contained, streaming C++17 CSV parser with optional type-casting and statistics. [MIT]235⭐
17🍴
zsv) - The world's fastest (simd) CSV parser, with an extensible CLI. [MIT]
Database Libraries, SQL Servers, ODBC Drivers, and Tools
342⭐
181🍴
ClickHouse) - C++ client for ClickHouse DBMS. [Apache2]241⭐
18🍴
CrossDB) - Ultra High-performance Lightweight Embedded and Server OLTP RDBMS. [MPL-2.0] 🌎 website- 🌎 DuckDB - in-process SQL OLAP Database Management System. [MIT] 🌎 website
717⭐
120🍴
hiberlite) - C++ Object-relational mapping for sqlite3. [BSD]6482⭐
1842🍴
Hiredis) - A minimalistic C client library for the Redis database. [BSD]4031⭐
381🍴
Infinity) - The AI-native database built for LLM applications, providing incredibly fast vector and full-text search. [Apache2]3041⭐
198🍴
Kuzu) - Embeddable property graph database management system built for query speed and scalability. Implements Cypher. [MIT] 🌎 website4002⭐
559🍴
Kvrocks) - A distributed key value NoSQL database that uses RocksDB as storage engine and is compatible with Redis protocol. [Apache2]38056⭐
8055🍴
LevelDB) - A fast key-value storage library written at Google that provides an ordered mapping from string keys to string values. [BSD]1355⭐
200🍴
libpg_query) - C library for accessing the PostgreSQL parser outside of the server environment. [BSD-3-Clause]1170⭐
260🍴
libpqxx) - The official C++ client API for PostgreSQL. [BSD-3-Clause]- 🌎 LMDB - Very fast embedded key/value store with full ACID semantics. [OpenLDAP]
278⭐
87🍴
LMDB++) - C++11 wrapper for the LMDB embedded database library. [PublicDomain]41⭐
6🍴
mgclient) - C/C++ Memgraph Client. [Apache2]848⭐
456🍴
MongoDB C Driver) - MongoDB client library for C. [Apache2]1077⭐
544🍴
MongoDB C++ Driver) - C++ driver for MongoDB. [Apache2]347⭐
179🍴
MongoDB Libbson) - A BSON utility library. [Apache2]- MySQL++ - A C++ wrapper for MySQL's C API. [LGPL]
361⭐
89🍴
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]
189⭐
79🍴
redis3m) - Wrapper of hiredis with clean C++ interface, supporting sentinel and ready to use patterns. [Apache2]791⭐
61🍴
Reindexer) - Embeddable, in-memory, document-oriented database with a high-level Query builder interface. [Apache2] 🌎 website30402⭐
6595🍴
RocksDB) - Embedded key-value store for fast storage from facebook. [BSD]550⭐
86🍴
SimDB) - High performance, shared memory, lock free, cross platform, single file, minimal dependencies, C++11 key-value store. [Apache2]1513⭐
497🍴
SOCI) - A database abstraction layer for C++. [Boost]987⭐
80🍴
Speedb) - Community-led project: A RocksDB compliant high performance scalable embedded key-value store. [Apache2]- SQLite - A completely embedded, full-featured relational database in a few 100k that you can include right into your project. [PublicDomain]
2529⭐
545🍴
SQLiteC++) - SQLiteC++ (SQLiteCpp) is a smart and easy to use C++ SQLite3 wrapper. [MIT]938⭐
164🍴
sqlite_modern_cpp) - Header only C++14 wrapper around sqlite library. [MIT]2530⭐
333🍴
sqlite_orm) - SQLite ORM light header only library for modern C++. [AGPL + paid MIT]2575⭐
350🍴
sqlpp11) - A type safe embedded domain specific language for SQL queries and results in C++. [BSD-2-Clause]210⭐
21🍴
TidesDB) - High-performance, durable, transactional embedded storage engine designed for flash and RAM optimization. [MPL-2.0] 🌎 website1978⭐
196🍴
TileDB) - Fast Dense and Sparse Multidimensional Array DBMS. [MIT] 🌎 website323⭐
31🍴
TinyORM) - Modern C++ ORM library. [MIT] 🌎 website2238⭐
173🍴
UnQLite) - A self-contained, serverless, zero-configuration, transactional NoSQL engine. [BSD-2-Clause] 🌎 website- 🌎 upscaledb - An embedded "typed" key/value store with a built-in query interface. [GPLv3]
11⭐
1🍴
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]737⭐
78🍴
Trilogy) - a client library for MySQL-compatible database servers, designed for performance, flexibility, and ease of embedding. [MIT]604⭐
34🍴
UStore) - Multi-Modal database for BLOBs, JSON, and graphs. [Apache2]3866⭐
1402🍴
Velox) - A C++ vectorized database acceleration library aimed to optimizing query engines and data processing systems. [Apache-2.0] 🌎 website
Data visualization Libraries
24⭐
1🍴
gplot++) - Cross-platform header-only C++ plotting library that interfaces with Gnuplot. [MIT]4656⭐
352🍴
matplotplusplus) - C++ Graphics Library for Data Visualization. [MIT] 🌎 website308⭐
36🍴
morphologica) - C++ header-only graphing and data visualization with modern OpenGL. [Apache-2.0] 🌎 website
Debugging Libraries, Memory Leak and Resource Leak Detection, Unit Testing
4123⭐
522🍴
backward-cpp) - A beautiful stack trace pretty printer for C++. [MIT]- 🌎 Bencher - A suite of continuous benchmarking tools designed to catch performance regressions in CI. [MIT]/[Apache2]
9691⭐
1697🍴
benchmark) - Google provided small microbenchmark support library. [Apache2]203⭐
145🍴
Boost.Test) - Boost Test Library. [Boost] 🌎 website1124⭐
220🍴
check) - Check is a unit testing framework for C. [LGPL-2.1] 🌎 website6377⭐
672🍴
doctest) - The lightest feature rich C++ single header testing framework. [MIT]19733⭐
3136🍴
Catch2) - A modern, C++-native, test framework for unit-tests, TDD and BDD. [Boost]854⭐
97🍴
Celero) - C++ Benchmarking Framework. [Apache2]354⭐
12🍴
cpp-dump) - A C++ library for debugging purposes that can print any variable, even user-defined types. [MIT]1443⭐
534🍴
CppUTest) - Unit testing and mocking framework for C/C++. [BSD-3-clause]- CUTE - C++ Unit Testing Easier. [LGPL3]
- 🌎 CMocka - unit testing framework for C with support for mock objects. [Apache2]
312⭐
51🍴
CppBenchmark) - Performance benchmark framework for C++ with nanoseconds measure precision. [MIT]1181⭐
131🍴
Cpptrace) - A simple, portable, and self-contained C++ stacktrace library supporting C++11 and greater. [MIT]- CppUnit - C++ port of JUnit. [LGPL2]
57⭐
3🍴
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]
3181⭐
270🍴
dbg-macro) - A dbg(…) macro for C++. [MIT]1143⭐
162🍴
DebugViewPP) - Debug logging viewer. [Boost]- Deleaker - A tool for resource leak detection, including memory, GDI and handle leaks.
1302⭐
178🍴
FakeIt) - Simple mocking framework for C++. [MIT]870⭐
172🍴
fff) - A micro-framework for creating fake C functions. [MIT]36958⭐
10492🍴
Google Mock) - A library for writing and using C++ mock classes. [BSD]36958⭐
10492🍴
Google Test) - Google C++ Testing Framework. [BSD]200⭐
68🍴
Hippomocks) - Single-header mocking framework. [LGPL-2.1]715⭐
36🍴
IceCream-Cpp) - Never use cout/printf to debug again [MIT]184⭐
24🍴
ig-debugheap) - Multiplatform debug heap useful for tracking down memory errors. [BSD]665⭐
50🍴
libassert) - The most over-engineered C++ assertion library. [MIT]258⭐
63🍴
libtap) - Write tests in C. [GPL2]1539⭐
124🍴
microprofile) - Profiler with web-view for multiple platforms. [Unlicense]604⭐
101🍴
MinUnit) - A minimal unit testing framework for C self-contained in a single header file. [MIT]1594⭐
91🍴
nanobench) - Simple, fast, accurate single-header microbenchmarking functionality for C++11/14/17/20. [MIT] 🌎 website143⭐
14🍴
Nanotimer) - A simple low-overhead cross-platform timer class for benchmarking. [zLib] website365⭐
48🍴
Nonius) - A C++ micro-benchmarking framework. [CC]3258⭐
283🍴
Remotery) - Single C File Profiler with Web Viewer. [Apache2]292⭐
12🍴
snitch) - Lightweight C++20 testing framework. [Boost]504⭐
26🍴
Touca) - Open-source regression testing system that you can self-host. [Apache2] 🌎 website573⭐
178🍴
UnitTest++) - A lightweight unit testing framework for C++. [MIT/X Consortium license]4712⭐
1054🍴
Unity) - Simple Unit Testing for C. [MIT]920⭐
67🍴
utest.h) - Single header unit testing framework for C and C++. [Unlicense]319⭐
14🍴
utl::profiler) - Singe-header profiler for C++17. [MIT]1373⭐
134🍴
μ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++.
107⭐
10🍴
Doxide) - Modern documentation for modern C++, configure with YAML, output Markdown. [Apache 2.0] 🌎 website6127⭐
1317🍴
doxygen) ⚡ - The de facto standard tool for generating documentation from annotated C++ sources. [GPL2] 🌎 website308⭐
25🍴
doxyrest) - A compiler from Doxygen XML to reStructuredText for Sphinx. [MIT]331⭐
24🍴
hdoc) - The modern documentation tool for C++. [AGPL/Proprietary] 🌎 website214⭐
35🍴
Natural Docs) - Natural Docs is an open source documentation generator for multiple programming languages. [AGPL/Proprietary] 🌎 website7332⭐
2263🍴
Sphinx) - Sphinx makes it easy to create intelligent and beautiful documentation. [BSD-2-Clause] 🌎 website
Digital signal processing.
1979⭐
390🍴
DSPFilters) - A collection of useful C++ classes for digital signal processing. [MIT]- FFTW - A C library for computing the DFT in one or more dimensions. [GPL]
718⭐
153🍴
iir1) - IIR Realtime C++ filter library. [MIT]1710⭐
323🍴
kissfft) - A Fast Fourier Transform (FFT) library that tries to Keep it Simple, Stupid. [BSD-3-Clause]102⭐
37🍴
pocketfft) - FFT implementation based on FFTPack, but with several improvements. [BSD-3-Clause]410⭐
135🍴
wavelib) - C implementation of 1D and 2D wavelet transforms. [BSD-3-Clause]
Libraries for parsing and manipulating font files.
- 🌎 Fontconfig - Font configuration and customization library. [MIT] 🌎 website
- 🌎 FreeType - FreeType is a freely available software library to render fonts. [FTL & GPLv2]
438⭐
64🍴
otfcc) - A C library and utility used for parsing and writing OpenType font files. [Apache-2.0]4925⭐
681🍴
harfbuzz) - A text shaping engine. [Old MIT]522⭐
40🍴
libschrift) - A lightweight TrueType font rendering library. [ISC]
1889⭐
164🍴
Acid) - A high speed C++17 Vulkan game engine. [MIT]- Allegro - A cross-platform library mainly aimed for video games and multimedia programming. [zlib]
1164⭐
236🍴
Axmol Engine) - A cross-platform game engine for desktop, mobile, and XBOX (UWP), derived from Cocos2d-x-4.0. [MIT] 🌎 website- Cocos2d-x - A multi-platform framework for building 2d games, interactive books, demos and other graphical applications. [MIT]
1917⭐
208🍴
Corange) - A game engine written in pure C, SDL and OpenGL. [BSD]13⭐
0🍴
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]- delta3d - A robust simulation platform. [LGPL2]
11503⭐
986🍴
EnTT) - Gaming meets modern C++. [MIT]4677⭐
1321🍴
GamePlay) - A cross-platform native C++ game framework for creating 2D/3D mobile and desktop games. [Apache2]100703⭐
23068🍴
Godot) - A fully featured, open source, MIT licensed, game engine. [MIT]118⭐
22🍴
Grit) - Community project to build a free game engine for implementing open world 3D games. [MIT]3746⭐
169🍴
Halley) - A lightweight game engine written in C++14 with a "true" entity-component system. [Apache 2.0]12512⭐
1538🍴
Hazel Game Engine) - Hazel is primarily an early-stage interactive application and rendering engine for Windows. [Apache-2.0 license]?⭐
?🍴
JNGL) - 2D library for Linux, Windows, macOS, Android, iOS, Xbox, the Nintendo Switch and the Web. [zlib] 🌎 website2152⭐
350🍴
KlayGE) - a cross-platform open source game engine with plugin-based architecture. [GPLv2] website1206⭐
72🍴
nCine) - A cross-platform 2D game engine with an emphasis on performance, written in C++11 and optionally scriptable in Lua. [MIT] 🌎 website8487⭐
2332🍴
o3de) - An open-source, real-time, multi-platform 3D engine based on Amazon Lumberyard. [Apache2] 🌎 website3264⭐
476🍴
OpenXRay) - a community-modified X-Ray engine used in S.T.A.L.K.E.R. game series. [Modified BSD/non-commercial only]- Oxygine - A cross-platform 2D C++ game engine. [MIT]
4875⭐
835🍴
Panda3D) - A game engine, a framework for 3D rendering and game development for Python and C++ programs. [Modified BSD] 🌎 website4003⭐
918🍴
PixelGameEngine) - The official distribution of olcPixelGameEngine, a tool used in javidx9's YouTube videos and projects. [OLC3]2391⭐
353🍴
Polycode) - A cross-platform framework for creative code in C++ (with Lua bindings). [MIT] website54⭐
7🍴
quakeforge) - Actively maintained branch of the original Quake engine code with 20+ years of development. [GPL-2.0]27951⭐
2641🍴
raylib) - A simple and easy-to-use library to enjoy videogames programming. [zlib/libpng] website3756⭐
860🍴
Spring) - A powerful free cross-platform RTS game engine. [GPLv2/GPLv3] 🌎 website1407⭐
120🍴
Torque2D) - An open-source and cross-platform C++ engine built for 2D game development. [MIT] 🌎 website1763⭐
193🍴
Torque3D) - An open-source C++ engine built for 3D game development. [MIT] 🌎 website1589⭐
103🍴
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.- 🌎 Urho3D - A free lightweight, cross-platform 2D and 3D game engine implemented in C++. Greatly inspired by OGRE and Horde3D. [MIT]
1769⭐
222🍴
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
623⭐
130🍴
CXXGraph) - free C++(17) graph header-only library for representation and algorithms execution. [AGPL-3.0]330⭐
58🍴
Graaf) - A general-purpose lightweight C++20 graph library. [MIT] 🌎 website
Graphic User Interface
1704⭐
98🍴
Boden) - Native, mobile, cross-platform GUI Framework. [GPL/LGPL/Proprietary] 🌎 website- CEGUI - Flexible, cross-platform GUI library.
3537⭐
265🍴
Elements) - Lightweight, fine-grained, resolution independent, modular GUI library. [MIT]- FLTK - Fast, light, cross-platform C++ GUI toolkit. [LGPL2]
- FOX Toolkit - an open-source, cross-platform widget toolkit. [LGPL]
2394⭐
302🍴
GacUI) - GPU Accelerated C++ User Interface, with WYSIWYG developing tools, XML supports, built-in data binding and MVVM features. [Ms-PL]- GTK+ - A multi-platform toolkit for creating graphical user interfaces. [LGPL]
- gtkmm - The official C++ interface for the popular GUI library GTK+. [LGPL]
67883⭐
11155🍴
imgui) - Immediate Mode Graphical User Interface with minimal dependencies. [MIT]5517⭐
600🍴
implot) - Immediate Mode Plotting widgets for imgui. [MIT]- 🌎 iup - Multi-platform toolkit for building graphical user interfaces. [MIT]
10837⭐
622🍴
libui) - Simple and portable (but not inflexible) GUI library in C that uses the native GUI technologies of each platform it supports. [MIT]784⭐
222🍴
MyGUI) - Fast, flexible and simple GUI. [MIT]2432⭐
340🍴
nana) - Nana is a cross-platform library for GUI programming in modern C++ style. [Boost]1702⭐
212🍴
NanoGui) - A minimalistic cross-platform widget library for OpenGL 3.x or higher. [BSD]608⭐
61🍴
NAppGUI) - SDK for building cross-platform desktop apps in ANSI-C. [MIT] 🌎 website10334⭐
629🍴
nuklear) - A single-header ANSI C gui library. [PublicDomain]- 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]
3397⭐
356🍴
RmlUi) - The HTML/CSS User Interface library evolved. Fork of libRocket. [MIT]558⭐
37🍴
Saucer) - A modern, cross-platform C++ webview library. [MIT]- Sciter - Sciter is an embeddable HTML/CSS/scripting engine aimed to be used as an UI layer of modern desktop applications. [Free/Commercial]
20139⭐
725🍴
Slint) - Lightweight GUI toolkit for desktop and embedded. [GPL/Free/Proprietary] 🌎 website949⭐
105🍴
TGUI) - Cross-platform modern c++ GUI. [Zlib] 🌎 website3752⭐
243🍴
WebUI) - Use any web browser as GUI, with your preferred language in the backend and HTML5 in the frontend. [MIT] 🌎 website139⭐
59🍴
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]
3572⭐
159🍴
Yue) - A library for creating native cross-platform GUI apps. [LGPLv2]
12253⭐
3071🍴
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] website16056⭐
2011🍴
bgfx) - A cross-platform rendering library. [BSD]1789⭐
129🍴
Blend2D) - 2D vector graphics engine powered by a JIT compiler. [Zlib] 🌎 website- Cairo - A 2D graphics library with support for multiple output devices. [LGPL2 or Mozilla MPL]
75⭐
21🍴
C-Turtle) - A C++11 header-only turtle graphics library acting as a CImg wrapper. [MIT]3978⭐
354🍴
Diligent Engine) - A modern cross-platform low-level 3D graphics library. [Apache2]2727⭐
528🍴
DirectXTK) - A collection of helper classes for writing DirectX 11.x code in C++. [MIT]14154⭐
5626🍴
GLFW) - A simple, cross-platform OpenGL wrangling library. [zlib/libpng]112⭐
22🍴
GLFWPP) - A thin modern C++17 header-only wrapper for GLFW. [MIT]622⭐
65🍴
Harfang 3D) 3D visualization library usable in C++, Python, Lua and Go. Based on BGFX. [GPLv3/LGPLv3/Proprietary] 🌎 website1754⭐
81🍴
herebedragons) - A basic 3D scene implemented with various engines, frameworks or APIs. [MIT] website1570⭐
306🍴
Horde3D) - A small 3D rendering and animation engine. [EPL]1423⭐
91🍴
Ion) - A small and efficient set of libraries for building cross-platform client or server applications that use 3D graphics. [Apache2] 🌎 website- Irrlicht - A high performance realtime 3D engine written in C++. [zlib]
4844⭐
1176🍴
libigl) - Simple C++ geometry processing library. [MPL2]2389⭐
150🍴
LLGL) - Low Level Graphics Library (LLGL) is a thin abstraction layer for the modern graphics APIs. [BSD-3-Clause]1056⭐
146🍴
LunaSVG) - a standalone SVG rendering library in C++. [MIT]5027⭐
452🍴
magnum) - Lightweight and modular C++11/C++14 graphics middleware for games and data visualization. [MIT] website345⭐
22🍴
micro-gl) - Realtime, Embeddable, Headers Only C++11 CPU vector graphics. no STD lib, no FPU and no GPU required. [CUSTOM] 🌎 website5435⭐
793🍴
NanoVG) - Antialiased 2D vector drawing library on top of OpenGL for UI and visualizations. [Zlib]- Ogre 3D ⚡ - A scene-oriented, real-time, flexible 3D rendering engine (as opposed to a game engine) written in C++. [MIT] 🌎 website
- OpenSceneGraph - An open source high performance 3D graphics toolkit. [OSGPL]
2995⭐
579🍴
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]
474⭐
134🍴
Partio) - Library for wrangling particle data, with support for most common file formats. [Modified BSD]10057⭐
1611🍴
Skia) - A complete 2D graphic library for drawing Text, Geometries, and Images. [BSD] 🌎 website1167⭐
149🍴
ThorVG) - a platform-independent portable library that allows for drawing vector-based scenes and animations, including SVG and Lottie. [MIT] 🌎 website1291⭐
212🍴
TinySpline) - A small, yet powerful ANSI C library for interpolating, transforming, and querying arbitrary NURBS, B-Splines, and Bézier curves. [MIT]4648⭐
1002🍴
urho3d) - Cross-platform rendering and game engine. [Many different, mostly MIT]2878⭐
208🍴
Yocto/GL) - Tiny C++ Libraries for Data-Driven Physically-based Graphics. [MIT]2162⭐
122🍴
olive.c) - Simple 2D Graphics Library. [MIT]
186⭐
168🍴
Boost.GIL) - Generic Image Library. [Boost] 🌎 website47⭐
13🍴
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]
14121⭐
3442🍴
Dlib) ⚡ - A modern C++11 machine learning, computer vision, numerical optimization, and deep learning toolkit. [Boost] website942⭐
59🍴
fpng) - Super fast C++ .PNG writer/reader. [Unlicense]- FreeImage - An open source library that supports popular graphics image formats and others as needed by today's multimedia applications. [GPL2 or GPL3]
942⭐
273🍴
GD) - GD Graphics Library, famously used in PHP for image loading/manipulation & thumbnail generation. [custom permissive license, requires mention in user docs] website- DCMTK - DICOM Toolkit.
- GDCM - Grassroots DICOM library.
- ITK - An open-source, cross-platform system for image analysis. [Apache2 from ITK 4.0]
- [Jpegli][https://github.com/google/jpegli] - an improved JPEG encoder and decoder implementation. [BSD-3-Clause]
1953⭐
415🍴
Leptonica) - Leptonica is an open source library containing software that is broadly useful for image processing and image analysis applications. [BSD-2-Clause] website1853⭐
242🍴
libavif) - Library for encoding and decoding .avif files. [BSD-2-Clause]12611⭐
3044🍴
libfacedetection) - Open source library for face detection in images. The face detection speed can reach 1500FPS. [BSD]4033⭐
1083🍴
libjpeg-turbo) - A JPEG image codec that uses SIMD instructions to accelerate baseline JPEG encoding and decoding. [IJG & BSD-3-Clause & zlib] 🌎 website3094⭐
311🍴
libjxl) - JPEG XL image format reference implementation. [BSD-3-Clause]1464⭐
713🍴
libpng) - the reference library for use in applications that read, create, and manipulate PNG (Portable Network Graphics) raster image files. [libpng-2.0] 🌎 website793⭐
82🍴
libspng) - Simple, modern libpng alternative. [BSD-2] 🌎 website64⭐
5🍴
libvips) - A fast image processing library with low memory needs. [LGPL] website2232⭐
447🍴
LodePNG) - PNG encoder and decoder in C and C++. [Zlib]- 🌎 Magick++ - ImageMagick program interfaces for C++. [Apache2]
- 🌎 MagickWnd - ImageMagick program interfaces for C. [Apache2]
5599⭐
429🍴
MozJPEG) - Improved JPEG encoder. [BSD/BSD-3-Clause/ZLIB]- OpenCV ⚡ - Open source computer vision. [Apache2] 🌎 website
- OpenEXR - Cross-platform library for high dynamic range imaging. [Modified BSDF]
2154⭐
636🍴
OpenImageIO) - Powerful image and texture wrangling library with support for a wide number of common lossy and RAW formats. [Modified BSD]1048⭐
490🍴
OpenJPEG) - an open-source JPEG 2000 codec written in C language. [BSD-2-Clause]191⭐
8🍴
PlutoFilter) - A single-header, zero-allocation image filter library in C. [MIT]7259⭐
347🍴
QOI) - The “Quite OK Image Format” for fast, lossless image compression. [MIT]328⭐
26🍴
SAIL) - Easy-to-use cross-platform image decoding library with pluggable image codecs. [MIT]2196⭐
438🍴
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]29782⭐
7881🍴
stb-image) - STB single-header image loading library. [Public Domain]- tesseract-ocr - An OCR engine. [Apache2]
171⭐
35🍴
TinyDNG) - Header-only Tiny DNG/TIFF loader and writer in C++. [MIT]126⭐
46🍴
TinyEXIF) - Tiny ISO-compliant C++ EXIF and XMP parsing library for JPEG. [MIT]155⭐
45🍴
TinyTIFF) - lightweight TIFF reader/writer library. [GPL-3.0]727⭐
113🍴
Video++) - A C++14 high performance video and image processing library. [MIT]427⭐
197🍴
VIGRA) - A generic C++ computer vision library for image analysis. [MIT X11]- VTK - Open-source, freely available software system for 3D computer graphics, image processing and visualization. [BSD]
- 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]
1500⭐
95🍴
simdutf) - Unicode routines (UTF8, UTF16, UTF32): billions of characters per second using SSE2, AVX2, NEON, AVX-512. [Apache-2/MIT]298⭐
27🍴
uni-algo) - Unicode Algorithms Implementation for C/C++. [Unlicense or MIT]1876⭐
135🍴
utf8.h) - Single header utf8 string functions for C and C++. [Unlicense]1151⭐
156🍴
utf8proc) - A clean C library for processing UTF-8 Unicode data. [MIT]
- 🌎 Apache Thrift - Efficient cross-language IPC/RPC, works between C++, Java, Python, PHP, C#, and many more other languages. Originally developed by Facebook. [Apache2]
157⭐
126🍴
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] 🌎 website17278⭐
4050🍴
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] 🌎 website12395⭐
977🍴
Cap'n Proto) - Fast data interchange format and capability-based RPC system. [MIT] 🌎 website11⭐
3🍴
eCAL) - Pub/sub, client/server, C++/Python/C#, various message protocols (protobuf, capnproto ..). [Apache2] website43566⭐
10873🍴
gRPC) - A high performance, open source, general-purpose RPC framework. [BSD] website2130⭐
603🍴
Ice) - Comprehensive RPC framework with support for C++, C#, Java, JavaScript, Python and more. [GPLv2]1890⭐
437🍴
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] 🌎 website981⭐
323🍴
libjson-rpc-cpp) - JSON-RPC framework for C++ servers and clients. [MIT]6152⭐
1020🍴
nanomsg) - A simple high-performance implementation of several "scalability protocols". [MIT] website4225⭐
508🍴
nng) - nanomsg-next-generation, a light-weight brokerless messaging library. [MIT] 🌎 website1789⭐
392🍴
rpclib) - A modern C++ msgpack-RPC server and client library. [MIT]42⭐
9🍴
simple-rpc-cpp) - A simple RPC wrapper generator to C/C++ functions. [BSD]2086⭐
407🍴
SRPC) - A lightweight RPC system that supports multiple protocols and OpenTelemetry. [Apache2]- WAMP - Provides RPC and pub/sub messaging patterns. (various implementations, various languages)
- xmlrpc-c - A lightweight RPC library based on XML and HTTP. [BSD]
58⭐
94🍴
Boost.PropertyTree) - A property tree parser/generator that can be used to parse XML/JSON/INI/Info files. [Boost] 🌎 website11920⭐
3351🍴
cJSON) - Ultralightweight JSON parser in ANSI C. [MIT]498⭐
34🍴
DAW JSON Link) - Fast, convenient JSON serialization and parsing in C++. [BSL-1.0]737⭐
168🍴
frozen) - JSON parser and generator for C/C++. [GPL & GPL2]2074⭐
182🍴
Glaze) - Extremely fast, in memory, JSON and interface library for modern C++. [MIT]3230⭐
835🍴
Jansson) - C library for encoding, decoding and manipulating JSON data. [MIT]38⭐
5🍴
jbson) - jbson is a library for building & iterating BSON data, and JSON documents in C++14. [Boost]134⭐
23🍴
JeayeSON) - A very sane (header only) C++ JSON library. [BSD]3904⭐
803🍴
Jsmn) - A minimalistic JSON parser in C. [MIT]47021⭐
7116🍴
json) ⚡ - JSON for Modern C++. [MIT] 🌎 website545⭐
175🍴
JSON++) - A JSON parser in C++. [MIT]748⭐
28🍴
json.cpp) - a baroque JSON parsing / serialization library for C++. [Apache-2.0]762⭐
87🍴
json.h) - A simple one header/one source solution to parsing JSON in C and C++. [Unlicense]41⭐
3🍴
json-build) - C89 tiny zero-allocation JSON serializer. [MIT]3156⭐
1083🍴
json-c) - A JSON implementation in C. [MIT]793⭐
184🍴
jsoncons) - A C++ header-only library for JSON and JSON-like binary formats with JSONPointer, JSONPatch, JSONPath and JMESPath. [Boost]8665⭐
2708🍴
JsonCpp) - A C++ library for interacting with JSON. [MIT]87⭐
9🍴
Jsonifier) - A few classes for parsing and serializing objects from/into JSON - very rapidly. [MIT]11⭐
1🍴
jsonParse) - A simple JSON parser in ANSI C. [MIT]1309⭐
291🍴
json-parser) - Very low footprint JSON parser written in portable ANSI C. [BSD]2584⭐
620🍴
json11) - A tiny JSON library for C++11. [MIT]451⭐
58🍴
json-struct) - High performance, single header JSON parser parsing to and from C++ structs. [MIT]128⭐
18🍴
json-voorhees) - JSON library for C++. Support for C++11. No dependencies, fast and dev-friendly. [Apache2]51⭐
7🍴
JSON Toolkit) - JSON, JSON Pointer, JSON Schema, and JSONL library for C++20. [AGPL/Commercial]73⭐
26🍴
jute) - Very simple C++ JSON Parser. [PublicDomain]290⭐
97🍴
libjson) - A JSON parser and printer library in C. easy to integrate with any model. [LGPL]- libjson - Lightweight JSON library. [?]
1684⭐
141🍴
LIBUCL) ⚡ - Universal configuration library parser. [BSD-2-Clause]130⭐
25🍴
meojson) - Next-gen C++ JSON/JSON5 Serialization Engine | Zero Dependency | Header-Only | Unleash JSON Potential. [MIT]1420⭐
335🍴
parson) - Parson is a lighweight json library written in C. [MIT]1137⭐
221🍴
PicoJSON) - A header-file-only, JSON parser serializer in C++. [BSD]330⭐
107🍴
qt-json) - A simple class for parsing JSON data into a QVariant hierarchy and vice versa. [GPLv3]290⭐
144🍴
QJson) - A qt-based library that maps JSON data to QVariant objects. [LGPL2]14800⭐
3613🍴
RapidJSON) ⚡ - A fast JSON parser/generator for C++ with both SAX/DOM style API. [MIT] 🌎 website569⭐
44🍴
sajson) - Lightweight, extremely high-performance JSON parser for C++11. [MIT]21122⭐
1107🍴
simdjson) - Extremely fast JSON library that can parse gigabytes of JSON per second. [Apache-2.0]934⭐
115🍴
Sonic-Cpp) - A fast JSON serializing & deserializing library, accelerated by SIMD. [Apache-2.0]655⭐
87🍴
taoJSON) - Zero-dependency C++ header-only JSON library. [MIT]- 🌎 ujson - µjson is a a small, C++11, UTF-8, JSON library. [MIT]
4443⭐
372🍴
UltraJSON) - Ultra fast JSON decoder and encoder written in C. [BSD-3-Clause]2197⭐
440🍴
YAJL) - A fast streaming JSON parsing library in C. [ISC]3421⭐
291🍴
yyjson) - A high performance JSON library written in ANSI C. [MIT]
- 🌎 Abseil Logging - The Abseil Logging library provides facilities for writing log messages to stderr, files, or other sinks. [Apache-2.0]
202⭐
58🍴
Blackhole) - Attribute-based logging framework, which is designed to be fast, modular and highly customizable. [MIT]199⭐
111🍴
Boost.Log) - Designed to be very modular and extensible. [Boost] 🌎 website404⭐
35🍴
BqLog) - A lightweight, high-performance logging system used in projects such as "Honor of Kings". [Apache-2.0]3896⭐
940🍴
Easylogging++) - Extremely light-weight high performance logging library for C++11 (or higher) applications. [MIT]926⭐
143🍴
fmtlog) - A performant fmtlib-style logging library with latency in nanoseconds. [MIT]934⭐
277🍴
G3log) - Asynchronous logger with Dynamic Sinks. [PublicDomain]7331⭐
2099🍴
glog) - C++ implementation of the Google logging module.77⭐
7🍴
haclog) - An extremely fast plain C logging library. [MIT]- Log4cpp - A library of C++ classes for flexible logging to files, syslog, IDSA and other destinations. [LGPL]
1705⭐
566🍴
log4cplus) - A simple to use C++ logging API providing thread-safe, flexible, and arbitrarily granular control over log management and configuration. [BSD & Apache2]1853⭐
273🍴
loguru) - A lightweight C++ logging library. [PublicDomain]306⭐
31🍴
lwlog) - Very fast synchronous and asynchronous C++17 logging library. [MIT]46⭐
11🍴
ng-log) - C++14 library for application-level logging. [BSD-3-Clause]2414⭐
401🍴
plog) - Portable and simple log for C++ in less than 1000 lines of code. [MPL2]497⭐
49🍴
reckless) - Low-latency, high-throughput, asynchronous logging library for C++. [MIT]27162⭐
4898🍴
spdlog) - Super fast, header only, C++ logging library.- 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]
2438⭐
224🍴
Quill) - Asynchronous cross platform low latency logging library. [MIT]
34512⭐
18618🍴
Caffe) - A fast framework for neural networks. [BSD]8546⭐
1234🍴
catboost) - A fast, scalable, high performance Gradient Boosting on Decision Trees library. [Apache2]7164⭐
1710🍴
CCV) - C-based/Cached/Core Computer Vision Library, A Modern Computer Vision Library. [BSD]26289⭐
21271🍴
darknet) - Open source neural network framework written in C and CUDA. [PublicDomain] 🌎 website14121⭐
3442🍴
Dlib) ⚡ - A modern C++11 machine learning, computer vision, numerical optimization, and deep learning toolkit. [Boost] website36842⭐
4016🍴
FAISS) - A library for efficient similarity search and clustering of dense vectors. [MIT]457⭐
81🍴
Fido) - A highly-modular C++ machine learning library for embedded electronics and robotics. [MIT] website5405⭐
499🍴
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] 🌎 website13088⭐
1317🍴
ggml) - Tensor library for machine learning with 16-bit and 4-bit quantization support. [MIT]4658⭐
1637🍴
libsvm) - A simple, easy-to-use, efficient library for Support Vector Machines. [BSD-3-Clause] 🌎 website2907⭐
249🍴
m2cgen) - A CLI tool to transpile trained classic ML models into a native C code with zero dependencies. [MIT]709⭐
241🍴
MeTA) - A modern C++ data sciences toolkit. [MIT] 🌎 website705⭐
172🍴
Minerva) - A fast and flexible system for deep learning. [Apache2]5464⭐
1668🍴
mlpack) - A scalable c++ machine learning library. [LGPLv3] website21981⭐
4315🍴
ncnn) - A high-performance neural network inference computing framework optimized for mobile platforms. [BSD]83733⭐
56272🍴
OpenCV) ⚡ - Open Source Computer Vision Library. [BSD] website640⭐
225🍴
oneDAL) - A powerful machine learning library that helps speed up big data analysis. [Apache]17695⭐
3419🍴
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] 🌎 website268⭐
63🍴
Recommender) - C library for product recommendations/suggestions using collaborative filtering (CF). [BSD]900⭐
229🍴
RNNLIB) - RNNLIB is a recurrent neural network library for sequence learning problems. [GPLv3]3048⭐
1034🍴
SHOGUN) - The Shogun Machine Learning Toolbox. [GPLv3]- 🌎 sofia-ml - The suite of fast incremental algorithms for machine learning. [Apache2]
3070⭐
217🍴
USearch) - Fast search and clustering library for vectors and strings. [Apache2]1634⭐
619🍴
VLFeat) - The VLFeat open source library implements popular computer vision algorithms specialising in image understanding and local featurexs extraction and matching. [BSD-2-Clause] website27286⭐
8798🍴
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]
200⭐
31🍴
Apophenia) - A C library for statistical and scientific computing. [GPL2]- 🌎 Armadillo - Fast C++ library for linear algebra & scientific computing. [Apache2] website
1839⭐
185🍴
autodiff) - A modern, fast and expressive C++ library for automatic differentiation. [MIT] 🌎 website- 🌎 blaze - high-performance C++ math library for dense and sparse arithmetic. [BSD]
229⭐
127🍴
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]
5507⭐
1487🍴
CGAL) - Collection of efficient and reliable geometric algorithms. [LGPL&GPL] website85⭐
16🍴
cml) - The configurable math library. [Boost]?⭐
?🍴
CNL) - A Compositional Numeric Library for C++. [Boost]1700⭐
249🍴
DirectXMath) - An all inline SIMD C++ linear algebra library for use in games and graphics apps.14121⭐
3442🍴
Dlib) ⚡ - A modern C++11 machine learning, computer vision, numerical optimization, and deep learning toolkit. [Boost] website- 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]
- 🌎 Geometric Tools - C++ library for computing in the fields of mathematics, graphics, image analysis and physics. [Boost] 🌎 website
10183⭐
2257🍴
GLM) - Header-only C++ math library that matches and inter-operates with OpenGL's GLSL math. [MIT] 🌎 website- 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]
783⭐
58🍴
Klein) - A fast, SIMD-optimized C++17 Geometric Algebra library for point, line, and plane projections, intersections, joins, rigid-body motion, and more. [MIT] 🌎 website817⭐
182🍴
libfixmath) - Cross Platform Fixed Point Maths Library. [MIT]920⭐
72🍴
linalg.h) - Single header, public domain, short vector math library for C++. [Unlicense]374⭐
104🍴
MATIO) - MATLAB MAT File I/O Library. [BSD-2-Clause] 🌎 website1349⭐
104🍴
MatX) - A GPU-accelerated C++17 numerical computing library with a MATLAB/Python-like syntax. [BSD 3-clause]686⭐
243🍴
MIRACL) - A Multiprecision Integer and Rational Arithmetic Cryptographic Library. [AGPL]3867⭐
579🍴
NumCpp) - A templatized header only C++ implementation of the Python Numpy library. [MIT]81⭐
7🍴
OMath) - Cross-platform modern general purpose math library written in C++23 that suitable for cheat/game development. [ZLIB]- 🌎 muparser - muParser is an extensible high performance math expression parser library written in C++. [MIT]
753⭐
212🍴
LibTomMath) - A free open source portable number theoretic multiple-precision integer library written entirely in C. [PublicDomain & WTFPL] website981⭐
142🍴
linmath.h) - A lean linear math library, aimed at graphics programming. [WTFPL]- 🌎 lp_solve - A library used to formulate and solve linear programming problems. [LGPL] website
6952⭐
1585🍴
OpenBLAS) - An optimized BLAS library based on GotoBLAS2 1.13 BSD version. [BSD 3-clause] website- 🌎 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]
6275⭐
2003🍴
QuantLib) - A free/open-source library for quantitative finance. [Modified BSD] website1460⭐
85🍴
SimSIMD) - Vector distance functions for x86 AVX2, AVX-512, Arm NEON, and SVE. [Apache2]553⭐
76🍴
StatsLib) - A C++ header-only library of statistical distribution functions. [Apache2] 🌎 website1271⭐
299🍴
SymEngine) - Fast symbolic manipulation library, a rewriting of SymPy's core in C++. [MIT]1746⭐
269🍴
TinyExpr) - A C library for parsing and evaluating math expressions from strings. [zlib]1505⭐
153🍴
Vc) - SIMD Vector Classes for C++. [BSD]- Versor - A (fast) Generic C++ library for Geometric Algebras, including Euclidean, Projective, Conformal, Spacetime (etc).
184⭐
35🍴
Wagyu) - A general library for geometry operations of union, intersections, difference, and xor. [mapbox-wagyu original]- 🌎 Wykobi - A C++ library of efficient, robust and simple to use C++ 2D/3D oriented computational geometry routines. [MIT]
3597⭐
422🍴
xtensor) - A C++14 library for numerical analysis with multi-dimensional array expressions, inspired by NumPy syntax. [BSD 3-clause] 🌎 website460⭐
67🍴
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]319⭐
14🍴
utl::random) - A C++17 header-only library implementing fast random for Monte-Carlo simulations & gamedev. [MIT]379⭐
45🍴
XAD) - Powerful Automatic Differentiation for C++. [AGPL] 🌎 website
3298⭐
427🍴
Boehm GC) - Conservative garbage collector for C and C++. [similar to X11] website1684⭐
146🍴
C Smart Pointers) - Smart pointers for the (GNU) C programming language. [MIT]1170⭐
132🍴
Hoard) - Fast, Scalable, and Memory-efficient Malloc for Linux, Windows, and Mac. [Apache-2.0] website10331⭐
1559🍴
jemalloc) - General purpose malloc(3) implementation that emphasizes fragmentation avoidance and scalable concurrency support. [BSD] website1554⭐
208🍴
memory) - STL compatible C++ memory allocator library. [ZLib]1871⭐
166🍴
memory-allocators) - Custom memory allocators to improve the performance of dynamic memory allocation. [MIT]11893⭐
982🍴
mimalloc) - A compact general purpose allocator with excellent performance. [MIT]2337⭐
200🍴
rpmalloc) - Cross platform lock free thread caching 16-byte aligned memory allocator implemented in C. [PublicDomain]1719⭐
116🍴
snmalloc) - Message passing based high-performance allocator. [MIT]4894⭐
524🍴
TCMalloc) - Google's fast, multi-threaded malloc implementation. [Apache-2.0] 🌎 website203⭐
15🍴
buddy_alloc) - A single header buddy memory allocator for C with bounded allocation costs. [0BSD]1043⭐
68🍴
tgc) - A tiny garbage collector for C written in ~500 LOC. [BSD]
- GStreamer - A library for constructing graphs of media-handling components. [LGPL]
1044⭐
232🍴
libass) - Portable subtitle renderer for the ASS/SSA subtitle format. [ISC]1123⭐
399🍴
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- LIVE555 Streaming Media - Multimedia streaming library using open standard protocols (RTP/RTCP, RTSP, SIP). [LGPL]
- 🌎 libVLC - libVLC (VLC SDK) media framework. [GPL]
710⭐
193🍴
MediaInfoLib) - Convenient unified display of the most relevant technical and tag data for video and audio files. [BSD]4142⭐
1526🍴
QtAv) - A multimedia playback framework based on Qt and FFmpeg to write a player easily. [LGPL] website13525⭐
2332🍴
SDL) ⚡ - Simple DirectMedia Layer. [zlib] 🌎 website11254⭐
1836🍴
SFML) ⚡ - Simple and Fast Multimedia Library. [zlib] website1315⭐
359🍴
TagLib) - A library for reading and editing the metadata of several popular audio formats. [LGPL/MPL] 🌎 website
1582⭐
110🍴
ada) - WHATWG-compliant and fast URL parser written in modern C++. [Apache-2.0/MIT]- ACE - An OO Network Programming Toolkit in C++. [?MIT?]
1422⭐
446🍴
Boost.Asio) ⚡ - A cross-platform C++ library for network and low-level I/O programming. [Boost] 🌎 website4618⭐
665🍴
Boost.Beast) ⚡ - HTTP and WebSocket built on Boost.Asio in C++11. [Boost] 🌎 website145⭐
22🍴
Breep) - Event based, high-level C++14 peer-to-peer library. [EUPL-1.1 (OSI approved)]8213⭐
1689🍴
C++ REST SDK) - C++ REST SDK (previously named Casablanca). [Apache2]1974⭐
379🍴
Restbed) - C++11 Asynchronous RESTful framework. [AGPL]1244⭐
103🍴
Restinio) - A header-only C++14 library that gives you an embedded HTTP/Websocket server. [BSD]2008⭐
635🍴
c-ares) - A C library for asynchronous DNS requests. [MIT]14858⭐
2484🍴
cpp-httplib) - A single file C++11 header-only HTTP/HTTPS server library. [MIT]- cpp-netlib - A collection of open-source libraries for high level network programming. [Boost]
140⭐
73🍴
cpp-netlib/uri) - URI parser/builder library for C++, compatible with RFC 3986 and RFC 3987. [Boost]1568⭐
304🍴
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]7057⭐
1006🍴
cpr) - A modern C++ HTTP requests library with a simple but powerful interface. Modeled after the Python Requests module. [MIT] 🌎 website661⭐
180🍴
curlcpp) - An object oriented C++ wrapper for CURL(libcurl). [MIT]1760⭐
372🍴
curlpp) -C++ wrapper around libcURL. [MIT]3887⭐
1354🍴
DPDK) - Data Plane Development Kit, libraries and drivers for fast packet processing. [BSD-3-Clause & GPL-2.0] 🌎 website1452⭐
224🍴
Dyad.c) - Asynchronous networking for C. [MIT]2999⭐
709🍴
ENet) - Reliable UDP networking library. [MIT] website3715⭐
952🍴
evpp) - C++ high performance networking with TCP/UDP/HTTP protocols. [BSD]223⭐
71🍴
FTP client for C++) - C++ client for making FTP requests. [MIT]11186⭐
863🍴
H2O) - An optimized HTTP server with support for HTTP/1.x and HTTP/2. It can also be used as a library. [MIT]6420⭐
1532🍴
HTTP Parser) ⚡ - A http request/response parser for C. [MIT]16297⭐
2571🍴
KCP) - A fast and reliable ARQ protocol that helps applications to reduce network latency. [MIT]- libcurl - Multiprotocol file transfer library. [MIT/X derivate license]
931⭐
193🍴
libhttpserver) - C++ library for creating an embedded Rest HTTP server (and more). [LGPL2.1]- 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+]
2947⭐
895🍴
libpcap) - A portable C/C++ library for network traffic capture. [BSD] 🌎 website1816⭐
289🍴
libquic) - A QUIC protocol library extracted from Chromium's QUIC Implementation. [BSD]755⭐
3217🍴
librdkafka) - Apache Kafka client library for C and C++. [BSD-2-Clause]5076⭐
1557🍴
libwebsockets) - A lightweight pure C WebSocket implementation that provides both client and server libraries. [LGPL2.1 + static link exception] 🌎 website- 🌎 Lithium - Build high performance C++ HTTP servers without being a C++ expert. [MIT]
- lwIP - A lightweight TCP/IP stack. [Modified BSD]
443⭐
113🍴
mailio) - mailio is a cross platform C++ library for MIME format and SMTP, POP3 and IMAP protocols. [BSD]12102⭐
2830🍴
Mongoose) - Extremely lightweight webserver. [GPL2]846⭐
289🍴
MQTT-C) - A portable MQTT C client for embedded systems and PCs alike. [MIT] 🌎 website2077⭐
456🍴
mTCP) - Highly scalable user-level TCP stack for multicore systems. [Modified BSD]15557⭐
5285🍴
Muduo) - A C++ non-blocking network library for multi-threaded server in Linux. [BSD]4845⭐
914🍴
nghttp2) - HTTP/2 C Library. [MIT] 🌎 website970⭐
110🍴
nghttp3) - HTTP/3 library written in C. [MIT] 🌎 website2063⭐
256🍴
Onion) - HTTP server library in C designed to be lightweight and easy to use. [Apache2/GPL2]2860⭐
360🍴
PF_RING™) - High-speed packet processing framework. [LGPL-2.1] 🌎 website1961⭐
263🍴
PicoHTTPParser) - A tiny, primitive, fast HTTP request/response parser. [MIT]- POCO ⚡ - C++ class libraries and frameworks for building network- and internet-based applications that run on desktop, server, mobile and embedded systems. [Boost] website
8278⭐
1530🍴
Proxygen) - Facebook's collection of C++ HTTP libraries including an easy to use HTTP server. [BSD]10835⭐
665🍴
RedPanda) - Streaming data platform for developers. Kafka API compatible. 10x faster. [BSL]3390⭐
1051🍴
RakNet) - A cross platform, open source, C++ networking engine for game programmers. [BSD]1601⭐
382🍴
restclient-cpp) - Simple REST client for C++. It wraps libcurl for HTTP requests. [MIT]763⭐
127🍴
Seasocks) - Simple, small, C++ embeddable webserver with WebSockets support. [BSD]638⭐
97🍴
tlse) - Single C file TLS 1.2/1.3 implementation, using tomcrypt as crypto library [BSD-2-Clause]1304⭐
133🍴
TQUIC) - A high-performance, lightweight, and cross-platform QUIC library, exposed to C and C++. [Apache2]595⭐
181🍴
Tufão) - An asynchronous web framework for C++ built on top of Qt. [LGPL2]370⭐
87🍴
uriparser) - Strictly RFC 3986 compliant URI parsing and handling library. [BSD-3-Clause]18220⭐
1816🍴
uWebSockets) - µWS is one of the most lightweight, efficient & scalable WebSocket & HTTP server implementations available. [Zlib]1248⭐
51🍴
UCall) - A high-performance SIMD-accelerated RPC library on io_uring. [Apache2]691⭐
68🍴
WAFer) - A C language-based ultra-light software platform for scalable server-side and networking applications. Think node.js for C programmers. [GPL2]3088⭐
547🍴
Wangle) - A client/server application framework to build asynchronous, event-driven modern C++ services. [Apache-2.0]2914⭐
393🍴
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]7465⭐
2056🍴
WebSocket++) - C++/Boost Asio based websocket client/server library. [BSD]2982⭐
720🍴
PcapPlusPlus) - a multiplatform C++ network sniffing and packet parsing and crafting framework. [Unlicense]10464⭐
2434🍴
ZeroMQ) - High-speed, modular asynchronous communication library. [LGPL3/MPL2] website
Libraries for parsing and manipulating xlsx, pptx, docx, etc.
464⭐
121🍴
DuckX) - C++ library for creating and modifying Microsoft Word (.docx) files. [MIT]- 🌎 FreeXL - an open source library to extract valid data from within Spreadsheets. [MPL/GPL-2/LGPL-2]
493⭐
140🍴
libxls) - Read binary Excel files from C/C++ [BSD-2-Clause]1662⭐
364🍴
libxlsxwriter) - A C library for creating Excel XLSX files. [BSD-2-Clause] 🌎 website1601⭐
371🍴
OpenXLSX) - A C++ library for reading, writing, creating and modifying Microsoft Excel® (.xlsx) files. [BSD-3-Clause]- 🌎 SimpleXlsxWriter - XLSX files writer for Microsoft Excel 2007 and above. [zlib]
491⭐
126🍴
XLSX I/O) - C library for reading and writing .xlsx files. [MIT]
Libraries for parsing and manipulating PDF documents.
1885⭐
528🍴
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]
973⭐
226🍴
PDF-Writer) - High performance library for creating, modiyfing and parsing PDF files in C++ [Apache-2.0] 🌎 website275⭐
58🍴
pdfio) - A simple C library for reading and writing PDF files. [Apache-2] 🌎 website- 🌎 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]
4221⭐
322🍴
QPDF) - A tool and C++ library for content-preserving transformations of PDF files. [Apache-2.0] 🌎 website- 🌎 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]
Dynamics simulation engines
9112⭐
1674🍴
Box2D) - A 2D physics engine for games. [BSD-like]13676⭐
2979🍴
Bullet) - A 3D physics engine for games. [zlib] website2328⭐
361🍴
Chipmunk) - A fast and lightweight 2D game physics library. [MIT] 🌎 website8376⭐
558🍴
Jolt Physics) - A multi core friendly rigid body physics and collision detection library. [MIT]1162⭐
268🍴
Kratos) - framework for building parallel, multi-disciplinary simulation software, aiming at modularity, extensibility, and high performance. [BSD] website4858⭐
650🍴
LiquidFun) - A 2D physics engine for games. [BSD-like]999⭐
193🍴
Newton Dynamics) - An integrated solution for real time simulation of physics environments. [zlib]- ODE - Open Dynamics Engine - An open source, high performance library for simulating rigid body dynamics. [BSD&LGPL]
325⭐
124🍴
ofxBox2d) - openFrameworks wrapper for Box2D. [BSD-like]2386⭐
283🍴
PhysX) - An open-source realtime physics engine middleware SDK developed by Nvidia as a part of Nvidia GameWorks software suite. [BSD-3-Clause]140⭐
27🍴
PlayRho) - An interactive physics engine & library. [Zlib]2510⭐
518🍴
Project Chrono) - An open source multi-physics simulation engine. [BSD-3-Clause] 🌎 website621⭐
132🍴
Quantum++) - A modern C++11 quantum computing library. [MIT]257⭐
10🍴
QuarkPhysics) - A 2D Soft Body and Rigid Body Physics Engine. [MIT]2445⭐
484🍴
Simbody) - High-performance C++ multibody dynamics/physics library for simulating articulated biomechanical and mechanical systems like vehicles, robots, and the human skeleton. [Apache2]1058⭐
333🍴
SOFA) - SOFA is an open-source framework targeting at real-time simulation, with an emphasis on medical simulation. [LGPL] 🌎 website
239⭐
39🍴
config-loader) - A C++17 static reflection framework, from parse configuration file to native data structure. [MIT]1785⭐
181🍴
Better Enums) - Reflective enums (to string, iteration). Single header. [BSD] website279⭐
29🍴
clReflect) - C++ Reflection using clang. [MIT]219⭐
60🍴
CPFG) - A C++03 library for reflection, callback and script binding. [Apache2]697⭐
99🍴
CPP-Reflection) - C++ Reflection using clang. [MIT]102⭐
7🍴
Easy Reflection) - Easy and fast reflection + serialization solution like in Rust, Java or Go. [Apache]5646⭐
502🍴
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]216⭐
13🍴
magic_get) - std::tuple like methods for user defined types without any macro or boilerplate code. [Boost]642⭐
52🍴
meta) - Header-only, non-intrusive and macro-free runtime reflection system in C++. [MIT]2229⭐
119🍴
Nameof) - Header-only C++17 library provides nameof macros and functions to obtain the simple name of variable, type, function, macro, and enum. [MIT]664⭐
100🍴
Ponder) - A C++11 library for reflection. [MIT]450⭐
22🍴
REFLECT) - C++20 Static Reflection library. [MIT]1539⭐
138🍴
reflect-cpp) - Serialization through reflection, including automatic field name retrieval from structs. [MIT]3371⭐
463🍴
RTTR) - A C++11 library for reflection. [MIT] website39⭐
2🍴
simple_enum) - An Fast, Intuitive and Type-Safe C++ Enumeration Support Library. [BSL-1.0] 🌎 website102⭐
11🍴
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]584⭐
52🍴
visit_struct) - A miniature library for struct-field reflection in C++. [Boost]243⭐
22🍴
Refureku) - A C++17 runtime reflection and code generation library. [MIT]
390⭐
50🍴
CppVerbalExpressions) - C++ regular expressions made easy. [MIT]3650⭐
199🍴
CTRE) - A Compile time PCRE (almost) compatible regular expression matcher. [MIT]5082⭐
751🍴
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]2468⭐
335🍴
Oniguruma) - A modern and flexible regular expressions library that supports a variety of character encodings. [BSD]- PCRE - A regular expression C library inspired by the regular expression capabilities in Perl. [BSD]
335⭐
30🍴
PIRE) - Perl Incompatible Regular Expressions library by Yandex. Can be really fast (more than 400 MB/s). [LPGL v3.0]9409⭐
1174🍴
RE2) - A software library for regular expressions via a finite-state machine using automata theory. [BSD-3-Clause]543⭐
116🍴
SLRE) - Super Light Regexp engine for C/C++. [GPLv2/Proprietary]625⭐
108🍴
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]
589⭐
61🍴
Vectorscan) - A portable fork of the high-performance regular expression matching library. [BSD-3-Clause] 🌎 website
- 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]
10591⭐
4669🍴
PCL) - Point Cloud Library is a standalone, large scale, open project for 2D/3D image and point cloud processing. [BSD] website- Robotics Library (RL) - A self-contained C++ library for robot kinematics, motion planning and control. [BSD]
- 🌎 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]
967⭐
211🍴
Ruckig) - Real-time motion generation for robots and machines. [MIT] 🌎 website571⭐
207🍴
YARP (Yet Another Robot Platform)) - Library and toolkit for communication and device interfaces. [BSD-3-Clause] website31⭐
10🍴
SPICE Toolkit) - Library and toolkit for computing geometric information used in planning and analyzing science observations obtained from robotic spacecraft. [MIT] 🌎 website
805⭐
129🍴
AMGCL) - a header-only C++ library for solving large sparse linear systems with algebraic multigrid. [MIT]383⭐
27🍴
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]
824⭐
196🍴
preCICE) - Coupling library for partitioned multi-physics simulations (FSI, CHT, and more). [LGPL] 🌎 website1978⭐
196🍴
TileDB) - Fast Dense and Sparse Multidimensional Array DBMS. [MIT] 🌎 website1310⭐
594🍴
Trilinos) - High performance PDE solvers. [BSD]9063⭐
2370🍴
Torch) - A scientific computing framework with wide support for machine learning algorithms that puts GPUs first. [BSD-3-Clause] website
- 🌎 AngelScript - AngelScript is a game-oriented interpreted/compiled scripting language. [zlib]
505⭐
217🍴
Boost.Python) - A C++ library which enables seamless interoperability between C++ and the Python programming language. [Boost] 🌎 website1218⭐
72🍴
cppimport) - Import C++ files directly from Python! [MIT]3267⭐
530🍴
CppSharp) - Tools and libraries to glue C/C++ APIs to high-level languages. [MIT]?⭐
?🍴
ChaiScript) - An easy to use embedded scripting language for C++. [BSD] website2144⭐
94🍴
ctypes.sh) - A foreign function interface for bash. [MIT]10240⭐
1551🍴
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- 🌎 djinni - A tool for generating cross-language type declarations and interface bindings. [Apache2]
6112⭐
532🍴
Duktape) - An embeddable JavaScript engine with compact footprint. [MIT] website4635⭐
591🍴
JavaCpp) - The missing bridge between Java and native C++. [Apache2]7284⭐
684🍴
JerryScript) - Ultra-lightweight JavaScript engine for the Internet of Things. [Apache-2.0] 🌎 website3449⭐
752🍴
libffi) - A portable foreign-function interface library. [MIT] 🌎 website- Lua - A minimal and fast scripting engine for configuration files and basic application scripting. [MIT]
1703⭐
355🍴
LuaBridge) - A lightweight, dependency-free library for binding Lua to C++. [MIT]303⭐
43🍴
LuaBridge3) - A lightweight, dependency-free library for binding Lua, LuaJIT, Luau and Ravi to C++. [MIT]157⭐
23🍴
luacxx) - C++11 API for creating Lua bindings. [MIT]4747⭐
454🍴
Luau) - A fast, small, safe, gradually typed embeddable scripting language derived from Lua. [MIT] 🌎 website- 🌎 MiniScript - scripting language modern, elegant, easy to learn, and easy to embed in your own C# or C++ projects. [MIT]
2972⭐
250🍴
nanobind) - tiny and efficient C++/Python bindings. [BSD-3-Clause]1990⭐
118🍴
nbind) - Magical headers that make your C++ library accessible from JavaScript. [MIT]1443⭐
341🍴
PHP-CPP) - A library to build PHP extensions with C++. [Apache2] website1909⭐
147🍴
pocketpy) - C++17 header-only Python interpreter for game scripting. [MIT] 🌎 website17201⭐
2212🍴
pybind11) - Seamless operability between C++11 and Python. [BSD]- 🌎 QuickJS - a small and embeddable JavaScript engine. [MIT]
- 🌎 SIP - C or C++ Bindings Generator for Python v2 and v3. [GPL]
4671⭐
564🍴
sol2) - A C++ <-> Lua API wrapper with advanced features and top notch performance. [MIT]6104⭐
1277🍴
SWIG) - A wrapper/interface Generator that let you link your c++ code to JavaScript, Perl, PHP, Python, Tcl and Ruby. [GPL/Output not licensed] website2777⭐
187🍴
txiki.js) - A tiny JavaScript runtime. [MIT]1441⭐
179🍴
V7) - An embedded JavaScript engine. [GPL2]- 🌎 V8 - A fast JavaScript engine by Google that can be embedded into any C++ application. [BSD]
941⭐
122🍴
v8pp) - Header-only library to expose C++ classes and functions into V8 to use them in JavaScript code. [BOOST] 🌎 website9203⭐
1205🍴
ChakraCore) -A JavaScript engine by Microsoft that can be embedded into nodejs. [MIT]
20⭐
6🍴
BitSerializer) - Multi-format serialization library (JSON, XML, YAML, CSV, MsgPack) [MIT]1171⭐
95🍴
Bitsery) - Header only C++ binary serialization library. [MIT]2633⭐
332🍴
Bond) - An open source, cross-platform framework for working with schematized data. [MIT]128⭐
147🍴
Boost.Serialization) - Boost Serialization Library. [Boost] 🌎 website12395⭐
977🍴
Cap'n Proto) - Fast data interchange format and capability-based RPC system. [MIT] 🌎 website4503⭐
810🍴
cereal) - A C++11 library for serialization. [BSD]2088⭐
143🍴
cista) - A C++17 library for zero-copy high-performance (de-)serialization. [MIT]668⭐
116🍴
cppcodec) - Header-only C++11 library to encode/decode base64, base32 and hex with consistent, flexible API. [MIT]926⭐
94🍴
FastBinaryEncoding) - Fast Binary Encoding is ultra fast and universal serialization solution for C++, C#, Go, Java, JavaScript, Kotlin, Python, Ruby, Swift. [MIT]24689⭐
3383🍴
FlatBuffers) - A Memory efficient serialization library. [Apache2]- Kaitai Struct - A declarative language to describe various binary data structures and a compiler to generate C++ parser code. [GPLv3+][MIT][Apache2]
1261⭐
241🍴
iguana) - a modern, universal and easy-to-use serialization engine developed in C++20 and C++17. [Apache2]3193⭐
909🍴
MessagePack) - Efficient binary serialization format "like JSON" for C and C++. [Apache2] website?⭐
?🍴
mrpt-serialization) - Versioned serialization to binary or text formats. [BSD] 🌎 website4851⭐
938🍴
nanopb) - Small code-size Protocol Buffers implementation in ANSI C. [Zlib]68918⭐
15854🍴
protobuf) - Protocol Buffers - Google's data interchange format. [BSD]2858⭐
749🍴
protobuf-c) - Protocol Buffers implementation in C. [BSD]186⭐
17🍴
Protocol Puffers) - A little, highly templated, and protobuf-compatible serialization/deserialization header-only library written in C++20. [Apache-2.0]3298⭐
548🍴
SimpleBinaryEncoding) - encoding and decoding application messages in binary format for low-latency applications. [Apache2]1514⭐
265🍴
upb) - A small protobuf implementation in C. [BSD]281⭐
60🍴
Wirehair) - O(N) Fountain Code for Large Data. [BSD-3-Clause]764⭐
101🍴
YAS) - Very fast Yet Another Serialization library supports the binary/text/json formats. [Boost]870⭐
68🍴
zpp_bits) - Actually, the fastest modern Serialization library. Just check 🌎 this video.
?⭐
?🍴
Asio) - Asio includes classes for creating and manipulating serial ports in a portable manner. [Boost] website1422⭐
446🍴
Boost.Asio) - Boost.Asio includes classes for creating and manipulating serial ports in a portable manner. [Boost] 🌎 website847⭐
359🍴
CSerialPort) - lightweight cross-platform serial port library. [LGPL3]472⭐
147🍴
Libserial) - Serial Port Programming in C++. [BSD-3-Clause]2310⭐
1121🍴
Serial Communication Library) - Cross-platform, Serial Port library written in C++. [MIT] website
668⭐
61🍴
cpp-sort) - Sorting algorithms & related tools for C++14. [MIT]
2438⭐
99🍴
pdqsort) - Pattern-defeating quicksort. [zlib]309⭐
45🍴
Timsort) - A templated stable sorting function which outperforms quicksort-based algorithms including std::sort, for reversed or semi-sorted data. [MIT]20⭐
2🍴
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
- libvpx - VP8/VP9 Codec SDK. [BSD]
- 🌎 FFmpeg - A complete, cross-platform solution to record, convert and stream audio and video. [LGPL2/GPL2]
514⭐
92🍴
avcpp) - Modern C++ wrapper around FFmpeg. [MIT]1817⭐
474🍴
libde265) - Open h.265 video codec implementation. [LGPL] website- 🌎 x265 - Open h.265 video codec implementation. [GPL2] 🌎 website
5814⭐
1844🍴
OpenH264) - Open Source H.264 Codec. [BSD] website- Theora - A free and open video compression format. [BSD]
?⭐
?🍴
Vireo) - A lightweight and versatile video processing library by Twitter. [MIT]
985⭐
82🍴
CarpVM) - "interesting" VM in C. Let's see how this goes. [GPLv3]20770⭐
8391🍴
MicroPython) - Aims to put an implementation of Python 3.x on a microcontroller. [MIT]3270⭐
304🍴
TinyVM) - A small, fast, lightweight virtual machine written in pure ANSI C. [MIT]
3183⭐
1002🍴
Civetweb) - Provides easy to use, powerful, C/C++ embeddable web server with optional CGI, SSL and Lua support. [MIT]8213⭐
1689🍴
C++ REST SDK) - Microsoft project for cloud-based client-server communication in native code using a modern asynchronous C++ API design. [MIT]- CppCMS - A Free High Performance Web Development Framework (not a CMS). [LGPLv3]
4132⭐
473🍴
Crow) - Crow is a C++ microframework for running web services. It uses routing similar to Python's Flask. [BSD] 🌎 website955⭐
121🍴
Cutelyst) - A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. [BSD-3-Clause] 🌎 website12860⭐
1226🍴
Drogon) - A C++17/20 based, high-performance HTTP application framework. [MIT]976⭐
144🍴
C++ wfrest) - C++ Web Framework REST API. [Apache2]2317⭐
144🍴
facil.io) - Evented, high performance C web framework supporting HTTP, WebSockets, SSE and more. [MIT] website- 🌎 Kore - ultra fast and flexible web server / framework for web applications developed in C. [ISC]
- libOnion - lightweight library to help you create webservers in C programming language. [LGPLv3]
5984⭐
550🍴
lwan) - Experimental, scalable, high performance HTTP server. [GPL2]8349⭐
1342🍴
oat++) - Light, zero-dependency framework to create high-performance web-services. [Apache-2.0] 🌎 website- 🌎 Pistache - Pistache is a C++ REST framework written in pure C++11 with no external dependency. [Apache2]
?⭐
?🍴
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]1347⭐
226🍴
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] website2689⭐
340🍴
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- Wt - A C++ library for developing web applications. [GPL/Proprietary]
XML is crap. Really. There are no excuses. XML is nasty to parse for humans, and it's a disaster to parse even for computers. There's just no reason for that horrible crap to exist. - Linus Torvalds
58⭐
94🍴
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]
486⭐
174🍴
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]
5484⭐
1898🍴
TinyXML2) - A simple, small, efficient, C++ XML parser that can be easily integrating into other programs. [zlib]92⭐
35🍴
TinyXML++) - A completely new interface to TinyXML that uses MANY of the C++ strengths. Templates, exceptions, and much better error handling. [MIT]33⭐
32🍴
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]
111⭐
15🍴
fkYAML) - A C++ header-only YAML library. [MIT]298⭐
61🍴
LibCYAML) - C library for reading and writing YAML. [ISC]287⭐
80🍴
libfyaml) - A fancy 1.2 YAML and JSON parser/writer. [MIT]1075⭐
347🍴
LibYAML) - A C library for parsing and emitting YAML. [MIT] 🌎 website232⭐
43🍴
mini-yaml) - Single header YAML 1.0 C++11 serializer/deserializer. [MIT]668⭐
116🍴
rapidyaml) - Rapid YAML is a C++ library to parse and emit YAML. [MIT]5611⭐
2006🍴
yaml-cpp) - A YAML parser and emitter in C++. [MIT]
Useful libraries or tools that don't fit in the categories above or maybe just not categorised yet
77⭐
10🍴
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]
5060⭐
437🍴
Argon2) - The password hash Argon2, winner of PHC. [CC0/Apache2]4264⭐
538🍴
AsmJit) - Low-latency machine code generation. [Zlib] 🌎 website- 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]
82⭐
60🍴
Boost.Signals2) - An implementation of a managed signals and slots system. [Boost] 🌎 website- 🌎 casacore - A set of c++ core libraries derived from aips++. [LGPL]
620⭐
174🍴
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.
570⭐
31🍴
Concord) - A Discord API wrapper library written in C. [MIT] 🌎 website1417⭐
119🍴
CPPItertools) - Range-based for loop add-ons inspired by the Python builtins and itertools library. [BSD-2-Clause]417⭐
121🍴
CPP-JWT) - JSON Web Token library for C++. [MIT]361⭐
16🍴
cpp-lazy) - a fast and easy lazy evaluation library for C++11/14/17/20. [MIT]383⭐
99🍴
CRCpp) - Easy to use and fast C++ CRC library. [BSD-3-Clause]565⭐
71🍴
cxx-prettyprint) - A pretty printing library for C++ containers. [Boost]3293⭐
711🍴
date) - A date and time library based on the C++11/14/17 header. [MIT] 🌎 website1234⭐
176🍴
D++ (DPP)) - A lightweight, high performance and scalable C++ library for creating Discord Bots. [Apache2] 🌎 website685⭐
46🍴
DynaMix) - A library which allows you to compose and modify objects at run time. [MIT]170⭐
8🍴
emio) - A safe and fast high-level and low-level character input/output library. [MIT]378⭐
179🍴
faker-cxx) - C++20 Faker library for generating fake (but realistic) data for testing and development. [MIT]1858⭐
159🍴
fast_float) - Fast, Exact C++ from_chars, 4x to 10x faster than strtod, part of GCC 12, Chromium, Redis, Webkit/Safari. [Apache2/BSL-1.0/MIT]- FastFormat - Fast, Safe C++ Formatting inspired by log4j and Pantheios. [Simplified BSD]
789⭐
68🍴
fast_io) - Significantly faster input/output for C++20. [MIT]379⭐
18🍴
fccf) - A command-line tool that recursively searches a directory to find C/C++ source code matching a search string. [MIT]22279⭐
2689🍴
{fmt}) ⚡ - Small, safe and fast formatting library for C++. [Simplified BSD] 🌎 website192⭐
19🍴
gcc-poison) - A simple header file for developers to ban unsafe C/C++ functions from applications.362⭐
73🍴
happly) - A C++ header-only parser for the PLY file format. Parse .ply happily! [MIT]869⭐
55🍴
hedley) - A C/C++ header file designed to smooth over some platform-specific annoyances. 🌎 website280⭐
7🍴
Hexi) - Header-only, lightweight C++ library for binary streaming & serialization. [Apache-2.0/MIT]1585⭐
187🍴
HighwayHash) - Fast strong hash functions: SipHash/HighwayHash. [Apache-2.0]1844⭐
227🍴
inja) - A Template Engine for Modern C++. [MIT]558⭐
102🍴
Jinja2С++) - almost full-conformance template engine implementation. 🌎 website1037⭐
275🍴
jwt-cpp) - A header only library for creating and validating JSON web tokens in C++. [MIT]529⭐
40🍴
Kangaru) - A dependency injection container for C++11 and C++14. [MIT]4471⭐
576🍴
Klib) - Small and lightweight implementations of common algorithms and data structures. [MIT]251⭐
9🍴
KOMIHASH) - Very fast, high-quality hash function, discrete-incremental and streamed hashing-capable. [MIT]492⭐
117🍴
libcpuid) - A small C library for x86 CPU detection and feature extraction. [BSD]146⭐
12🍴
libenvpp) - A modern C++ library for type-safe environment variable parsing. [Apache-2.0]30⭐
14🍴
libevil) - The Evil License Manager. [GPLv3]90⭐
27🍴
libnih) - A lightweight library of C functions and structures. [GPL2.1]190⭐
50🍴
libONVIF) - Yet another ONVIF library. [GPL-3.0]350⭐
40🍴
libpopcnt) - Fast C/C++ bit population count library. [BSD-2-Clause]414⭐
73🍴
libsigc++) - A typesafe callback system for standard C++. [LGPL] 🌎 website- 🌎 libusb - A universal USB library which allows for portable access to USB devices. [LGPL2]
1301⭐
77🍴
Mach7) - A Pattern-matching library for C++. [BSD]170⭐
20🍴
minja.hpp) - A minimalistic C++ Jinja templating engine for LLM chat templates. [MIT]1856⭐
167🍴
mio) - Cross-platform C++11 header-only library for memory mapped file IO. [MIT]699⭐
90🍴
MPark.Variant) - C++17std::variant
for C++11/14/17. [BSL-1.0]230⭐
17🍴
MPH) - C++20 [Minimal] Static Perfect Hash library. [MIT]2051⭐
244🍴
PEGTL) - The Parsing Expression Grammar Template Library. [MIT]831⭐
83🍴
Pipes) - Pipelines for expressive code on collections in C++. [MIT]923⭐
80🍴
pprint) - Pretty Printer for Modern C++. [MIT]1017⭐
164🍴
pspsdk) - An open-source SDK for PSP homebrew development. [BSD/GNU GPL3]65⭐
12🍴
QtVerbalExpressions) - This Qt lib is based off of the C++ VerbalExpressions library. [MIT]126⭐
8🍴
rain) - The fastest 128-bit and 256-bit non-crypto hash, passes all tests, and under 140 source lines of code. [Apache-2.0]321⭐
50🍴
RapidFuzz) - Rapid fuzzy string matching in C++ using the Levenshtein Distance. [MIT] 🌎 website630⭐
29🍴
rapidhash) - Very fast, high quality, platform-independent hashing algorithm. [BSD-2-Clause]642⭐
81🍴
Reaction) - A lightweight, header-only reactive programming framework leveraging modern C++20 features for building efficient dataflow applications. [MIT]- Remote Call Framework - Inter-process communication framework for C++. [GPL2/Proprietary]
594⭐
70🍴
reproc) - A cross-platform (C99/C++11) process library. [MIT]583⭐
66🍴
SafetyHook) - C++23 procedure hooking library. [BSL-1.0]1260⭐
56🍴
scnlib) - scanf for modern C++. [Apache-2.0] 🌎 website- Scintilla - A free source code editing component. [MIT]
5256⭐
493🍴
SDS) - Simple Dynamic Strings library for C. [BSD]193⭐
31🍴
semver.c) - A semver parser and render in ANSI C. [MIT]- sigslot - C++ Signal/Slot Library. [PublicDomain]
969⭐
84🍴
SLJIT) - Platform independent low-level JIT compiler. [BSD] 🌎 website832⭐
107🍴
palacaze/sigslot) - A simple, header only, C++14 signal-slots implementation [MIT]129⭐
22🍴
simdzone) - Fast and standards compliant DNS zone parser. [BSD-3-Clause]177⭐
43🍴
SimpleSignal) - High performance C++11 signals. [PublicDomain]414⭐
182🍴
Stage) - Mobile robot simulator. [GPL2]29782⭐
7881🍴
stb) ⚡ - A range of single-file libraries for C/C++. [PublicDomain]972⭐
52🍴
stdman) - A tool that parses archived HTML files from 🌎 cppreference and generates groff-formatted manual pages for Unix-based systems. [MIT]2658⭐
88🍴
StringZilla) - the Godzilla of string libraries, splitting, sorting, and shuffling large textual datasets faster than you can say "Tokyo Tower". [Apache-2.0]- 🌎 StrTk - A C++ library consisting of high performance string processing routines. [MIT]
14⭐
1🍴
tgbotxx) - Telegram Bot C++ Library. [MIT]?⭐
?🍴
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]
184⭐
18🍴
ub-canaries) - A collection of C/C++ programs that try to get compilers to exploit undefined behavior.406⭐
21🍴
value-category-cheatsheet) A PDF cheatsheet for lvalues, rvalues, and the like. [Jank copyleft]16⭐
9🍴
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]10178⭐
850🍴
xxHash) - Extremely fast non-cryptographic hash algorithm. [BSD-2-Clause] 🌎 website184⭐
40🍴
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]
?⭐
?🍴
ZXing) - An open-source, multi-format 1D/2D barcode image processing library implemented in Java, with ports to other languages. [Apache]
Software for creating a development environment.
List of C or C++ compilers
6302⭐
760🍴
8cc) - A Small C Compiler.2141⭐
185🍴
c) - Compile and execute C "scripts" in one go! [MIT]- Clang - A C compiler for LLVM. Supports C++11/14/1z C11. Developed by LLVM Team. [NCSA]
- 🌎 GCC - GNU Compiler Collection. Supports C++11/14/1z C11 and OpenMP. [GNU GPL3]
115⭐
32🍴
PCC) - A very old C compiler. Supports C99.- 🌎 AMD C++ Compiler - Developed by AMD.
- 🌎 Intel C++ Compiler - Developed by Intel.
- LLVM - Collection of modular and reusable compiler and toolchain technologies.
- 🌎 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]
List of online C or C++ compilers
- 🌎 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.
- 🌎 OneCompiler - An online compiler supporting over 70 programming languages and database systems.
- 🌎 Programiz - An online compiler for learners and developers.
- 🌎 repl.it - A powerful yet simple tools and platforms for educators, learners, and developers.
- 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.
- 🌎 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.
List of C or C++ debuggers
- 🌎 Comparison of debuggers - A list of Debuggers from Wikipedia.
- 🌎 GDB - GNU Debugger.
- LLDB - The LLDB Debugger.
- 🌎 Metashell - An interactive template metaprogramming shell which includes the MDB metadebugger.
- Valgrind - A tool for memory debugging, memory leak detection, and profiling.
- x64dbg - An open-source x64/x32 debugger for windows.
List of C or C++ nominal IDEs.
- 🌎 Anjuta DevStudio - The GNOME IDE. [GPL3]
- AppCode - an IDE for Objective-C, C, C++, and JavaScript development built on JetBrains’ IntelliJ IDEA platform.
- 🌎 Cevelop - Cross-platform C and C++ IDE based on Eclipse CDT with additional plug-ins.
- CLion - Cross-platform C and C++ IDE from JetBrains.
- Code::Blocks - A free C, C++ and Fortran IDE.
- CodeLite - Another cross-platform, free C and C++ IDE. [GPL2 with an exception for plugins]
868⭐
53🍴
color_coded) - A vim plugin for libclang-based highlighting. [MIT]- Dev-C++ - A portable C/C++/C++11 IDE.
- Eclipse CDT - A fully functional C and C++ IDE based on the Eclipse platform.
2780⭐
301🍴
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]
- IBM VisualAge - A family of computer integrated development environments from IBM.
913⭐
96🍴
Irony-mode) - A C/C++ minor mode for Emacs powered by libclang.- 🌎 juCi++ - Cross-platform, lightweight C++ IDE with libclang integration. [MIT]
- 🌎 KDevelop - A free, open source IDE.
- 🌎 Microsoft Visual Studio - An IDE from Microsoft.
176214⭐
34667🍴
Microsoft Visual Studio Code) ⚡ - An open-source IDE from Microsoft. [MIT] 🌎 website- 🌎 NetBeans - An IDE for developing primarily with Java, but also with other languages, in particular PHP, C/C++, and HTML5.
2855⭐
848🍴
Qt Creator) ⚡ - A cross-platform C++, JavaScript and QML IDE which is part of the SDK for Qt. [GPL3 with exceptions] 🌎 website1834⭐
257🍴
rtags) - A c/c++ client/server indexer with for integration with emacs based on clang.- 🌎 Xcode - Developed by Apple.
25896⭐
2785🍴
YouCompleteMe) - YouCompleteMe is a fast, as-you-type, fuzzy-search code completion engine for Vim.?⭐
?🍴
cquery) - A C++ code completion engine for vscode, emacs, vim, etc.- 🌎 C Playground - Online C Programming IDE - An online IDE to practice C Programming where you can write, edit, and run code online.
- 🌎 Bazel - A multi-language, fast and scalable build system from Google. [Apache]
5797⭐
336🍴
Bear) - A tool to generate compilation database for clang tooling. [GPLv3]8558⭐
1146🍴
Buck) - A fast build system that encourages the creation of small, reusable modules over a variety of platforms and languages including C++ developed and used at Facebook. Written in Java. [Apache]- 🌎 build2 - cross-platform build, packaging and dependency management toolchain for developing and packaging C/C++ projects. [MIT]
- 🌎 Ccache - A fast C/C++ compiler cache. [GPLv3]
5043⭐
255🍴
clib) - Package manager for the C programming language. [MIT]- 🌎 CMake - Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD]
459⭐
27🍴
Cget) - Cmake package retrieval. [Boost] website- 🌎 Conan - C/C++ Package Manager, open sourced. [MIT]
748⭐
80🍴
CPM) - A C++ Package Manager based on CMake and Git.- 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]
- MesonBuild - An open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible.
- 🌎 Ninja - A small build system with a focus on speed.
6571⭐
594🍴
Sccache) - A fast compiler cache for C/C++, with cross-platform support and cloud backed storage options.- Scons - A software construction tool configured with a Python script.
24⭐
10🍴
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]
- 🌎 SW - Cross-platform C++ (and other langs) Build System and Package Manager with a lot of packages available. [GPLv3]
459⭐
77🍴
tundra) - High-performance code build system designed to give the best possible incremental build times even for very large software projects.- 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.
25492⭐
7034🍴
Vcpkg) - C++ library manager for Windows, Linux, and MacOS. [MIT]- 🌎 waf - Python-based framework for configuring, compiling and installing applications. [BSD] 🌎 website
- 🌎 XMake - A C/C++ cross-platform build utility based on Lua. [Apache]
List of tools for improving quality and reducing defects by code analysis
- Cppcheck - A tool for static C/C++ code analysis. -
6301⭐
1512🍴
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.
1734⭐
294🍴
cpplint) - A C++ style checker following Google's C++ style guide.- PVS-Studio - A tool for bug detection in the source code of programs, written in C, C++ and C#.
759⭐
87🍴
cpp-dependencies) - Tool to check C++ #include dependencies (dependency graphs created in .dot format). [Apache]4473⭐
401🍴
include-what-you-use) - A tool for use with clang to analyze includes in C and C++ source files. 🌎 website15364⭐
2047🍴
Infer) - A static analyzer for Java, C and Objective-C. [BSD]- OCLint - A static source code analysis tool to improve quality and reduce defects for C, C++ and Objective-C. -
3837⭐
493🍴
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.
3028⭐
214🍴
IKOS) - Static analyzer for C/C++ based on the theory of Abstract Interpretation. [NOSA 1.3]- 🌎 List of tools for static code analysis - A list of tools for static code analysis from Wikipedia.
143⭐
14🍴
OptView2) - Inspect missed Clang optimizations.- 🌎 Trunk - Toolkit to check, test, merge, and monitor code.
- 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.
- Clang-Tidy - Clang-based C++ linter tool.
- 🌎 EditorConfig - EditorConfig helps maintain consistent coding styles across different editors and IDEs.
2958⭐
584🍴
Uncrustify) - Code beautifier.
Various resources, such as books, websites, and articles for improving your C++ development skills and knowledge.
Fantastic C++ related articles.
319⭐
40🍴
CppCon 2023 Presentation Materials) - CppCon 2023 Presentation Materials.547⭐
58🍴
CppCon 2022 Presentation Materials) - CppCon 2022 Presentation Materials.110⭐
20🍴
CppCon 2021 Presentation Materials) - CppCon 2021 Presentation Materials.1632⭐
211🍴
CppCon 2020 Presentation Materials) - CppCon 2020 Presentation Materials.1256⭐
164🍴
CppCon 2019 Presentation Materials) - CppCon 2019 Presentation Materials.1442⭐
179🍴
CppCon 2018 Presentation Materials) - CppCon 2018 Presentation Materials.1816⭐
245🍴
CppCon 2017 Presentation Materials) - CppCon 2017 Presentation Materials.1816⭐
247🍴
CppCon 2016 Presentation Materials) - CppCon 2016 Presentation Materials.1794⭐
321🍴
CppCon 2015 Presentation Materials) - CppCon 2015 Presentation Materials.2291⭐
395🍴
CppCon 2014 Presentation Materials) - CppCon 2014 Presentation Materials.87⭐
6🍴
C++Now 2023 Presentations) - Presentation materials presented at C++Now 2023.1⭐
0🍴
C++Now 2022 Presentations) - Presentation materials presented at C++Now 2022.4⭐
2🍴
C++Now 2021 Presentations) - Presentation materials presented at C++Now 2021.92⭐
16🍴
C++Now 2019 Presentations) - Presentation materials presented at C++Now 2019.125⭐
28🍴
C++Now 2018 Presentations) - Presentation materials presented at C++Now 2018.493⭐
69🍴
C++Now 2017 Presentations) - Presentation materials presented at C++Now 2017.83⭐
14🍴
C++Now 2016 Presentations) - Presentation materials presented at C++Now 2016.202⭐
20🍴
C++Now 2015 Presentations) - Presentation materials presented at C++Now 2015.431⭐
72🍴
C++Now 2014 Presentations) - Presentation materials presented at C++Now 2014.190⭐
14🍴
C++Now 2013 Presentations) - Presentation materials presented at C++Now 2013.172⭐
24🍴
C++Now 2012 Presentations) - Presentation materials presented at C++Now 2012.
Fantastic C or C++ related books.
- List of Free C or C++ Books
366744⭐
64005🍴
Free C Books) - vhf/free-programming-books/C.366744⭐
64005🍴
Free C++ Books) - vhf/free-programming-books/C++.8536⭐
902🍴
cppbestpractices) - Collaborative Collection of C++ Best Practices.
44139⭐
5505🍴
C++ Core Guidelines) - "Official" set of C++ guidelines, reviewed by the author of C++.- C++ Dos and Don'ts - The Chromium Projects > For Developers > Coding Style > C++ Dos and Don'ts.
38469⭐
13002🍴
google-styleguide) - Style guides for Google-originated open-source projects.- 🌎 Google C++ Style Guide
- GNU Coding Standard
- 🌎 Linux kernel coding style
- LLVM Coding Standards
- 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.
11⭐
1🍴
C++ Conferences) - Catalog of C++ conferences- 🌎 CppCon Talks ⚡ - The C++ conference.
87⭐
17🍴
Quick game development with C++11/C++14) - CppCon 2014 talk by Vittorio Romeo.10⭐
0🍴
Presentation on Hana for C++Now 2015)- 🌎 Meeting Cpp - Meeting C++ YouTube Channel
Fantastic C or C++ related videos.
- List of C or C++ YouTube 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.
Useful C or C++ related websites.
- 🌎 Standard C++ ⚡ - News, Status & Discussion about Standard C++.
- 🌎 Build Bench - Compare C++ Builds.
- 🌎 Quick Bench - Quick C++ Benchmarks.
- CppCon - The C++ Conference.
- 🌎 C++ reference - A complete online reference for the C and C++ languages and standard libraries.
- 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
- 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.
- 🌎 C++ Tutorial for Beginners - A comprenhensive tutorial on C++ curated by trained experts.
- 🌎 cppexpert.online - Learn the best C++ practices by improving code snippets with some problems or with bad practices.
- C++ for yourself - A comprehensive tutorial on modern C++ covering everything from fundamentals to software design.
Useful C or C++ related weblogs.
- 🌎 Coding For Speed - Coding For Speed DOT COM, Less Execution Time.
- Eric Niebler
- 🌎 Sticky Bits
- Paul Fultz II's Blog
- ridiculousfish - Will It Optimize?
- Embedded in Academia
- 🌎 Simplify C++
- 🌎 Fluent C++
- 🌎 Bartek's Coding Blog
- 🌎 Kenny Kerr
- 🌎 Sutter’s Mill
- 🌎 Vorbrodt's C++ Blog
- 🌎 foonathan::blog()
- 🌎 C++ Team Blog - Dev blog from the Microsoft Visual C++ team
Collection of useful codes, snippets, ...
5400⭐
1530🍴
algorithms) - Algorithms & Data Structures in C++.3508⭐
740🍴
c-algorithms) - C algorithms library.1473⭐
609🍴
30 Seconds of C++)
Other amazingly awesome lists
10564⭐
723🍴
lists) - List of (awesome) lists curated on GitHub.32829⭐
3583🍴
awesome-awesomeness) - A curated list of awesome awesomeness.395943⭐
31382🍴
awesome) ⚡ - A curated list of awesome lists.5068⭐
516🍴
C++ links) - A categorized list of C++ resources.- 🌎 Awesome C++ - LibHunt's mirror.
- 🌎 Awesome C 1
3687⭐
354🍴
Awesome C) 212542⭐
1200🍴
Awesome Modern C++) - A collection of resources on modern C++.2468⭐
259🍴
AwesomePerfCpp) - A curated list of awesome C/C++ performance optimization resources.366744⭐
64005🍴
free-programming-books) - List of Freely Available Programming Books.- Inqlude - The Qt library archive.
97642⭐
6065🍴
papers-we-love) - Papers from the computer science community to read and discuss.23523⭐
2869🍴
awesome-algorithms) - A curated list of awesome places to learn and/or practice algorithms.3921⭐
253🍴
awesome-hpp) - A curated list of awesome header-only C++ libraries.6177⭐
418🍴
awesome-talks) - A lot of screencasts, recordings of user group gatherings and conference talks.46797⭐
10681🍴
Projects) - A list of practical projects that anyone can solve in any programming language.76785⭐
9153🍴
Awesome interview questions) - A list of lists of interview questions for the most popular technologies, including C and C++.9506⭐
630🍴
nothings/single_file_libs) ⚡ - List of single-file C/C++ libraries.
- This list is currently empty, but you can add to it by opening a merge request.
- Please reach out if you are interested in sponsoring this repo. Your company's name and logo will be prominently displayed here.
Please take a quick gander at the contribution guidelines for details. Thanks to all contributors; you rock!
If you see a project or link here that is no longer maintained or is not a good fit, please submit a pull request to improve this document. Thank you!
65979⭐
8088🍴
fffaraz/awesome-cpp)