Links to various cpp patterns or tutorials
- C++ Developer Roadmap - “Where should I start? What and in what order should I study? What books should I read?”
- Awesome Modern C++ - A collection of resources on modern C++.
- Awesome C++ - A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
- awesome-hpp - A curated list of awesome header-only C++ libraries
- Single-file libraries - Single-file public-domain/open source libraries with minimal dependencies
- C++20/17/14/11 overview - Summarized overview
- cpp-cheat-sheet - C++ Data Structures and Algorithms Cheat Sheet
- More C++ Idioms - Aimed toward: Anyone with an intermediate level of knowledge in C++ and supported language paradigms
- CPP C++ Papyrus
- C++ CHEATSHEET - The cheatsheet focus is both on the language as well as common classes from the standard library.
- sanfoundry - C++ examples cover a wide range of programming areas in Computer Science
- Cpp-Learning-Resources - This document is a collection of high quality c++ learning materials for both new and experienced c++ programmers.*
- The Algorithms - C++ - The repository is a collection of open-source implementation of a variety of algorithms implemented in C++
- atomics - C++ links: atomics, lock free, memory model
- Cpp20 - This is the code repository for my book "C++20 - Get the Details"
- MV(X) - MV(X)
- croc - Clean Architecture
- GETTERS AND SETTERS - This article deals with getters and setters in C++.
- C++17 STL Cookbook - This is the code repository for C++17 STL Cookbook, published by Packt.
- 30 Seconds of C++ - 30 Seconds of C++ (STL in C++)
- Cloud Design Patterns - These design patterns are useful for building reliable, scalable, secure applications in the cloud.
- Messaging Patterns in Service-Oriented Architecture part 1, part 2 - Messaging Patterns Catalogue Within SOA Context
- Queueing theory - Queueing theory: an introduction for software development
- CMake Cookbook - This repository collects sources for the recipes contained in the CMake Cookbook
- Templates for CMake projects - Blog https://habr.com/ru/post/535602/
- CMake Scripts - A selection of useful scripts for use in CMake projects, include code coverage, sanitizers, and dependency graph generation.
- C++ Reactive Programming - Book covers the essential functional reactive concepts that will help you build highly concurrent, event-driven, and asynchronous applications in a simpler and less error-prone way
- RxCpp - The Reactive Extensions for C++ (RxCpp) is a library of algorithms for values-distributed-in-time
- tower120 - Simple only reactive C++ library.
- schlangster - Data dependencies between state and event flows
- snakster - C++React is reactive programming library for C++14
- Elma - Elma is an event loop and process manager for embedded and reactive systems.
- µReact - Minimalistic reactive library for c++
- The Impossibly Fast C++ Delegates, Fixed
- marcmo - Small delegate implementation.
- bdiamand - Fixed-size C++ delegates - efficient alternatives to std::function.
- nikitablack - C++ code tests and examples
- EnTT - Generic, type-safe delegates in C++ (revised)
- Asynchronous Multicast Delegates - A C++ delegate library that supports synchronous and asynchronous function invocation on any C++17
- rosbacke - Embedded friendly std::function alternative. Never heap alloc, no exceptions. Is trivially_copyable.
- gammasoft71 - Modern c++17 library containing multicast delegate and event classes on Windows, macOS, Linux, iOS and android.
- Unbelievably Fast Delegate - Delegate is an unbelievably fast, lightweight, and 0-overhead function container.
- Armillus - Blazing fast, lightweight, safe, heapless, non-templated and header-only replacement for std::function for C++ 17 and beyond.
- ddinu - Generic observable objects and reactive expressions for C++
- reactive-v4-observable - Event-driven library with statefull observable obejcts.
- rocket - Fast C++ Observer Pattern
- Sigslot - Sigslot is a header-only, thread safe implementation of signal-slots for C++.
- Signals - library is optimized for video games. signal-slot-benchmarks!!! with sources of plenty libraries
- observer_ptr - observer-ptr is a single-file header-only library with a variant of std::experimental::observer_ptr for C++98 and later.
- Observable Library - Library to use the observer pattern in C++11 programs with observable/observer classes or signals/slots.
- observer - An observer pattern / signal slot pattern that can ignore extra parameters like Qt's signals and slots.
- prettybxp - An implementation of the observer pattern by c++11
- Proto - A dependency free, single-header C++17 signals and slots implementation.
- CPP-NotificationCenter - A C++ API inspired by Cocoa's NSNotificationCenter API.
- bindey - provides the basic building block of MVVM -- an observable "Property" and a databinding mechanism.
- BODEN - Property/Notifier
- C++ PropertySystem - this library are a wrapper around a value and a signal
- xproperty - C++ properties and observer pattern
- EntityPlus - EntityPlus is an Entity Component System library
- Event notifier - A C++ header-only library that lets you connect events to functions with a small and intuitive interface.
- gammasoft71_properties - another c#-like property accessor for C++11 and above.
- Tectu - A library that brings C# like properties to modern C++.
- PropertyEvent - This header only repository include the files required for the creation of an event system (not thread safe).
- moodycamel::ConcurrentQueue - An industrial-strength lock-free queue for C++.
- Awesome Lock-Free - A collection of resources on wait-free and lock-free programming.
- SeaStar - SeaStar is an event-driven framework allowing you to write non-blocking, asynchronous code in a relatively straightforward manner
- eventpp - C++ library for event dispatcher and callback list
- atomic_queue - C++11 multiple-producer-multiple-consumer lockless queues based on std::atomic<>
- craflin - A lock-free multi-producer multi-consumer ring buffer FIFO queue.
- SPSC_Queue - A highly optimized single producer single consumer message queue C++ template
- WFMPMC - A bounded wait-free(almost) zero-copy MPMC queue written in C++11, which can also reside in SHM for IPC
- lockfree_mpmc_queue - Lockfree, atomic, multi producer, multi consumer, C++, in process and inter-process queue
- EventBus - Simple and very fast event bus
- DeveloperPaul123 - eventbus is a simple, header only C++17 event bus library
- courier - A simple, lightweight C++17 event bus/dispatcher.
- mmcshane - It's an event bus. Subscribe to events. Publish events.
- WormHoles - WormHoles is a multiplatform header-only library implementing a general and threadsafe event bus.
- Events - Event system that allows for clients to attach callbacks to a host which then can be invoked at any time
- PubBus - PubBus is a simple, header-only implementation of a MessageBus.
- Microcontroller message bus - Microcontroller message bus
- Ichor - C++ framework/middleware for thread confinement and dependency injection.
- DeveloperPaul123 - A simple, header only event bus library written in modern C++17.
- ThreadPool - This is a pure (which means it doesn't depend on any platform) and exception-safety C++ threadpool
- cpptask - "cpptask" is an open source library which implements load balanced task scheduler for developing parallel C++ programs.
- concurrencpp - concurrencpp is a tasking library for C++ allowing developers to write highly concurrent applications easily and safely by using tasks, executors and coroutines.
- Async++ - Async++ is a lightweight concurrency framework for C++11
- Marl - Marl is a hybrid thread / fiber task scheduler written in C++ 11.
- riften::Thiefpool - A blazing-fast, lightweight, work-stealing thread-pool for C++20
- transwarp - C++ library for task concurrency
- Marl - Marl is a hybrid thread / fiber task scheduler written in C++ 11.
- q - A platform-independent promise library for C++, implementing asynchronous continuations.
- enkiTS - Task Scheduler for creating parallel programs
- actor-zeta - virtual actor model implementation featuring lightweight & fast and more
- microAkka - Akka framework in C++ on microcontrollers
- C++ Actor Framework - The qb framework is a thin-layer multicore-optimized the Actor model
- Rotor - rotor is event loop friendly C++ actor micro framework.
- libagents - A multi-threaded C++11 implementation of the Actor Model
- Theron - For sources and doc http://www.ashtonmason.net/portfolio/theron/
- Theron++: An Actor Framework for C++ - Theron++ is an actor framework conforming to the Theron API with extensions for distributed communication
- RStein.AsyncCpp - threadless actors (agents)
- sobjectizer - An implementation of Actor, Publish-Subscribe, and CSP models in one rather small C++ framework
- qpcpp - for building modern embedded software as systems of asynchronous, event-driven active objects (actors)
- protoactor-cpp - Ultra-fast, distributed, cross-platform actors.
- artpaul - Actors are light-weight objects, and they interact fully asynchronously with messages.
- christianparpart - Actor Model library. It was written purely out of fun.
- Asynchronous Agents Library - The Agents Library is a C++ template library that promotes an actor-based programming model and in-process message passing for coarse-grained dataflow and pipelining tasks.
- syscpp - ActorThread: Active Object pattern in C++
- HAM-2015/CPP-Actor-framework -
- libprocess - Library that provides an actor style message-passing programming model
- Light Actor Framework - Laughably simple yet effective Actor concurrency framework for C++20
- μActor - μActor: Stateful Serverless at the Edge. Platform for running actors on various devices.
- React++ - A lightweight C++ actor library. A thesis
- cpp-serializers - Benchmark comparing various data serialization libraries (thrift, protobuf etc.) for C++
- FlatBuffers - cross platform serialization library
- zpp serializer - A single header only standard C++ serialization framework.
- Magic Enum C++ - Library provides static reflection for enums
- Refactoring.Guru
- C++ Design Patterns
- Design-Patterns - Design patterns in the C++ programming language
- spdlog - Fast C++ logging library.
- Date - Several separate C++11/C++14/C++17 libraries for date topics. Timezone library, ISO week date calendar, Julian calendar, Islamic calendar.
- TinyFSM - simple finite state machine library for C++, designed for optimal performance and low memory footprint.
- Another Finite State Machine - afsm is a finite state machine C++14 library designed for usage in multithreaded asynchronous environment.
- HFSM2 - Header-only heriarchical FSM framework in C++11, with fully statically-defined structure (no dynamic allocations), built with variadic templates.
- fea_state_machines - A buffet of state machines.
- State machine - This repository contains code referenced in state-machine themed series of blog posts under sii.pl/blog/.
- HSMCPP - C++ based Hierarchical / Finite State Machine library oriented for embedded and RTOS systems.
library: a collection of types, functions, classes, etc. implementing a set of facilities (abstractions) meant to be potentially used as part of more that one program.
- Folly - Folly (acronymed loosely after Facebook Open Source Library) is a library of C++14 components designed with practicality and efficiency in mind. Folly contains a variety of core library components used extensively at Facebook.
- Facebook Template Library - Fatal (Facebook Template Library) is a library for fast prototyping software in modern C++.
- tools - header-only libraries written in modern C++ (11, 14, 17, 20).
- C++ libraries - A curated list with C++ libraries
- The Reactive C++ Toolbox - The Reactive C++ Toolbox is an open source library of C++20 components designed for efficient aynchronous IO network applications on the Linux platform.
- FunctionalPlus - helps you write concise and readable C++ code.
- Yato - useful snippets and abstractions for C++ development.
- cppfan - A collection of C++ foundation class.
- apex - providing shims for upcoming C++ standards library features
- Flutter Engine - Flutter is Google's SDK for crafting beautiful, fast user experiences for mobile, web, and desktop from a single codebase.
- libsolace - libSolace is a library to help to build a mission-critical application.
- vrm_core - Lightweight C++14 utility library. (Modernized, stripped and cleaned-up version of SSVUtils.)
- bs::framework - library that aims to provide a unified foundation for the development of real-time graphical applications, whether games, engines or tools
- bx - Base library used across multiple projects
- RxLib - collection of cpp patterns
- eCAL - eCAL - enhanced Communication Abstraction Layer
- CppCommon - C++ Common Library contains reusable components and patterns for error and exceptions handling, filesystem manipulations, math, string format and encoding, shared memory, threading, time management and others.
- MobaXterm - MobaXterm provides all the important remote network tools (SSH, X11, RDP, VNC, FTP, MOSH, ...)
- ghidra-sre - A software reverse engineering (SRE) suite of tools developed by NSA's Research Directorate in support of the Cybersecurity mission
- sizer - Win32/64 executable size report utility
- Bloaty McBloatface - Ever wondered what's making your binary big?
- The Inefficiency of C++, Fact or Fiction? - The cost in terms of code size overhead compared to C for the C++ constructs
- SymbolSort - SymbolSort is a utility for analyzing code bloat in C++ applications.
- ghidra - Ghidra Software Reverse Engineering Framework
- ETL - Embedded Template Library
- embxx - Embxx is Embedded C++ library
- theCore - framework for various microcontroller applications, with or without RTOS (bare-metal).
- libcpp - C++ standard library for embedded systems
- kaguya - C++ binding to Lua
- nlohmann - JSON for Modern C++
- quicktype - Convert JSON into gorgeous, typesafe code in any language.
- My Awesome Lua List - My list of quality Lua packages and resources.
- Awesome Lua - A curated list of quality Lua packages and resources.
- lua-utils - A small utility library to expand on Lua's standard library with some common functions.
- RxLua - Reactive Extensions for Lua
- LuaStandardLibrary - LuaStandardLibrary
- Factorio-Stdlib - Factorio Standard Library Project
- Lua Async Await - Async Await in 90 lines of code.
- date.lua - date.lua
- luapower/oo - Object system for Lua with virtual properties and method overriding hooks
- LuaWOO - A library that provides advanced Object Oriented Programming (OOP) mechanisms for the Lua language.
- class2 - Object-oriented programming for Lua/ComputerCraft. Version 2.
- Luaoop - Lua library to do OOP (Object Oriented Programming).
- SWIG
- MQTT-Reactive - portable and non-blocking MQTT client
- eMQTT5 - An embedded MQTTv5 client in C++ with minimal footprint, maximal performance
- Arcana.cpp - Arcana is a collection of general purpose C++ utilities
- xenium - xenium is a header-only library that provides a collection of concurrent data structures and memory reclamation algorithms
- EmbeddedInfraLib - EmbeddedInfraLib is a set of C++ libraries and headers that provide heap-less, STL like, infrastructure for embedded software development.
- WLib - The goal of WLib is to create a lighter and safer alternative to C++ STL.
- libunifex - The 'libunifex' project is a prototype implementation of the C++ sender/receiver async programming model
- CppCommon - C++ Common Library contains reusable components and patterns
- CoroBase - Coroutine-Oriented Main-Memory Database Engine
- FastFlow - FastFlow: high-performance parallel patterns and building blocks in C++
- distortos - object-oriented C++ RTOS for microcontrollers
- Bitsery - Header only C++ binary serialization library.
- string_utils - Utility functions for strings using on C++17 <string_view> and to avoid unnecessary string copies.
- pystring - Pystring is a collection of C++ functions which match the interface and behavior of python's string class methods using std::string.
- libchain - Easy to use std::string enhancements.
- PureMVC - PureMVC is a lightweight framework for creating applications based upon the classic Model-View-Controller design meta-pattern.
- PureMVC++ - C++ version of the PureMVC architecture.
- NoesisGUI-NativeSDK - Simple and consistent way to present and interact with data using MVVM patterns. Provides a clean separation of business logic from UI.
- GUI-lite - The smallest header-only GUI library(4 KLOC) for all platforms
- Monochrome - Monochrome is an open source cross-platform GUI library
- lxgui - GUI library
- elapsed_timer - Elapsed time for code blocks execution written in C++11
- simple_match - Simple, Extensible C++ Pattern Matching Library
- flags - Command line parser
- csv2 - csv reader/writer
- dtl - DIFF template library written
- cyan - A lock-free, wait-free, event-driven, cross-platform, thread pool-backed asynchronous execution library in C++.
- libjwdpmi - This library aims to be a complete development framework for DPMI (32-bit DOS) applications, written in C++20.
- Ouroboros - Embedded NoSQL storage of data.
- Veho - Auto-optimizing modern C++11 CAN interface generator
- GuinsooDB - embedded database
- libcappuccino - C++17 Cache Data Structure Library
- sanitizers - Google android AddressSanitizer, ThreadSanitizer, MemorySanitizer
- iceoryx - zero-copy inter-process-communication
- pubsublite - Lightweight header-only for intra-process publish subscribe (within a single app). Supports channels with multiple publishers and subscribers.
- Fleece - A super-fast, compact, JSON-equivalent binary data format
- Eonblast Fleece 0.3.1 Lite - Fleece is optimized for fastest Lua to JSON conversion and beats other JSON packages by around 10 times.
- Plain Old Data Serializer (PODS) - Fast and simple C++ serializer
- IncludeOS - A minimal, resource efficient unikernel for cloud services
- ZenJSON - Lightweight, ultra fast JSON parser/generator for C++ with intuitive API