awesome-cpp
A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
https://github.com/fffaraz/awesome-cpp
Last synced: about 9 hours ago
JSON representation
-
Video
- Vireo - A lightweight and versatile video processing library by Twitter. [MIT]
-
Videos
- Awesome C Programming Tutorials in Hi Def [HD - A collection of detailed C Programming Language Tutorials for Beginners and New Programmers.
- C++ - by VoidRealms.
- C++ Qt Programming - by VoidRealms.
- C++ Programming Tutorials Playlist - TheNewBoston Official Buckys C++ Programming Tutorials Playlist.
- C++ Programming Tutorials from thenewboston - These are all of thenewboston's C++ programming tutorials.
- C++ GUI with Qt Playlist - Official Playlist for thenewboston C++ GUI with Qt tutorials.
- Caleb Curry's C Programming Tutorials - An all-in-one playlist of tutorials for C programming.
- C Programming Tutorials - All of TheNewBoston's C programming tutorials are right here.
- Bo Qian's playlist - Boost Library, C++ Standard Library, Modern C++, Advanced C++, Advanced STL, ...
- The Cherno's C++ Playlist - Extensive C++ tutorial series by The Cherno.
- Caleb Curry's C Programming Tutorials - An all-in-one playlist of tutorials for C programming.
- Code for Yourself C++ Playlist - A complete C++ course covering everything from fundamentals to software design.
- C++ Qt Programming - by VoidRealms.
- C++ GUI with Qt Playlist - Official Playlist for thenewboston C++ GUI with Qt tutorials.
- The Cherno's C++ Playlist - Extensive C++ tutorial series by The Cherno.
-
Virtual Machines
- CarpVM - "interesting" VM in C. Let's see how this goes. [GPLv3]
- MicroPython - Aims to put an implementation of Python 3.x on a microcontroller. [MIT]
- TinyVM - A small, fast, lightweight virtual machine written in pure ANSI C. [MIT]
-
Web Application Framework
- CppCMS - A Free High Performance Web Development Framework (not a CMS). [LGPLv3]
- Kore - ultra fast and flexible web server / framework for web applications developed in C. [ISC]
- Pistache - Pistache is a C++ REST framework written in pure C++11 with no external dependency. [Apache2]
- Wt - A C++ library for developing web applications. [GPL/Proprietary]
- Pistache - Pistache is a C++ REST framework written in pure C++11 with no external dependency. [Apache2]
- Civetweb - Provides easy to use, powerful, C/C++ embeddable web server with optional CGI, SSL and Lua support. [MIT]
- Crow - Crow is a C++ microframework for running web services. It uses routing similar to Python's Flask. [BSD] [website](https://crowcpp.org)
- Cutelyst - A C++ Web Framework built on top of Qt, using the simple approach of Catalyst (Perl) framework. [BSD-3-Clause] [website](https://cutelyst.org/)
- C++ wfrest - C++ Web Framework REST API. [Apache2]
- facil.io - Evented, high performance C web framework supporting HTTP, WebSockets, SSE and more. [MIT] [website](http://facil.io)
- lwan - Experimental, scalable, high performance HTTP server. [GPL2]
- oat++ - Light, zero-dependency framework to create high-performance web-services. [Apache-2.0] [website](https://oatpp.io/)
- Pistache - Pistache is a C++ REST framework written in pure C++11 with no external dependency. [Apache2]
- QDjango - A web framework written in C++ and built on top of the Qt library. Where possible it tries to follow django's API, hence its name. [LGPL]
- TreeFrog Framework - High-speed and full-stack web application framework based on C++ and Qt, which supports HTTP and WebSocket protocol (with O/R mapping). [BSD] [website](http://www.treefrogframework.org/)
- userver - Asynchronous C++17 framework with a rich set of abstractions and database drivers for fast and comfortable creation of efficient microservices, services and utilities. [Apache-2.0] [website](https://userver.tech/)
- Drogon - A C++17/20 based, high-performance HTTP application framework. [MIT]
- aeronet - High-performance, modular C++ HTTP/1.1, HTTP/2 and WebSocket microservices framework focused on performance and scalability. [MIT]
- httpserver.h - A single-header HTTP server library for C. [MIT]
- libhttp - A cross-platform HTTP and HTTPS library in C/C++. [MIT]
- libOnion - lightweight library to help you create webservers in C programming language. [LGPLv3]
-
Weblogs
- Coding For Speed - Coding For Speed DOT COM, Less Execution Time.
- Eric Niebler
- Sticky Bits
- Paul Fultz II's Blog
- ridiculousfish - Will It Optimize?
- Embedded in Academia
- Simplify C++
- Fluent C++
- Bartek's Coding Blog
- Sutter’s Mill
- Vorbrodt's C++ Blog
- foonathan::blog()
- C++ Team Blog - Dev blog from the Microsoft Visual C++ team
- Eric Niebler
- Bartek's Coding Blog
- Kenny Kerr
- foonathan::blog()
-
Websites
- Standard C++ - News, Status & Discussion about Standard C++.
- Build Bench - Compare C++ Builds.
- Quick Bench - Quick C++ Benchmarks.
- CppCon - The C++ Conference.
- C++ by Example - Learn C++ by Example.
- cplusplus.com - The C++ Resources Network.
- C FAQ - C frequently asked questions.
- C++ FAQ - C++ frequently asked questions.
- C++ FQA Lite - C++ frequently questioned answers.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- Guru of the Week - A regular series of C++ programming problems created and written by Herb Sutter.
- Meeting C++
- PVS-Studio’s challenge - PVS-Studio’s C++ quiz in which you're asked to find errors in code fragments of open source projects.
- Udemy C++ Courses and Tutorials
- C++ Hints - Every business day hints about most often C++ mistakes and ways to solve them from PVS-Studio Team.
- C++ tutorial - A user ranked online tutorial bank site displaying multiple courses to learn C++ from.
- C++ Tutorial for Beginners - A comprenhensive tutorial on C++ curated by trained experts.
- cppexpert.online - Learn the best C++ practices by improving code snippets with some problems or with bad practices.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ for yourself - A comprehensive tutorial on modern C++ covering everything from fundamentals to software design.
- cppstat - A site that lists C++ features and their support by compilers and standard library implementations in an accessible way.
- C++ FAQ - C++ frequently asked questions.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- Guru of the Week - A regular series of C++ programming problems created and written by Herb Sutter.
- Udemy C++ Courses and Tutorials
- C++ Hints - Every business day hints about most often C++ mistakes and ways to solve them from PVS-Studio Team.
- CompileBytes C++ Compiler
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- cppstat - A site that lists C++ features and their support by compilers and standard library implementations in an accessible way.
- C++ Resources - A collection of C++ resources including books, articles, and tools.
- CppPatterns - A repository of modern C++ patterns and idioms. [website](https://cpppatterns.com)
- Function Pointers - A guide to understanding function pointers in C/C++.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- CppCon - The C++ Conference.
- C++ reference - A complete online reference for the C and C++ languages and standard libraries.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- cppexpert.online - Learn the best C++ practices by improving code snippets with some problems or with bad practices.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- C++ Quiz - A simple online quiz that you can use to test your knowledge of the C++ programming language.
- CompileBytes C++ Compiler
-
XML
- Expat - An XML parser library written in C. [MIT]
- Libxml2 - The XML C parser and toolkit of Gnome. [MIT]
- libxml++ - An XML Parser for C++. [LGPL2]
- PugiXML - A light-weight, simple and fast XML parser for C++ with XPath support. [MIT]
- RapidXml - An attempt to create the fastest XML parser possible, while retaining useability, portability and reasonable W3C compatibility. [Boost]
- TinyXML - A simple, small, minimal, C++ XML parser that can be easily integrating into other programs. [zlib]
- Xerces-C++ - A validating XML parser written in a portable subset of C++. [Apache2]
- Expat - An XML parser library written in C. [MIT]
- Mini-XML - A small XML parsing library written in ANSI C. [LGPL2 with exceptions]
- TinyXML2 - A simple, small, efficient, C++ XML parser that can be easily integrating into other programs. [zlib]
- TinyXML++ - A completely new interface to TinyXML that uses MANY of the C++ strengths. Templates, exceptions, and much better error handling. [MIT]
- Xalan C - A library and a command line program to transform XML documents using a stylesheet that conforms to XSLT 1.0 standards. [Apache-2.0] [website](https://xalan.apache.org/)
- libxml++ - An XML Parser for C++. [LGPL2]
- RapidXml - An attempt to create the fastest XML parser possible, while retaining useability, portability and reasonable W3C compatibility. [Boost]
- TinyXML++ - A completely new interface to TinyXML that uses MANY of the C++ strengths. Templates, exceptions, and much better error handling. [MIT]
- Libxml2 - The XML C parser and toolkit of Gnome. [MIT]
- Libxml2 - The XML C parser and toolkit of Gnome. [MIT]
-
Yaml
- fkYAML - A C++ header-only YAML library. [MIT]
- LibCYAML - C library for reading and writing YAML. [ISC]
- libfyaml - A fancy 1.2 YAML and JSON parser/writer. [MIT]
- LibYAML - A C library for parsing and emitting YAML. [MIT] [website](https://pyyaml.org/wiki/LibYAML)
- mini-yaml - Single header YAML 1.0 C++11 serializer/deserializer. [MIT]
- rapidyaml - Rapid YAML is a C++ library to parse and emit YAML. [MIT]
- yaml-cpp - A YAML parser and emitter in C++. [MIT]
Programming Languages
Categories
Miscellaneous
114
Networking
73
Math
64
Websites
63
Frameworks
53
Debug
52
Database
49
Concurrency
49
JSON
43
Image Processing
42
GUI
40
Compression
38
Scripting
37
CLI
35
Cryptography
34
Graphics
34
Game Engine
32
Articles
32
Audio
30
Build Systems
29
Integrated Development Environment
28
Machine Learning
28
Containers
28
Other Awesome Projects
24
Logging
23
Serialization
22
Web Application Framework
21
Online Compiler
19
Artificial Intelligence
19
Reflection
19
Inter-process communication
19
Compiler
18
Physics
18
Static Code Analysis
17
XML
17
Weblogs
17
Videos
15
Memory Allocation
15
PDF
14
Robotics
14
Regular Expression
14
Multimedia
13
Configuration
12
CSV
10
Asynchronous Event Loop
10
Video
10
Biology
9
Internationalization
9
Scientific Computing
9
Coding Style
8
Coding Standards
7
Yaml
7
Documentation
7
Office Open XML
7
Chemistry
7
Debugger
7
DSP
7
Font
6
Talks
6
Coding Style Tools
6
Standard Libraries
6
Sorting
5
Data visualization
5
BitTorrent
4
Virtual Machines
3
Serial Port
3
Books
3
Podcasts
2
API Design
2
Graph
2
Sub Categories
Keywords
cpp
194
c-plus-plus
109
c
90
cpp17
65
header-only
63
cross-platform
42
cpp11
38
json
37
cplusplus
36
cpp20
36
library
35
python
31
cpp14
30
linux
24
windows
23
machine-learning
22
serialization
22
simd
21
opengl
20
cmake
20
http
18
game-engine
18
cpp-library
18
game-development
17
gamedev
17
modern-cpp
17
parser
17
reflection
16
deep-learning
14
http-server
14
embedded
14
audio
13
graphics
13
high-performance
12
javascript
12
java
12
clang
12
cuda
11
c-plus-plus-11
11
data-structures
11
scientific-computing
11
macos
11
performance
11
no-dependencies
11
neural-network
11
logging
11
database
11
neon
10
vulkan
10
rpc
10