mirror of
https://github.com/fffaraz/awesome-cpp.git
synced 2024-11-13 11:16:54 -05:00
207 lines
10 KiB
Markdown
207 lines
10 KiB
Markdown
# Awesome C/C++
|
|
A curated list of awesome C/C++ frameworks, libraries, resources, and shiny things. Inspired by awesome-... stuff.
|
|
|
|
- [Awesome C++](#awesome-cpp)
|
|
- [Standard Libraries](#standard-libraries)
|
|
- [Frameworks](#frameworks)
|
|
- [Audio](#audio)
|
|
- [Artificial Intelligence](#artificial-intelligence)
|
|
- [Concurrency](#concurrency)
|
|
- [Containers](#containers)
|
|
- [Cryptography](#cryptography)
|
|
- [Database](#database)
|
|
- [GUI](#gui)
|
|
- [Graphics](#graphics)
|
|
- [Imaging](#imaging)
|
|
- [Internationalization](#internationalization)
|
|
- [JSON](#json)
|
|
- [Logging](#logging)
|
|
- [Machine Learning](#machine-learning)
|
|
- [Mocking](#mocking)
|
|
- [Multimedia](#multimedia)
|
|
- [Networking](#networking)
|
|
- [Serialization](#serialization)
|
|
- [Testing](#testing)
|
|
- [Web Application Framework](#web-application-framework)
|
|
- [XML](#xml)
|
|
- [Etc.](#etc)
|
|
- [Compilers](#compilers)
|
|
- [Software](#software)
|
|
- [Integrated Development Environments](#integrated-development-environments)
|
|
- [Resources](#resources)
|
|
- [C++ Websites](#cpp-websites)
|
|
- [C++ Books](#cpp-books)
|
|
- [C++ Videos](#cpp-videos)
|
|
- [Contributing](#contributing)
|
|
|
|
## Standard Libraries
|
|
|
|
* [C++ Standard Library](http://en.wikipedia.org/wiki/C%2B%2B_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](http://en.wikipedia.org/wiki/Standard_Template_Library) - The Standard Template Library (STL).
|
|
* [C POSIX library](http://en.wikipedia.org/wiki/C_POSIX_library) - A specification of a C standard library for POSIX systems..
|
|
|
|
## Frameworks
|
|
*C++ generic frameworks and libraries.*
|
|
|
|
* [Apache C++ Standard Library](http://stdcxx.apache.org/) - A collection of algorithms, containers, iterators, and other fundamental components.
|
|
* [ASL](http://stlab.adobe.com/) - Adobe Source Libraries provides peer-reviewed and portable C++ source libraries.
|
|
* [Boost](http://www.boost.org/) - A large collection of generic C++ libraries.
|
|
* [BDE](https://github.com/bloomberg/bde) - The BDE Development Environment from Bloomberg L.P.
|
|
* [Cinder](http://libcinder.org/) - A community-developed, free and open source library for professional-quality creative coding in C++.
|
|
* [Cxxomfort](http://ryan.gulix.cl/fossil.cgi/cxxomfort/) - A small, header-only library that backports to C++03 some of the nifty C++11 goodies.
|
|
* [Dlib](http://dlib.net/) - A general purpose cross-platform C++ library designed using contract programming and modern C++ techniques.
|
|
* [ffead-cpp](https://github.com/sumeetchhetri/ffead-cpp) - Framework for Enterprise Application Development.
|
|
* [Folly](https://github.com/facebook/folly) - An open-source C++ library developed and used at Facebook.
|
|
* [JUCE](http://www.juce.com/) - An all-encompassing C++ class library for developing cross-platform software..
|
|
* [LibSourcey](https://github.com/sourcey/libsourcey) - C++11 evented IO for real-time video streaming and high performance networking applications.
|
|
* [LibU](https://github.com/koanlogic/libu) - A multiplatform utility library written in C.
|
|
* [Loki](http://loki-lib.sourceforge.net/) - A C++ library of designs, containing flexible implementations of common design patterns and idioms.
|
|
* [MiLi](https://code.google.com/p/mili/) - Minimal headers-only C++ Library.
|
|
* [openFrameworks](http://www.openframeworks.cc/) - An open source C++ toolkit for creative coding.
|
|
* [Qt](http://qt-project.org/) - A cross-platform application and UI framework.
|
|
* [Reason](http://code.google.com/p/reason/) - A cross platform framework designed to bring the ease of use of Java, .Net, or Python to developers who require the performance and strength of C++.
|
|
* [STXXL](http://stxxl.sourceforge.net/) - Standard Template Library for Extra Large Data Sets.
|
|
* [Ultimate++](http://www.ultimatepp.org/) - A C++ cross-platform rapid application development framework.
|
|
* [Windows Template Library](http://sourceforge.net/projects/wtl/) - A C++ library for developing Windows applications and UI components.
|
|
* [Yomm11](https://github.com/jll63/yomm11) - Open multi-methods for C++11.
|
|
|
|
##Artificial Intelligence
|
|
|
|
* [Evolving Objects](http://eodev.sourceforge.net/) - A template-based, ANSI-C++ evolutionary computation library which helps you to write your own stochastic optimization algorithms insanely fast.
|
|
* [Neu](https://github.com/andrometa/neu) - A C++ 11 framework, collection of programming languages, and multipurpose software system designed for: the creation of artificial intelligence applications.
|
|
|
|
## Concurrency
|
|
|
|
* [Intel TBB](https://www.threadingbuildingblocks.org/) - Intel® Threading Building Blocks.
|
|
* [OpenMP](http://openmp.org/) - The OpenMP API.
|
|
* [Thrust](http://thrust.github.io/) - A parallel algorithms library which resembles the C++ Standard Template Library (STL).
|
|
* [HPX](https://github.com/STEllAR-GROUP/hpx/) - A general purpose C++ runtime system for parallel and distributed applications of any scale.
|
|
|
|
## Containers
|
|
|
|
* [C++ B-tree](https://code.google.com/p/cpp-btree/) - A template library that implements ordered in-memory containers based on a B-tree data structure.
|
|
|
|
## GUI
|
|
*Graphic User Interface*
|
|
|
|
* [GTK+](http://www.gtk.org/) - A multi-platform toolkit for creating graphical user interfaces.
|
|
* [gtkmm](http://www.gtkmm.org/en/) - The official C++ interface for the popular GUI library GTK+.
|
|
* [wxWidgets](http://wxwidgets.org/) - a C++ library that lets developers create applications for Windows, Mac OS X, Linux and other platforms with a single code base.
|
|
* [Qwt](http://qwt.sourceforge.net/) - Qt Widgets for Technical Applications.
|
|
* [QwtPlot3D](http://qwtplot3d.sourceforge.net/) - A feature-rich Qt/OpenGL-based C++ programming library, providing essentially a bunch of 3D-widgets.
|
|
|
|
## Graphics
|
|
|
|
* [Ogre 3D](http://www.ogre3d.org/) - One of the most popular open-source graphics rendering engines.
|
|
|
|
## Internationalization
|
|
|
|
* [IBM ICU](http://site.icu-project.org/) - A set of C/C++ and Java libraries providing Unicode and Globalization support.
|
|
* [gettext](http://www.gnu.org/software/gettext/) - GNU `gettext'.
|
|
|
|
## JSON
|
|
|
|
* [frozen](https://github.com/cesanta/frozen) - JSON parser and generator for C/C++.
|
|
* [picojson](https://github.com/kazuho/picojson) - A header-file-only, JSON parser serializer in C++.
|
|
|
|
## Machine Learning
|
|
|
|
* [OpenCV](http://opencv.org/) - Open Computer Vision.
|
|
* [Recommender](https://github.com/GHamrouni/Recommender) - A C library for product recommendations/suggestions using collaborative filtering (CF).
|
|
* [CCV](https://github.com/liuliu/ccv) - C-based/Cached/Core Computer Vision Library, A Modern Computer Vision Library.
|
|
* [mlpack](http://www.mlpack.org/) - A scalable c++ machine learning library.
|
|
* [sofia-ml](https://code.google.com/p/sofia-ml/) - The suite of fast incremental algorithms for machine learning.
|
|
* [SHOGUN](https://github.com/shogun-toolbox/shogun) - The Shogun Machine Learning Toolbox.
|
|
* [Caffe](https://github.com/BVLC/caffe) - A fast framework for neural networks..
|
|
|
|
## Mocking
|
|
|
|
* [googlemock](http://code.google.com/p/googlemock/) - A library for writing and using C++ mock classes.
|
|
|
|
## Multimedia
|
|
|
|
* [SFML](http://www.sfml-dev.org/index.php) - Simple and Fast Multimedia Library.
|
|
* [SDL](http://www.libsdl.org/) - Simple DirectMedia Layer.
|
|
|
|
## Networking
|
|
|
|
* [ACE](http://www.cs.wustl.edu/~schmidt/ACE.html) - An OO Network Programming Toolkit in C++.
|
|
* [Asio](http://think-async.com/) - A cross-platform C++ library for network and low-level I/O programming.
|
|
* [Casablanca](http://casablanca.codeplex.com/) - C++ REST SDK.
|
|
* [cpp-netlib](http://cpp-netlib.org/) - A collection of open-source libraries for high level network programming.
|
|
* [net_skeleton](https://github.com/cesanta/net_skeleton) - TCP client/server library for C/C++.
|
|
* [POCO](http://pocoproject.org/) - C++ class libraries and frameworks for building network- and internet-based applications that run on desktop, server, mobile and embedded systems.
|
|
|
|
## Serialization
|
|
|
|
* [cereal](https://github.com/USCiLab/cereal) - A C++11 library for serialization.
|
|
* [protobuf](http://code.google.com/p/protobuf/) - Protocol Buffers - Google's data interchange format.
|
|
|
|
## Testing
|
|
|
|
* [CppUnit](http://sourceforge.net/projects/cppunit/) - C++ port of JUnit.
|
|
* [googletest](http://code.google.com/p/googletest/) - Google C++ Testing Framework.
|
|
|
|
## Web Application Framework
|
|
|
|
* [CppCMS](http://cppcms.com/) - A Free High Performance Web Development Framework (not a CMS).
|
|
* [Crow](https://github.com/ipkn/crow) - Crow is C++ micro web framework (inspired by Python Flask).
|
|
* [Wt](http://www.webtoolkit.eu/wt) - A C++ library for developing web applications.
|
|
|
|
## Etc.
|
|
|
|
* [SLDR](https://github.com/cesanta/sldr) - Super Light DNS Resolver.
|
|
* [SLRE](https://github.com/cesanta/slre) - Super Light Regular Expression library.
|
|
|
|
# Compilers
|
|
*List of C/C++ compilers*
|
|
|
|
* [Clang]() - .
|
|
* [GCC]() - .
|
|
* [Intel C++ Compiler]() - .
|
|
* [Microsoft Visual C++]() - .
|
|
|
|
# Software
|
|
*Software for creating a development environment.*
|
|
|
|
## Integrated Development Environments
|
|
*nominal IDEs.*
|
|
|
|
* [Code::Blocks]() - .
|
|
* [Dev-C++]() - .
|
|
* [Eclipse CDT]() - .
|
|
* [KDevelop]() - .
|
|
* [Microsoft Visual Studio]() - .
|
|
* [NetBeans]() - .
|
|
* [Qt Creator]() - .
|
|
* [Xcode]() - .
|
|
|
|
|
|
# Resources
|
|
*Various resources, such as books, websites and articles, for improving your C++ development skills and knowledge.*
|
|
|
|
## C++ Websites
|
|
*Useful C++ related websites.*
|
|
|
|
* [C++ reference](http://cppreference.com/) - C++98, C++03, C++11, C++14 reference.
|
|
|
|
## C++ Books
|
|
*Fantastic C++ related books.*
|
|
|
|
## C++ Articles
|
|
*Fantastic C++ related articles.*
|
|
|
|
* [C++Now 2014 Presentations](https://github.com/boostcon/cppnow_presentations_2014) - Presentation materials presented at C++Now 2014.
|
|
* [C++Now 2013 Presentations](https://github.com/boostcon/cppnow_presentations_2013) - Presentation materials presented at C++Now 2013.
|
|
* [C++Now 2012 Presentations](https://github.com/boostcon/cppnow_presentations_2012) - Presentation materials presented at C++Now 2012.
|
|
|
|
## C++ Videos
|
|
*Fantastic C++ related videos.*
|
|
|
|
## Awesome Things
|
|
*Collection of useful codes*
|
|
|
|
* [C/C++ Awesome Pack](https://github.com/junian/CppAwesomePack) - Contains some awesome c++ codes, packed in one.
|
|
|
|
# Contributing
|
|
Please see [CONTRIBUTING](https://github.com/fffaraz/awesome-cpp/blob/master/CONTRIBUTING.md) for details.
|