Skip to the content.

:package: Popular libraries and frameworks

C++ has no single “standard” ecosystem like npm in JavaScript or crates.io in Rust, so the set of libraries in use depends heavily on the domain. Even so, there are a few names that show up in job postings and on projects more often than the rest — and those are the ones collected below.

Do not try to learn everything at once. It is far more useful to get really comfortable with one or two libraries from your own field than to know a dozen superficially. The easiest way to pull them in is through the Conan or vcpkg package managers — see Language toolkit.

:compass: This is an overview article and a starting point for navigation, not a complete catalog. The number of libraries that actually exist is orders of magnitude larger, and for any specific task there is almost always something else out there — search within your own problem domain, look at what similar projects use, and check against fresh, up-to-date lists (for example, awesome-cpp). The goal of this list is to give a foothold to those who are just starting out.

:bulb: Development tools (compilers, debuggers, analyzers, testing frameworks) are covered in a separate article — Language toolkit.

:hammer_and_wrench: General purpose

:globe_with_meridians: Networking and data exchange

:framed_picture: Graphical user interface

:bar_chart: Computation, graphics, and machine learning


To main page