C++ Library

Open-source C++ projects categorized as Library

Top 23 C++ Library Projects

  • imgui

    Dear ImGui: Bloat-free Graphical User interface for C++ with minimal dependencies

    Project mention: Seer: A GUI front end to GDB for Linux | news.ycombinator.com | 2024-11-15
  • SaaSHub

    SaaSHub - Software Alternatives and Reviews. SaaSHub helps you find the best software and product alternatives

    SaaSHub logo
  • webview

    Tiny cross-platform webview library for C/C++. Uses WebKit (GTK/Cocoa) and Edge WebView2 (Windows).

    Project mention: webview: Tiny cross-platform webview library for C/C++ | news.ycombinator.com | 2024-05-28
  • Apache Thrift

    Apache Thrift

  • tracy

    Frame profiler

    Project mention: Intentrace: Strace for Everyone | news.ycombinator.com | 2024-11-07

    While it doesn't capture every syscall, you can get pretty far with the (seemingly little known) Endpoint Security Framework: https://developer.apple.com/documentation/endpointsecurity

    I cobbled together a little tool at my previous job that would capture a full trace of all process fork+exec and file opens, which would then present all of these events in the usual tracing UI (like you'd get when view a trace of a single program with Tracy[1] or Perfetto[2]).

    We had a massive monorepo built with bazel and a heap of shell, and it wasn't clear which part of our code base was responsible for generating some mis-generated file. This tool gave me the whole inter-process call stack, complete with arguments and environment variables, letting me quickly find where and how to fix the problem.

    It's such a nice tool to have that it kinda blows my mind that no one has openly published anything like it. By leveraging eBPF on Linux, the same UI could be used on both macOS and Linux. If I had more time and energy, I'd do it myself.

    [1]: https://github.com/wolfpld/tracy

    [2]: https://perfetto.dev/

  • librealsense

    Intelยฎ RealSenseโ„ข SDK

  • td

    Cross-platform library for building Telegram clients

  • cpr

    C++ Requests: Curl for People, a spiritual port of Python Requests.

  • libtorrent

    an efficient feature complete C++ bittorrent implementation

    Project mention: Windows Memory Mapped File IO | news.ycombinator.com | 2024-11-15

    Back in 2022 libtorrent implemented memory mapped IO as part of v2 [1]. Unfortunately, it didn't go so well. Memory usage went through the sky, leading to performance degradation and crashing [2]. The issue is still open in the project to this day, and many programs have stuck with the v1.2 library instead.

    It looks like they are headed to a multi-threaded pread implementation now [3] and someone has created a patch to tweak the current pread fallback from mmap to perform better in the meantime [4].

    [1] - https://www.libtorrent.org/upgrade_to_2.0-ref.html

    [2] - https://github.com/arvidn/libtorrent/issues/6667

    [3] - https://github.com/arvidn/libtorrent/pull/7013

    [4] - https://github.com/qbittorrent/qBittorrent/pull/21300

  • CGal

    The public CGAL repository, see the README below

    Project mention: Cgal: A Powerful Open-Source Computational Geometry Library | news.ycombinator.com | 2024-08-06
  • Clipboard

    ๐Ÿ˜Ž๐Ÿ–๏ธ๐Ÿฌ Your new, ๐™ง๐™ž๐™™๐™ค๐™ฃ๐™ ๐™ช๐™ก๐™ž๐™˜๐™ž๐™ค๐™ช๐™จ๐™ก๐™ฎ smart clipboard manager

  • Arduino-IRremote

    Infrared remote library for Arduino: send and receive infrared signals with multiple protocols

  • harfbuzz

    HarfBuzz text shaping engine

    Project mention: Tim Peters โ€“ Dispelling Information Asymmetry | news.ycombinator.com | 2024-09-30

    >They do have "Developers in Residence" now

    Yes - three of them, out of dozens of core developers, selected by a process I can't discern. Of course, right now the money simply isn't there to compensate everyone appropriately. (But one wonders why the Steering Council apparently suddenly requires a "Communications Liaison".)

    >The sooner we end this era of "the entire world runs on the good will of bored nerds volunteering their time", the better.

    Python is nowhere near the only project with this problem. If you appreciate the fact that your computer can properly display text in non-European languages, consider offering some support to Behdad Esfahbod, main developer of Harfbuzz (https://github.com/harfbuzz/harfbuzz).

    As far as I can tell, Linux and Mozilla are the only two open-source organizations that have any significant revenue behind them. Most are probably even worse off than Python.

  • oneDNN

    oneAPI Deep Neural Network Library (oneDNN)

    Project mention: Exploring biphasic programming: a new approach in language design | news.ycombinator.com | 2024-07-02

    I'm going to hijack the mention of ML to share xbyaku, a c++ library presenting a DSL for assembling machine code at runtime (useful for JIT).

    It's used by some of the pytorch back ends.

    https://github.com/herumi/xbyak

    Example use: https://github.com/oneapi-src/oneDNN/blob/main/src/cpu/aarch...

    I learned about these through a blog post about speeding up pytorch on ARM: https://pytorch.org/blog/optimized-pytorch-w-graviton/

  • rttr

    C++ Reflection Library

  • indicators

    Activity Indicators for Modern C++

  • argparse

    Argument Parser for Modern C++

  • contour

    Modern C++ Terminal Emulator (by christianparpart)

    Project mention: Okay, I Like WezTerm | news.ycombinator.com | 2024-08-12

    I tried WezTerm on Windows because I was looking for a terminal with ligature support and lower input latency than Windows Terminal. Unfortunately, it still had higher input latency than cmd.exe. The only terminal with ligature support that comes close in terms of input latency is contour (https://contour-terminal.org/).

  • etl

    Embedded Template Library

  • plog

    Portable, simple and extensible C++ logging library

    Project mention: C++ Game Utility Libraries: for Game Dev Rustaceans | dev.to | 2024-03-13

    Alternatives are glog from Google is full-featured, like spdlog, while Plog offers a lightweight alternative. Both are worthy upgrades on using C++ built-in std::clog.

  • proxy

    Proxy: Next Generation Polymorphism in C++ (by microsoft)

  • FunctionalPlus

    Functional Programming Library for C++. Write concise and readable C++ code.

  • tabulate

    Table Maker for Modern C++ (by p-ranav)

  • casadi

    CasADi is a symbolic framework for numeric optimization implementing automatic differentiation in forward and reverse modes on sparse matrix-valued computational graphs. It supports self-contained C-code generation and interfaces state-of-the-art codes such as SUNDIALS, IPOPT etc. It can be used from C++, Python or Matlab/Octave.

NOTE: The open source projects on this list are ordered by number of github stars. The number of mentions indicates repo mentiontions in the last 12 Months or since we started tracking (Dec 2020).

C++ Library discussion

Log in or Post with

C++ Library related posts

Index

What are some of the best open-source Library projects in C++? This list will help you:

Project Stars
1 imgui 61,410
2 webview 12,703
3 Apache Thrift 10,414
4 tracy 10,247
5 librealsense 7,630
6 td 7,221
7 cpr 6,610
8 libtorrent 5,272
9 CGal 5,023
10 Clipboard 4,855
11 Arduino-IRremote 4,529
12 harfbuzz 4,165
13 oneDNN 3,638
14 rttr 3,199
15 indicators 3,043
16 argparse 2,715
17 contour 2,460
18 etl 2,255
19 plog 2,225
20 proxy 2,228
21 FunctionalPlus 2,130
22 tabulate 1,952
23 casadi 1,751

Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com

Did you konow that C++ is
the 6th most popular programming language
based on number of metions?