74 Resources
C/C++ cpp20 Libraries
uniptr_t - C++ Pointer Utility Class
uniptr_t - C++ Pointer Utility Class uniptr_t stands for univerasl pointer. It's a small C++ class wrapping any pointer type. It removes the need to c
C#-like properties for C++20. This was made to demonstrate a bug in ClangFormat.
cpp20-property C#-like properties for C++20. Example usage #include iostream #include Propery.hpp class ProperyTest { public: zsl::Property
A modern thread pool implementation based on C++20
thread-pool A simple, functional thread pool implementation using pure C++20. Features Built entirely with C++20 Enqueue tasks with or without trackin
jkds is a modern header-only C++20 library that complements the standard library.
jkds is a modern header-only C++20 library that complements the standard library. It provides generic atypical data structures, ergonomic functional programming abstractions, and then some.
jluna: A modern julia ⭤ C++ Wrapper
jluna: A modern julia ⭤ C++ Wrapper (v0.5) Julia is a beautiful language, it is well-designed and well-documented. Julias C-API is also well-designed,
Thrust is a C++ parallel programming library which resembles the C++ Standard Library.
Thrust: Code at the speed of light Thrust is a C++ parallel programming library which resembles the C++ Standard Library. Thrust's high-level interfac
The fastest feature-rich C++11/14/17/20 single-header testing framework
master branch dev branch doctest is a new C++ testing framework but is by far the fastest both in compile times (by orders of magnitude) and runtime c
Variant - C++17 `std::variant` for C++11/14/17
MPark.Variant C++17 std::variant for C++11/14/17 Introduction MPark.Variant is an implementation of C++17 std::variant for C++11/14/17. Based on my im
Thrust - The C++ parallel algorithms library.
Thrust: Code at the speed of light Thrust is a C++ parallel programming library which resembles the C++ Standard Library. Thrust's high-level interfac
Packio - An asynchronous msgpack-RPC and JSON-RPC library built on top of Boost.Asio.
Header-only | JSON-RPC | msgpack-RPC | asio | coroutines This library requires C++17 and is designed as an extension to boost.asio. It will let you bu
Flat map - Header only associative linear container.
flat_map flat_map is a header only associative container library that constructed on linear container. It compliants C++17/20 standard associative con
Text - A spicy text library for C++ that has the explicit goal of enabling the entire ecosystem to share in proper forward progress towards a bright Unicode future.
ztd.text Because if text works well in two of the most popular systems programming languages, the entire world over can start to benefit properly. Thi
Forkpool - A bleeding-edge, lock-free, wait-free, continuation-stealing scheduler for C++20
riften::Forkpool A bleeding-edge, lock-free, wait-free, continuation-stealing scheduler for C++20. This project uses C++20's coroutines to implement c
Tau - A Micro (1k lines of code) Unit Test Framework for C/C++
Tau τ A Micro Unit Testing Framework for C11/C++11 projects, with the promise of always being tiny - about 1k lines of code. This framework is a much
A Fast and Convenient C++ Logging Library for Low-latency or Real-time Environments
xtr What is it? XTR is a C++ logging library aimed at applications with low-latency or real-time requirements. The cost of log statements is minimised
Kraken is an open-source modern math library that comes with a fast-fixed matrix class and math-related functions.
Kraken 🐙 Table of Contents Introduction Requirement Contents Installation Introduction Kraken is a modern math library written in a way that gives ac
Simple, fully external, smart, fast, JSON-configurated, feature-rich Windows x86 DLL Memory Dumper with Code Generation. Written in Modern C++.
altdumper Simple, fully external, smart, fast, JSON-configurated, feature-rich Windows x86 DLL Memory Dumper with Code Generation. Written in Modern C
Brute force volumetric path tracer written in C++
volpt Brute force volumetric path tracer written in C++. WIP. Features Homogeneous medium Hero wavelength sampling for chromatic absorption/scattering
Fast binary logger for C++
Highlights Logs messages in a compact binary format Fast Hundreds of millions of logs per second Average latency of 2-7 ns for basic data types See be
Recursive Variant: A simple library for Recursive Variant Types
rva::variant — Recursive Sum Types for C++ Provided by the Recursive Variant Authority. We stand united in opposition to the TVA. May your variants ne
Hypr is a tiling window manager written in modern C++.
Hypr is a Linux tiling window manager for Xorg. It's written in XCB with modern C++ and aims to provide easily readable and expandable code. !WARNING:
Quick and dirty templating and docs generation.
Rader Quick and dirty templating and docs generation. Rader is a pre-processing (or post-processing) utility written in portable C++ 20 (only using st
Lyrics mod for Beat Saber (Oculus Quest)
BeatSinger BeatSinger is a mod that displays song lyrics while playing Beat Saber. Direct port of BeatSinger for Oculus Quest. Installation ⚠️ Be care
Async GRPC with C++20 coroutine support
agrpc Build an elegant GRPC async interface with C++20 coroutine and libunifex (target for C++23 executor). Get started mkdir build && cd build conan
Header only implementation of Progressive Photon Mapping: A Probabilistic Approach(PPMAPA) in C++.
ppmapa Header only implementation of Progressive Photon Mapping: A Probabilistic Approach(PPMAPA) in C++. In this reformulation of (stochastic) progre
Minimal GCC11 project to build C++20 mudules
Basic build g++ -c -std=c++20 -fmodules-ts my_math.cxx creates \gcm.cache\my_math.gcm and my_math.o g++ -std=c++20 -fmodules-ts client.cpp my_math.o
A work-in-progress C++20/23 header-only maths library for game development, embedded, kernel and general-purpose that works in constant context.
kMath /kmæθ/ A work-in-progress general-purpose C++20/23 header-only maths library that works in constant context Abstract The kMath Project aims to p
Convenient, high-performance RGB color and position control for console output
Oof (omnipotent output friend) It's common for C++ programs to write output to the console. But consoles are far more capable than what they are usual
minimal but extensible header only implementation of photon mapping in C++
photon_mapping minimal but extensible header only implementation of photon mapping in C++. Features Direct illumination with explicit light sampling I
Compile-Time Reflection in C++ for use with Scripting Languages
Introspective Introspective is a header file that brings reflection to any class that wants it, regardless of whether the reflected member is a consta
U++ is a C++ cross-platform rapid application development framework focused on programmer's productivity. It includes a set of libraries (GUI, SQL, Network etc.), and integrated development environment (TheIDE).
Ultimate++ Ultimate++ is a C++ cross-platform rapid application development framework focused on programmers productivity. It includes a set of librar
A universal type for non-type template parameters for C++20 or later.
uninttp A universal type for non-type template parameters for C++20 or later. Installation: uninttp (Universal Non-Type Template Parameters) is a head
Fast JSON serialization and parsing in C++
DAW JSON Link v2 Content Intro Default Mapping of Types API Documentation - Member mapping classes and methods Cookbook Get cooking and putting it all
Header-only compile time key-value map written in C++20.
C++ Static Map Header-only compile time key-value map written in C++20. Getting Started Simply add the files in your source and #include "@dir/Static_
Laughably simple Actor concurrency framework for C++20
Light Actor Framework Concurrency is a breeze. Also a nightmare, if you ever used synchronization techniques. Mostly a nightmare, though. This tiny li
Cooperative primitives for CUDA C++.
CUB provides state-of-the-art, reusable software components for every layer of the CUDA programming model
Compile-time String to Byte Array
STB Compile-time String to Byte Array. Why? You may ask, why'd you want to do this? Well, this is a common issue in the cheat development scene, where
An implementation of C++17 std::filesystem for C++11 /C++14/C++17/C++20 on Windows, macOS, Linux and FreeBSD.
Filesystem Motivation Why the namespace GHC? Platforms Tests Usage Downloads Using it as Single-File-Header Using it as Forwarding-/Implementation-Hea
UT: C++20 μ(micro)/Unit Testing Framework
"If you liked it then you "should have put a"_test on it", Beyonce rule UT / μt | Motivation | Quick Start | Overview | Tutorial | Examples | User Gui
A compile-time enabled Modern C++ library that provides compile-time dimensional analysis and unit/quantity manipulation.
mp-units - A Units Library for C++ The mp-units library is the subject of ISO standardization for C++23/26. More on this can be found in ISO C++ paper
Simple Useful Libraries: C++17/20 header-only dynamic bitset
dynamic_bitset Simple Useful Libraries: C++17/20 header-only dynamic bitset Requirements To use this dynamic bitset, you will need a C++17 (or later)
span lite - A C++20-like span for C++98, C++11 and later in a single-file header-only library
span lite: A single-file header-only version of a C++20-like span for C++98, C++11 and later Contents Example usage In a nutshell License Dependencies
A modern, C++20-native, single-file header-only dense 2D matrix library.
A modern, C++20-native, single-file header-only dense 2D matrix library. Contents Example usage creating matrices basic operations row, col, size, sha
is a c++20 compile and runtime Struct Reflections header only library.
is a c++20 compile and runtime Struct Reflections header only library. It allows you to iterate over aggregate type's member variables.
Source Code for 'Clean C++20' by Stephan Roth
Apress Source Code This repository accompanies Clean C++20 by Stephan Roth (Apress, 2021). Download the files as a zip using the green button, or clon
✨sigmatch - Modern C++ 20 Signature Match / Search Library
sigmatch Modern C++ 20 Signature Match / Search Library ✨ Features 🍃 Header-only, no dependencies, no exceptions. ☕ Compile-time literal signature st
🎮 Plants vs. Zombies multiplayer battle, developed via reverse engineering, inline hook and dynamic-link library injection. Two online players defend and attack as the plant side and zombie side respectively.
Plants vs. Zombies Online Battle This project has two original repositories: https://github.com/czs108/Plants-vs.-Zombies-Online-Battle https://github
Selective Compile-Time Reflection for C++
Introspective Some quotes from StackOverflow regarding reflection in C++: "Inspection by iterating over members of a type, enumerating its methods and
2021年最新整理,500个c++11/14/17/20/23的新特性代码案例,包含lambda匿名函数,右值引用,auto,coroutine库,synchronization库等
cpp_new_features 2021年最新整理,500个c++11/14/17/20/23的新特性代码案例,包含lambda匿名函数,右值引用,auto,coroutine库,synchronization库,持续更新中...... C++新特性 C++11新特性 C++14新特性 C++17
Modern C++ Programming Course (C++11/14/17/20)
Modern C++ Programming Course (C++11/14/17/20)
Concept of Dynamic Application
Concept of Dynamic Application This is a basic concept of dynamic software that supports plug-in feature. More information coming soon... Dynamic-Appl
This is the code repository for my book C++20 - Get the Details.
Cpp20 This is the code repository for my book C++20 - Get the Details. It has more than 200 running examples. The names of the directories reflect the
apecs: A Petite Entity Component System
apecs: A Petite Entity Component System A header-only, very small entity component system with no external dependencies.
Companion source code for "Programming with C++20 - Concepts, Coroutines, Ranges, and more"
Companion Source Code for "Programming with C++20 - Concepts, Coroutines, Ranges, and more" 1. Edition Code examples This repository contains runnable
🍌 C++ Telegram Bot API library
🍌 banana - thin wrapper over Telegram Bot API written in C++17. Key Features Simple API Single interface for both blocking, non-blocking and even cor
Light, fast, threadpool for C++20
riften::Thiefpool A blazing-fast, lightweight, work-stealing thread-pool for C++20. Built on the lock-free concurrent riften::Deque. Usage #include "r
Ubpa small flat containers based on C++20
USmallFlat Ubpa small flat containers based on C++20 Containers basic_flat_map basic_flat_multimap basic_flat_multiset basic_flat_set basic_small_vect
libcu++: The C++ Standard Library for Your Entire System
libcu++, the NVIDIA C++ Standard Library, is the C++ Standard Library for your entire system. It provides a heterogeneous implementation of the C++ Standard Library that can be used in and between CPU and GPU code.
A cheatsheet of modern C++ language and library features.
C++20/17/14/11 Overview Many of these descriptions and examples come from various resources (see Acknowledgements section), summarized in my own words
📚 Modern C++ Tutorial: C++11/14/17/20 On the Fly
The book claims to be "On the Fly". Its intent is to provide a comprehensive introduction to the relevant features regarding modern C++ (before 2020s). Readers can choose interesting content according to the following table of content to learn and quickly familiarize the new features you would like to learn. Readers should be aware that not all of these features are required. Instead, it should be learned when you really need it.
Header-only TOML config file parser and serializer for C++17 (and later!).
toml++ homepage ✨ This README is fine, but the toml++ homepage is better. ✨ Library features Header-only Supports the latest TOML release (v1.0.0), pl
The fastest feature-rich C++11/14/17/20 single-header testing framework
master branch Windows All dev branch Windows All doctest is a new C++ testing framework but is by far the fastest both in compile times (by orders of
C++20 coroutines-based cooperative multitasking library
🐔 Coop Coop is a C++20 coroutines-based library to support cooperative multitasking in the context of a multithreaded application. The syntax will be
C++20 single-header library for embedding INI configs
ini-config A single-header library that converts INI-formatted string literals to a key-value pair list at compile-time. Requires C++20; tested on gcc
A C++20 concepts library, providing container concepts etc.
More concepts #include more_concepts/more_concepts.hpp This library aims to provide general purpose concepts that are not available in the C++20 con
Simple C++ 20 Serialization Library that works out of the box with aggregate types!
BinaryLove3 Simple C++ 20 Serialization Library that works out of the box with aggregate types! Requirements BinaryLove3 is a c++20 only library.
📚 Modern C++ Tutorial: C++11/14/17/20 On the Fly
The book claims to be "On the Fly". Its intent is to provide a comprehensive introduction to the relevant features regarding modern C++ (before 2020s). Readers can choose interesting content according to the following table of content to learn and quickly familiarize the new features you would like to learn. Readers should be aware that not all of these features are required. Instead, it should be learned when you really need it.
A Compile time PCRE (almost) compatible regular expression matcher.
Compile time regular expressions v3 Fast compile-time regular expressions with support for matching/searching/capturing during compile-time or runtime
UT: C++20 μ(micro)/Unit Testing Framework
"If you liked it then you "should have put a"_test on it", Beyonce rule [Boost::ext].UT / μt | Motivation | Quick Start | Overview | Tutorial | Exampl
The fastest feature-rich C++11/14/17/20 single-header testing framework
master branch Windows All dev branch Windows All doctest is a new C++ testing framework but is by far the fastest both in compile times (by orders of
Header-only TOML config file parser and serializer for C++17 (and later!).
toml++ homepage ✨ This README is fine, but the toml++ homepage is better. ✨ Library features Header-only Supports the latest TOML release (v1.0.0), pl
Modern concurrency for C++. Tasks, executors, timers and C++20 coroutines to rule them all
concurrencpp, the C++ concurrency library concurrencpp is a tasking library for C++ allowing developers to write highly concurrent applications easily
stdgpu: Efficient STL-like Data Structures on the GPU
stdgpu: Efficient STL-like Data Structures on the GPU Features | Examples | Documentation | Building | Integration | Contributing | License | Contact
A simple to use, composable, command line parser for C++ 11 and beyond
Lyra A simple to use, composing, header only, command line arguments parser for C++ 11 and beyond. Obtain License Standards Stats Tests License Distri