Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
awesome-cpp
A curated list of awesome C++ (or C) frameworks, libraries, resources, and shiny things.
https://github.com/DanylovskyiAM/awesome-cpp
Last synced: 5 days ago
JSON representation
-
Frameworks
- abseil-cpp - Abseil C++ Common Libraries. [Apache2]
- ASL - Adobe Source Libraries provides peer-reviewed and portable C++ source libraries. [MIT]
- Boost - A large collection of generic C++ libraries. [Boost] [website](http://www.boost.org/)
- Cinder - A community-developed, free and open source library for professional-quality creative coding. [BSD]
- GLib - GLib provides the core application building blocks for libraries and applications written in C. [LGPL]
- MiLi - Minimal headers-only C++ Library. [Boost]
- ROOT - A set of OO frameworks with all the functionality needed to handle and analyze large amounts of data in a very efficient way. Used at CERN. [LGPL]
- STLport - An exemplary version of STL. [Free]
- uSTL - The small STL library. [MIT]
-
Standard Libraries
- C++ Standard Library - A collection of classes and functions, which are written in the core language and part of the C++ ISO Standard itself.
- Standard Template Library - The Standard Template Library (STL).
- C POSIX library - A specification of a C standard library for POSIX systems.
- ISO C++ Standards Committee - ISO/IEC JTC1/SC22/WG21 - The C++ Standards Committee. [website](http://www.open-std.org/JTC1/SC22/WG21/)
- The GNU C Library - The purpose of this manual is to tell you how to use the facilities of the GNU C Library.
-
Compression
- bzip2 - A freely available, patent free, high-quality data compressor. [BSD]
- PhysicsFS - A library to provide abstract access to various archives. It is intended for use in video games, and the design was somewhat inspired by Quake 3's file subsystem. [zlib]
- KArchive - A library for creating, reading, writing and manipulating file archives like zip and tar. It also provides transparent compression and decompression of data, using formats like gzip, via a subclass of QIODevice. [LGPL]
- ZLib - A very compact compression library for data streams. [zlib]
- LZMAT - An extremely fast real-time lossless data compression library. [GPL]
-
Audio
- KFR - Fast, modern C++ DSP framework, FFT, FIR/IIR filters, Sample Rate Conversion. [GPL/Commercial]
- OpenAL - Open Audio Library - A crossplatform audio API. [BSD/LGPL/Commercial]
- Vorbis - Ogg Vorbis is a fully open, non-proprietary, patent-and-royalty-free, general-purpose compressed audio format. [BSD]
-
Biology
- Chaste - An open source C++ library for the computational simulation of mathematical models developed for physiology and biology. [BSD]
-
Concurrency
-
Cryptography
- GnuPG - A complete and free implementation of the OpenPGP standard. [GPL]
- Libgcrypt - A general purpose cryptographic library originally based on code from GnuPG. [LGPLv2.1+]
- LibreSSL - A free version of the SSL/TLS protocol forked from OpenSSL in 2014. [?]
- Nettle - A low-level cryptographic library. [LGPL]
- Themis - crypto library for painless data security, providing symmetric and asymmetric encryption, secure sockets with forward secrecy, for mobile and server platforms. [Apache2]
-
Database
-
Debug
- CMocka - unit testing framework for C with support for mock objects. [Apache2]
- CTest - The CMake test driver program. [BSD]
- MemTrack - Tracking memory allocations in C++.
- microprofile - Profiler with web-view for multiple platforms. [PublicDomain]
- Mockator - Eclipse CDT plug-in for C++ Seams and Mock Objects.
- VLD - Visual Leak Detector. A free, robust, open-source memory leak detection system for Visual C++.
-
Game Engine
- Banshee 3D - Modern C++14 game engine with Vulkan support, fully featured editor and C# scripting. [LGPL3/Commercial]
- Grit - Community project to build a free game engine for implementing open world 3D games. [MIT]
- toy engine - toy is a thin and modular c++ game engine and offers simple expressive c++ idioms to design full featured 2D or 3D games in fast iterations.
- Urho3D - A free lightweight, cross-platform 2D and 3D game engine implemented in C++. Greatly inspired by OGRE and Horde3D. [MIT]
-
GUI
-
Image Processing
- CImg - A small, open source, C++ toolkit for image processing. [Own LGPL or GPL]
- CxImage - An image processing and conversion library to load, save, display, transform BMP, JPEG, GIF, PNG, TIFF, MNG, ICO, PCX, TGA, WMF, WBMP, JBG, J2K images. [zlib]
- GDCM - Grassroots DICOM library.
- stb-image - STB single-header image loading library. [Public Domain]
- tesseract-ocr - An OCR engine. [Apache2]
- MagickWnd - ImageMagick program interfaces for C. [Apache2]
-
Internationalization
-
Inter-process communication
- Apache Thrift - Efficient cross-language IPC/RPC, works between C++, Java, Python, PHP, C#, and many more other languages. Originally developed by Facebook. [Apache2]
- WAMP - Provides RPC and pub/sub messaging patterns. (various implementations, various languages)
-
Logging
-
Math
- ceres-solver - C++ library for modeling and solving large complicated nonlinear least squares problems from google. [BSD]
- cml - free C++ math library for games and graphics. [Boost]
- ExprTK - The C++ Mathematical Expression Toolkit Library (ExprTk) is a simple to use, easy to integrate and extremely efficient run-time mathematical expression parser and evaluation engine. [MIT]
- GMP - A C library for arbitrary precision arithmetic, operating on signed integers, rational numbers, and floating-point numbers. [LGPL3 & GPL2]
- muparser - muParser is an extensible high performance math expression parser library written in C++. [MIT]
- NT2 - A SIMD-optimized numerical template library that provides an interface with MATLAB-like syntax. [Boost]
- Versor - A (fast) Generic C++ library for Geometric Algebras, including Euclidean, Projective, Conformal, Spacetime (etc).
- Wykobi - A C++ library of efficient, robust and simple to use C++ 2D/3D oriented computational geometry routines. [MIT]
- BSD 3-clause
-
Multimedia
- LIVE555 Streaming Media - Multimedia streaming library using open standard protocols (RTP/RTCP, RTSP, SIP). [LGPL]
- libVLC - libVLC (VLC SDK) media framework. [GPL]
- SDL - Simple DirectMedia Layer. [zlib]
-
Networking
- ACE - An OO Network Programming Toolkit in C++. [?MIT?]
- Libmicrohttpd - GNU libmicrohttpd is a small C library that is supposed to make it easy to run an HTTP server as part of another application. [LGPL v2.1+]
- POCO - C++ class libraries and frameworks for building network- and internet-based applications that run on desktop, server, mobile and embedded systems. [Boost] [website](http://pocoproject.org/)
-
PDF
- MuPDF - A lightweight PDF, XPS, and E-book viewer. [AGPL/Commercial]
- Poppler - Open-source multi-backend PDF rendering library based on the xpdf-3.0 code base. [GPLv2/GPLv3]
- Xpdf - Xpdf is a free PDF viewer and toolkit, including a text extractor, image converter, HTML converter, and more. [GPL v2/GPL v3]
-
Physics
- ODE - Open Dynamics Engine - An open source, high performance library for simulating rigid body dynamics. [BSD&LGPL]
-
Regular Expression
- PCRE - A regular expression C library inspired by the regular expression capabilities in Perl. [BSD]
-
Robotics
-
Scientific Computing
-
Video
-
Web Application Framework
-
XML
- Expat - An XML parser library written in C. [MIT]
-
Miscellaneous
- libsigc++ - A typesafe callback system for standard C++. [LGPL]
- libusb - A universal USB library which allows for portable access to USB devices. [LGPL2]
- StrTk - A C++ library consisting of high performance string processing routines. [MIT]
- libsigc++ - A typesafe callback system for standard C++. [LGPL]
- casacore - A set of c++ core libraries derived from aips++. [LGPL]
- FastFormat - Fast, Safe C++ Formatting inspired by log4j and Pantheios [Simplified BSD]
-
Compiler
- GCC - GNU Compiler Collection. Supports C++11/14/1z C11 and OpenMP. [GNU GPL3]
- PCC - A very old C compiler. Supports C99.
- Open WatCom - Watcom C, C++, and Fortran cross compilers and tools. [Sybase Open Watcom Public License]
- Oracle Solaris Studio - C, C++ and Fortran compiler for SPARC and x86. Supports C++11. Available on Linux and Solaris. [OTN Developer License]
-
Online Compiler
- codepad - An online compiler/interpreter, and a simple collaboration tool.
- coliru - Online compiler/shell with support for various C++ compilers.
- Rise4Fun - Online Visual C++ compiler.
- Try It Online - TIO is a family of online interpreters for an evergrowing list of practical and recreational programming languages.
- Wandbox - An online Clang/GCC compiler with Boost available.
-
Debugger
- Comparison of debuggers - A list of Debuggers from Wikipedia.
- GDB - GNU Debugger.
-
Integrated Development Environment
- Anjuta DevStudio - The GNOME IDE. [GPL3]
- IBM VisualAge - A family of computer integrated development environments from IBM.
- Xcode - Developed by Apple.
- YouCompleteMe - YouCompleteMe is a fast, as-you-type, fuzzy-search code completion engine for Vim.
- Geany - Small, fast, cross-platform IDE. [GPL]
- KDevelop - A free, open source IDE.
- Microsoft Visual Studio - An IDE from Microsoft.
- Qt Creator - A cross-platform C++, JavaScript and QML IDE which is part of the SDK for Qt.
- Cevelop - Cross-platform C and C++ IDE based on Eclipse CDT with additional plug-ins.
- CLion - Cross-platform C and C++ IDE from JetBrains.
- Code::Blocks - A free C, C++ and Fortran IDE.
- CodeLite - Another cross-plaform, free C and C++ IDE. [GPL2 with an exception for plugins]
- Geany - Small, fast, cross-platform IDE. [GPL]
- KDevelop - A free, open source IDE.
- Microsoft Visual Studio - An IDE from Microsoft.
- Qt Creator - A cross-platform C++, JavaScript and QML IDE which is part of the SDK for Qt.
- Cevelop - Cross-platform C and C++ IDE based on Eclipse CDT with additional plug-ins.
- CLion - Cross-platform C and C++ IDE from JetBrains.
- Code::Blocks - A free C, C++ and Fortran IDE.
- CodeLite - Another cross-plaform, free C and C++ IDE. [GPL2 with an exception for plugins]
-
Build Systems
- CMake - Cross-platform free and open-source software for managing the build process of software using a compiler-independent method. [BSD]
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- Conan - C/C++ Package Manager, open sourced. [MIT]
- Ninja - A small build system with a focus on speed.
- Sconsolidator - Scons build system integration for Eclipse CDT.
- Spack - A flexible package manager that supports multiple versions, configurations, platforms, and compilers. [Apache-2.0/MIT]
- waf - Python-based framework for configuring, compiling and installing applications. [BSD] [website](https://waf.io/)
- XMake - A C/C++ cross-platform build utility based on Lua. [Apache]
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- MesonBuild - An open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- MesonBuild - An open source build system meant to be both extremely fast, and, even more importantly, as user friendly as possible.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
- C++ Archive Network - Cross-platform C++ Dependency Manager with a lot of packages available.
-
Static Code Analysis
- CppDepend - Simplifies managing a complex C/C++ code base by analyzing and visualizing code dependencies, by defining design rules, by doing impact analysis, and comparing different versions of the code.
- Infer - A static analyzer for Java, C and Objective-C. [BSD]
- OCLint - A static source code analysis tool to improve quality and reduce defects for C, C++ and Objective-C. - [source](https://github.com/oclint/oclint)
-
API Design
-
Books
- List of Free C or C++ Books
- Free C++ Books - vhf/free-programming-books/C++.
-
Coding Style
-
Videos
-
Websites
- Standard C++ - News, Status & Discussion about Standard C++.
- C++ FAQ - C++ frequently asked questions.
- C++ FQA Lite - C++ frequently questioned answers.
- Guru of the Week - A regular series of C++ programming problems created and written by Herb Sutter.
- C++ Quiz - C++ quiz in which you propose 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.
-
Weblogs
- Coding For Speed - Coding For Speed DOT COM, Less Execution Time.
- Eric Niebler
- Sticky Bits
-
Other Awesome Projects
- awesome-awesomeness - A curated list of awesome awesomeness.
- Awesome C++ - getAwesomeness()'s mirror.
- Awesome C++ - LibHunt's mirror.
- Awesome C
- papers-we-love - Papers from the computer science community to read and discuss.
- awesome-algorithms - A curated list of awesome places to learn and/or practice algorithms.
- awesome-talks - A lot of screencasts, recordings of user group gatherings and conference talks.
- CONTRIBUTING
-
Scripting
Categories
Build Systems
32
Integrated Development Environment
20
Frameworks
9
Math
9
Other Awesome Projects
8
Websites
8
Image Processing
6
Miscellaneous
6
Debug
6
Compression
5
Standard Libraries
5
Cryptography
5
Online Compiler
5
Compiler
4
GUI
4
Game Engine
4
Weblogs
3
Multimedia
3
PDF
3
Networking
3
Coding Style
3
Static Code Analysis
3
Video
3
Audio
3
Inter-process communication
2
Books
2
Logging
2
Internationalization
2
Database
2
Concurrency
2
Scientific Computing
2
Scripting
2
Debugger
2
Web Application Framework
2
Robotics
2
API Design
1
Biology
1
XML
1
Regular Expression
1
Physics
1
Videos
1
Sub Categories
Keywords
java
2
objective-c
2
security
1
secure-storage
1
secure-messenger
1
rust
1
ruby
1
python
1
php
1
owasp
1
javascript
1
ios
1
golang
1
encryption
1
cryptography-library
1
cryptography
1
authentication
1
asymmetric-cryptography
1
vim
1
semantic-engine
1
code-completion
1
code-analysis
1
theory
1
read-papers
1
programming
1
papers
1
meetup
1
computer-science
1
awesome
1
static-code-analysis
1
static-analysis
1
cpp
1
code-quality
1
c
1
symmetric-cryptography
1
swift
1