C++ Cpp20

Open-source C++ projects categorized as Cpp20

Top 23 C++ Cpp20 Projects

  • modern-cpp-tutorial

    📚 Modern C++ Tutorial: C++11/14/17/20 On the Fly | https://changkun.de/modern-cpp/

  • entt

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

    Project mention: Focus: A simple and fast text editor written in Jai | news.ycombinator.com | 2023-09-02

    https://pastebin.com/VPypiitk This is a very small experiment i did to learn the metaprogramming features. its an ECS library using the same model as entt (https://github.com/skypjack/entt). In 200 lines or so it does the equivalent of a few thousand lines of template heavy Cpp while compiling instantly and generating good debug code.

    Some walkthrough:

    Line 8 declares a SparseSet type as a fairly typical template. its just a struct with arrays of type T inside. Next lines implement getters/setters for this data structure

    Line 46 Base_Registry things get interesting. This is a struct that holds a bunch of SparseSet of different types, and providers getters/setters for them by type. It uses code generation to do this. The initial #insert at the start of the class injects codegen that creates structure members from the type list the struct gets on its declaration. Note also how type-lists are a native structure in the lang, no need for variadics.

    Line 99 i decide to do variadic style tail templates anyway for fun. I implement a function that takes a typelist and returns the tail, and the struct is created through recursion as one would do in cpp. Getters and setters for the View struct are also implemented through recursion

    Line 143 has the for expansion. This is how you overload the for loop functionality to create custom iterators.

    The rest of the code is just some basic test code that runs the thing.

  • WorkOS

    The modern identity platform for B2B SaaS. The APIs are flexible and easy-to-use, supporting authentication, user identity, and complex enterprise features like SSO and SCIM provisioning.

  • doctest

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

    Project mention: Unit testing tool suggestions | /r/learnprogramming | 2023-05-07

    I have never used "tools" for unit-tests, only web sites that show the results of the tests or code coverage. For C++ I prefer https://github.com/doctest/doctest but most companies I worked for use Catch2.

  • R3nzSkin

    Skin changer for League of Legends (LOL)

    Project mention: name a better trio | /r/Draven | 2023-07-09
  • cppinsights

    C++ Insights - See your source code with the eyes of a compiler

    Project mention: C++ Insights – See your source code with the eyes of a compiler | news.ycombinator.com | 2024-04-05

    Sorry, I don't know about an Emacs plugin. All the plugins/extensions I'm aware of are listed in the Readme.md: https://github.com/andreasfertig/cppinsights/#c-insights--vi...

    I'm happy to add an entry for Emacs once somebody develops a plugin for that editor.

  • Osiris

    Free and open-source game hack for Counter-Strike 2, written in modern C++. For Windows and Linux.

    Project mention: Wtf happened to Osiris | /r/Csgohacks | 2023-12-11
  • compile-time-regular-expressions

    Compile Time Regular Expression in C++

    Project mention: Why are strings and IO so complicated? | /r/cpp | 2023-12-07

    CTRE (https://github.com/hanickadot/compile-time-regular-expressions) ranges::views (filter, transform, etc.) (C++20) str.find() + str.substr() freopen to stdin + cin >> extraction Parser libraries

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

  • concurrencpp

    Modern concurrency for C++. Tasks, executors, timers and C++20 coroutines to rule them all

    Project mention: Is anyone using coroutines seriously? | /r/cpp | 2023-12-05

    I am using concurrencpp for my project. What I like about it is that it's basically a thread pool factory with coroutines. It allows for better structuring / organizing of multithreaded work. So for me the main advantage of coroutines is that the code looks easier to follow

  • giada

    Your Hardcore Loop Machine.

  • async_simple

    Simple, light-weight and easy-to-use asynchronous components

  • tomlplusplus

    Header-only TOML config file parser and serializer for C++17.

  • filesystem

    An implementation of C++17 std::filesystem for C++11 /C++14/C++17/C++20 on Windows, macOS, Linux and FreeBSD.

  • ut

    C++20 μ(micro)/Unit Testing Framework

  • stdgpu

    stdgpu: Efficient STL-like Data Structures on the GPU

  • quill

    Asynchronous Low Latency C++ Logging Library (by odygrd)

    Project mention: Easy logging A logging system for c++20 | /r/cpp | 2023-12-09

    For high performance logging, I'd add quill to that list.

  • proxy

    Proxy: Next Generation Polymorphism in C++ (by microsoft)

  • Hypr

    Hypr is a tiling window manager written in modern C++.

  • mp-units

    The quantities and units library for C++

    Project mention: Is it just mean, or is C# easier to learn than JavaScript or even PHP? | /r/dotnet | 2023-12-06

    It's not the type system you're complaining about, though. It takes a bit of work but you can write types that include units information with no loss of performance.

  • storm-engine

    Game engine behind Sea Dogs, Pirates of the Caribbean and Age of Pirates games.

  • ultimatepp

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

    Project mention: Ask HN: What are some unpopular technologies you wish people knew more about? | news.ycombinator.com | 2023-12-02
  • axmol

    Axmol Engine – A Multi-platform Engine for Desktop, XBOX (UWP) and Mobile games. (A fork of Cocos2d-x-4.0)

    Project mention: About Axmol Engine | /r/axmol | 2023-12-11

    Learn more about Axmol Engine in our Wiki

  • Speek

    Privacy focused messenger that doesn't trust anyone with your identity, your contact list, or your communications

  • zpp_bits

    A lightweight C++20 serialization and RPC library

    Project mention: How to arrange a bunch of variables into one array of bytes in memory? | /r/cpp | 2023-05-10

    I would either look at https://github.com/eyalz800/zpp_bits or https://github.com/stephenberry/glaze. FYI, glaze both supports json and binary.

  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020). The latest post mention was on 2024-04-05.

C++ Cpp20 related posts


What are some of the best open-source Cpp20 projects in C++? This list will help you:

Project Stars
1 modern-cpp-tutorial 23,045
2 entt 9,428
3 doctest 5,544
4 R3nzSkin 4,477
5 cppinsights 3,429
6 Osiris 3,216
7 compile-time-regular-expressions 3,145
8 concurrencpp 2,028
9 giada 1,615
10 async_simple 1,436
11 tomlplusplus 1,392
12 filesystem 1,264
13 ut 1,195
14 stdgpu 1,072
15 quill 1,050
16 proxy 1,014
17 Hypr 974
18 mp-units 942
19 storm-engine 827
20 ultimatepp 725
21 axmol 657
22 Speek 654
23 zpp_bits 650
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives