modern-cpp

Open-source projects categorized as modern-cpp
Language: + C++ + C

Top 23 modern-cpp Open-Source 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: Using Jolt with flecs & Dear ImGui: Game Physics Introspection | dev.to | 2024-04-17

    EnTT is a popular alternative to flecs for C++, which has different performance/memory characteristics.

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

    InfluxDB logo
  • EA Standard Template Library

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

  • Project mention: Sane C++ Libraries | news.ycombinator.com | 2024-01-27

    > you can still use it with smart pointers provided by any other library

    Is the point of having a kitchen-sink library like this not that you dont have to reach for a 3rdparty library for things that you need 'all the time'?

    Certainly, not everyone needs it.

    ...but, not everyone needs threads either. Not everyone needs an http server; and yet, if you have an application framework that provides them, when you do need them, it saves you reaching for yet-another-dependency.

    Was that no the point from the beginning?

    unique_ptr is a fundamental primitive for many, as you see from some other frameworks (1), and implementation is not always either a) trivial, or b) as simple as 'just use std::unique_ptr'.

    This does seem like a very opinionated decision with reasonably unclear justification.

    [1] - eg. https://github.com/EpicGames/UnrealEngine/blob/release/Engin..., https://github.com/electronicarts/EASTL/blob/master/include/...

  • flecs

    A fast entity component system (ECS) for C & C++

  • Project mention: ECS, Finally | news.ycombinator.com | 2023-12-30

    I've also been enjoying building My First Game™ in Bevy using ECS. The community around Bevy really shines, but Flecs (https://github.com/SanderMertens/flecs) is arguably a more mature, open-source ECS implementation. You don't get to write in Rust, though, which makes it less cool in my book :)

    I'm not very proud of the code I've written because I've found writing a game to be much more confusing than building websites + backends, but, as the author notes, it certainly feels more elegant than OOP or globals given the context.

    I'm building for WASM and Bevy's parallelism isn't supported in that context (yet? https://github.com/bevyengine/bevy/issues/4078), so the performance wins are just so-so. Sharing a thread with UI rendering suuucks.

    If anyone wants to browse some code or ask questions, feel free! https://github.com/MeoMix/symbiants

  • LeetCode-Solutions

    🏋️ Python / Modern C++ Solutions of All 3123 LeetCode Problems (Weekly Update)

  • sol2

    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.

  • awesome-hpp

    A curated list of awesome header-only C++ libraries

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

    WorkOS logo
  • Elements C++ GUI library

    Elements C++ GUI library

  • Project mention: declarative GUI libraries | /r/cpp | 2023-06-23
  • immer

    Postmodern immutable and persistent data structures for C++ — value semantics at scale (by arximboldi)

  • Project mention: Text Editor Data Structures: Rethinking Undo | news.ycombinator.com | 2023-12-11

    I've been working on an editor (not text) in C++ and pretty early got into undo/redo. I went down the route of doIt/undoIt for commands but that quickly got old. There was both the extra work needed to implement undo separately for every operation, but also the nagging feeling that the undo operation for some operation wasn't implemented correctly.

    In the end, I switched to representing the entire document state using persistent data structures (using the immer library). This vastly simplified things and implementing undo/redo becomes absolutely trivial when using persistent data structures. It's probably not something that is suitable for all domains, but worth checking out.

    https://github.com/arximboldi/immer

  • nana

    a modern C++ GUI library

  • sqlite_orm

    ❤️ SQLite ORM light header only library for modern C++

  • eos

    A lightweight 3D Morphable Face Model library in modern C++ (by patrikhuber)

  • uvw

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

  • managarm

    Pragmatic microkernel-based OS with fully asynchronous I/O

  • Project mention: RISC-V support (super-duper ultra WIP) by ElectrodeYT · Pull Request #534 · managarm/managarm | /r/RISCV | 2023-07-09
  • stdgpu

    stdgpu: Efficient STL-like Data Structures on the GPU

  • q

    C++ Library for Audio Digital Signal Processing (by cycfi)

  • butano

    Modern C++ high level GBA engine

  • RigelEngine

    A modern re-implementation of the classic DOS game Duke Nukem II

  • Project mention: Lessons from Open-Source Game Projects | dev.to | 2024-04-10

    Rigel Engine - Duke Nukem 2 clone. C++, C, OpenGL, SDL2

  • liblava

    Modern and easy-to-use library for Vulkan

  • cccl

    CUDA C++ Core Libraries

  • Project mention: GDlog: A GPU-Accelerated Deductive Engine | news.ycombinator.com | 2023-12-03

    https://github.com/topics/datalog?l=rust ... Cozo, Crepe

    Crepe: https://github.com/ekzhang/crepe :

    > Crepe is a library that allows you to write declarative logic programs in Rust, with a Datalog-like syntax. It provides a procedural macro that generates efficient, safe code and interoperates seamlessly with Rust programs.

    Looks like there's not yet a Python grammar for the treeedb tree-sitter: https://github.com/langston-barrett/treeedb :

    > Generate Soufflé Datalog types, relations, and facts that represent ASTs from a variety of programming languages.

    Looks like roxi supports n3, which adds `=>` "implies" to the Turtle lightweight RDF representation: https://github.com/pbonte/roxi

    FWIW rdflib/owl-rl: https://owl-rl.readthedocs.io/en/latest/owlrl.html :

    > simple forward chaining rules are used to extend (recursively) the incoming graph with all triples that the rule sets permit (ie, the “deductive closure” of the graph is computed).

    ForwardChainingStore and BackwardChainingStore implementations w/ rdflib in Python: https://github.com/RDFLib/FuXi/issues/15

    Fast CUDA hashmaps

    Gdlog is built on CuCollections.

    GPU HashMap libs to benchmark: Warpcore, CuCollections,

    https://github.com/NVIDIA/cuCollections

    https://github.com/NVIDIA/cccl

    https://github.com/sleeepyjack/warpcore

    /? Rocm HashMap

    DeMoriarty/DOKsparse:

  • cuda-api-wrappers

    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.

  • Mudlet

    ⚔️ A cross-platform, open source, and super fast MUD client with scripting in Lua

  • Project mention: Lessons from Open-Source Game Projects | dev.to | 2024-04-10

    Mudlet - Client to connect to a MUD server, scriptable. C++, Lua

  • csv2

    Fast CSV parser and writer for Modern C++

  • SaaSHub

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

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

modern-cpp related posts

Index

What are some of the best open-source modern-cpp projects? This list will help you:

Project Stars
1 modern-cpp-tutorial 23,080
2 entt 9,447
3 EA Standard Template Library 7,663
4 flecs 5,496
5 LeetCode-Solutions 4,496
6 sol2 3,935
7 awesome-hpp 3,183
8 Elements C++ GUI library 2,912
9 immer 2,420
10 nana 2,246
11 sqlite_orm 2,132
12 eos 1,879
13 uvw 1,767
14 managarm 1,302
15 stdgpu 1,085
16 q 1,077
17 butano 990
18 RigelEngine 879
19 liblava 743
20 cccl 758
21 cuda-api-wrappers 726
22 Mudlet 699
23 csv2 513

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com