SonarCloud, a cloud-based static analysis tool for your CI/CD workflows, offers a one-click automatic analysis of C and C++ projects hosted on GitHub. Zero configuration and free for open-source projects! Analyze free. Learn more →
Top 23 C++ modern-cpp Projects
📚 Modern C++ Tutorial: C++11/14/17/20 On the Fly | https://changkun.de/modern-cpp/Project mention: Learning platform for modern C++ with online exercises | /r/cpp_questions | 2023-02-11
I'm going through this Modern C++ Tutorial right now. I didn't need to relearn what inheritance is, just the new language features that are useful.
Gaming meets modern C++ - a fast and reliable entity component system (ECS) and much moreProject 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.
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.
Collect and Analyze Billions of Data Points in Real Time. Manage all types of time series data in a single, purpose-built database. Run at any scale in any environment in the cloud, on-premises, or at the edge.
EASTL stands for Electronic Arts Standard Template Library. It is an extensive and robust implementation that has an emphasis on high performance.Project mention: EA Standard Template Library Design | news.ycombinator.com | 2023-08-05
🏋️ Python / Modern C++ Solutions of All 2852 LeetCode Problems (Weekly Update)Project mention: A site that hosts implementations of various programming algorithms in different languages | /r/programming | 2023-02-07
Sol3 (sol2 v3.0) - a C++ <-> Lua API wrapper with advanced features and top notch performance - is here, and it's great! Documentation:Project mention: Any tips for how to make moddable games? | /r/gamedev | 2023-05-20
As someone said, make the game data-driven is a good first step but I will say, also have some sort of way to add additional game logic. For C++ games, lua is really easy to embed the interpreter in your C++ binary, read in the files from a directory (like /mods) with the C++ filesystem api new in C++17, and it's very easy to use SoL to write an API for lua specific to your game. Many games use lua in this way and it's probably the most common mod path setup.
Elements C++ GUI libraryProject mention: declarative GUI libraries | /r/cpp | 2023-06-23
Postmodern immutable and persistent data structures for C++ — value semantics at scale (by arximboldi)Project mention: Show HN: A hash array-mapped trie implementation in C | news.ycombinator.com | 2023-07-10
How does this compare to https://github.com/arximboldi/immer (other than the C/C++ difference)?
Also, it's my understanding that, in practice, persistent data structures require a garbage collector in order to handle deallocation when used in a general-purpose way. How does your implementation handle that?
Analyze your C and C++ projects with just one click.. SonarCloud, a cloud-based static analysis tool for your CI/CD workflows, offers a one-click automatic analysis of C and C++ projects hosted on GitHub. Zero configuration and free for open-source projects! Analyze free.
a modern C++ GUI library
❤️ SQLite ORM light header only library for modern C++Project mention: Introducing ZXORM - A C++20 ORM for SQLite with Compile Time Type Safety | /r/cpp | 2023-03-30
Obligatory "how does it compare to" https://github.com/fnc12/sqlite_orm ?
A lightweight 3D Morphable Face Model library in modern C++ (by patrikhuber)
Header-only, event based, tiny and easy to use libuv wrapper in modern C++ - now available as also shared/static library!
Pragmatic microkernel-based OS with fully asynchronous I/OProject mention: RISC-V support (super-duper ultra WIP) by ElectrodeYT · Pull Request #534 · managarm/managarm | /r/RISCV | 2023-07-09
stdgpu: Efficient STL-like Data Structures on the GPU
C++ Library for Audio Digital Signal Processing (by cycfi)
Modern C++ high level GBA engineProject mention: Can you make a gba game in c++? | /r/gamedev | 2023-03-09
A modern re-implementation of the classic DOS game Duke Nukem IIProject mention: Commander Keen: Can we get some love? | /r/retrogaming | 2023-07-04
Duke Nukem 2 has a source port called Rigel Engine: https://github.com/lethal-guitar/RigelEngine/tags
Modern and easy-to-use library for VulkanProject mention: Vulkan all the way: Transitioning to a modern low-level graphics API in academia | /r/programming | 2023-03-07
Sorry for late response! The one I like most is LibLava https://github.com/liblava/liblava I contributed a few features that it was missing for me, and a few other people have done the same, so it's somewhat battle tested. At least two people have used it in academic projects. I like that it gives you full access to the low level parts of Vulkan while still providing high level abstractions over a lot, especially the render loop. The biggest issue imo is lackluster documentation, but it's fairly well organized and readable source code. Build times are also pretty long due to its many dependencies.
Thin C++-flavored header-only wrappers for core CUDA APIs: Runtime, Driver, NVRTC, NVTX.Project mention: VUDA: A Vulkan Implementation of CUDA | news.ycombinator.com | 2023-07-01
1. This implements the clunky C-ish API; there's also the Modern-C++ API wrappers, with automatic error checking, RAII resource control etc.; see: https://github.com/eyalroz/cuda-api-wrappers (due disclosure: I'm the author)
2. Implementing the _runtime_ API is not the right choice; it's important to implement the _driver_ API, otherwise you can't isolate contexts, dynamically add newly-compiled JIT kernels via modules etc.
3. This is less than 3000 lines of code. Wrapping all of the core CUDA APIs (driver, runtime, NVTX, JIT compilation of CUDA-C++ and of PTX) took me > 14,000 LoC.
⚔️ A cross-platform, open source, and super fast MUD client with scripting in LuaProject mention: Path to becoming a desktop applications software developer? | /r/cpp | 2023-04-29
Mudlet is a crossplatform (Windows, macOS, Linux) C++ application that embeds Lua - could be a good way to get started with this kind of development in a safe environment and get some experience under your sleeve.
Fast CSV parser and writer for Modern C++
Parse command line arguments by defining a struct (by p-ranav)Project mention: The Val Object Model : Dave Abrahams, Sean Parent, Dimitri Racordon, David Sankel | /r/cpp | 2022-11-08
Math library using hlsl syntax with SSE/NEON support
High-Performance Hierarchical Finite State Machine FrameworkProject mention: State machine library for portable embedded application (C++11) | /r/embedded | 2023-06-08
Tired of breaking your main and manually rebasing outdated pull requests?. Managing outdated pull requests is time-consuming. Mergify's Merge Queue automates your pull request management & merging. It's fully integrated to GitHub & coordinated with any CI. Start focusing on code. Try Mergify for free.
C++ modern-cpp related posts
Crash Course: entity component system
1 project | news.ycombinator.com | 20 Jul 2023
Show HN: A hash array-mapped trie implementation in C
2 projects | news.ycombinator.com | 10 Jul 2023
RISC-V support (super-duper ultra WIP) by ElectrodeYT · Pull Request #534 · managarm/managarm
1 project | /r/RISCV | 9 Jul 2023
8 projects | dev.to | 24 Jun 2023
value semantics and spans/views
1 project | /r/cpp | 11 Jun 2023
Where can I find the juiciest, most complex and modern c++ code?
2 projects | /r/cpp_questions | 9 Jun 2023
I've added benchmarks to my C++20 work stealing thread pool implementation
1 project | /r/cpp | 31 May 2023
A note from our sponsor - SonarCloud
www.sonarsource.com | 23 Sep 2023
What are some of the best open-source modern-cpp projects in C++? This list will help you:
|3||EA Standard Template Library||7,339|
|6||Elements C++ GUI library||2,725|