C++
Source: https://github.com/fffaraz/awesome-cpp at
e724f64ef0c1
License: MIT
Read the English original
This edition is an AI-assisted translation.
Подборка C++

Заголовок раздела «Подборка C++ »Подборка замечательных фреймворков, библиотек, ресурсов и других полезных материалов для C++ (или C). Вдохновлено другими списками awesome.
- Подборка C++
- Стандартные библиотеки
- Фреймворки
- Искусственный интеллект
- Асинхронный цикл событий
- Аудио
- Биология
- BitTorrent
- Химия
- CLI
- Сжатие
- Параллелизм
- Конфигурация
- Контейнеры
- Криптография
- CSV
- Базы данных
- Визуализация данных
- Отладка
- Документация
- Цифровая обработка сигналов
- Шрифты
- Игровые движки
- Графы
- GUI
- Графика
- Обработка изображений
- Интернационализация
- Межпроцессное взаимодействие
- JSON
- Ведение журналов
- Машинное обучение
- Математика
- Управление памятью
- Мультимедиа
- Сети
- Office Open XML
- Физика
- Рефлексия
- Регулярные выражения
- Робототехника
- Научные вычисления
- Скрипты
- Сериализация
- Последовательный порт
- Сортировка
- Видео
- Виртуальные машины
- Веб-фреймворки
- XML
- YAML
- Разное
- Программное обеспечение
- Ресурсы
- Другие списки Awesome
- Вакансии
- Спонсоры
- Участие в проекте - Если вы заметили, что проект или ссылка больше не поддерживаются либо не подходят для этого списка, отправьте pull request, чтобы улучшить документ. Спасибо!
Стандартные библиотеки
Заголовок раздела «Стандартные библиотеки»Стандартная библиотека C++ — включая контейнеры, алгоритмы, функциональные средства STL и т. д.
- C++ Standard Library - Набор классов и функций, написанных на основном языке и входящих в сам стандарт ISO C++.
- Standard Template Library - Стандартная библиотека шаблонов (STL).
- C POSIX library - Спецификация стандартной библиотеки C для POSIX-систем.
- ISO C++ Standards Committee - ISO/IEC JTC1/SC22/WG21 — комитет по стандарту C++. website
- The GNU C Library - Это руководство рассказывает, как пользоваться средствами библиотеки GNU C.
Фреймворки
Заголовок раздела «Фреймворки»Универсальные фреймворки и библиотеки C++.
- abseil-cpp - Общие библиотеки Abseil для C++. [Apache2]
- Apache C++ Standard Library - STDCXX — набор алгоритмов, контейнеров, итераторов и других базовых компонентов. [retired] [Apache2]
- APR - Переносимая среда выполнения Apache — библиотека кроссплатформенных служебных функций. [Apache2]
- ASL - Adobe Source Libraries — проверенные экспертами и переносимые библиотеки исходного кода C++. [MIT]
- AUI - Декларативный инструментарий для создания пользовательских интерфейсов на C++20. [MPL2]
- Boost :zap: - Большая коллекция универсальных библиотек C++. [Boost] website
- BDE - Среда разработки BDE от Bloomberg Labs. [Apache2]
- C++ Workflow :zap: - Движок параллельных вычислений и асинхронных сетевых взаимодействий на C++. [Apache2]
- CGraph - Кроссплатформенный фреймворк DAG на C++ без сторонних зависимостей. [MIT]
- Cinder - Бесплатная библиотека с открытым исходным кодом, созданная сообществом для профессионального творческого программирования. [BSD]
- Coost - Лёгкая библиотека C++ без зависимостей: корутины в стиле Go, журналирование, конфигурация и другие утилиты. [MIT]
- Cxxomfort - Небольшая библиотека только из заголовочных файлов, переносящая различные возможности новых стандартов C++ в C++03 и более поздние версии. [MIT]
- Dlib :zap: - Инструментарий для создания реальных приложений машинного обучения и анализа данных на C++. [Boost] website
- EASTL - Стандартная библиотека шаблонов Electronic Arts. [BSD]
- ETL - Встроенная библиотека шаблонов. [MIT]
- ffead-cpp - Фреймворк для разработки корпоративных приложений. [Apache2]
- Folly - Библиотека C++ с открытым исходным кодом, разработанная и используемая в Facebook. [Apache2]
- FunctionalPlus - Библиотека функционального программирования для C++. Позволяет писать лаконичный и читаемый код. [MIT]
- GLib - GLib предоставляет базовые строительные блоки для библиотек и приложений на языке C. [LGPL]
- itlib - Коллекция однофайловых библиотек C++, подобных стандартной библиотеке. [MIT]
- JUCE - Всеобъемлющая библиотека классов C++ для разработки кроссплатформенного ПО. [Core-Module: ISC, Rest: GPL2/GPL3/Proprietary] website
- Kigs framework - Бесплатный модульный многоцелевой кроссплатформенный RAD-фреймворк с открытым исходным кодом на C++. [MIT] website
- libPhenom - Фреймворк обработки событий для создания высокопроизводительных и масштабируемых систем на C. [Apache2]
- LibSourcey - Событийный ввод-вывод в C++11 для потокового видео в реальном времени и высокопроизводительных сетевых приложений. [LGPL]
- LibU - Мультиплатформенная служебная библиотека на C. [BSD]
- libxutils - Простая, но мощная кроссплатформенная библиотека C со структурами данных, алгоритмами и многим другим. [MIT]
- Loki - Библиотека C++ с гибкими реализациями распространённых шаблонов проектирования и идиом. [MIT]
- micron.cpp - Полноценная реализация libc и стандартной библиотеки на чистом C++ (с переработанным дизайном). [Boost/MIT]
- MiLi - Минимальная библиотека C++ только из заголовочных файлов. [Boost]
- OpenFrameworks - Кроссплатформенный инструментарий с открытым исходным кодом для творческого программирования на C++. [MIT] website
- PhotonLibOS - Комплексный фреймворк C++ с эффективной пользовательской многопоточностью (корутины с распределением задач), вводом-выводом, сетевыми средствами, RPC, HTTP и др.; широко используется в Alibaba. Совместим с C++14/17/20/23, Linux, macOS, x86-64, ARM64, gcc и clang. [Apache2] website
- Qt :zap: - Кроссплатформенный фреймворк для приложений и пользовательских интерфейсов. [GPL/LGPL/Proprietary] website
- Reason - Кроссплатформенный фреймворк, призванный обеспечить разработчикам, которым нужны производительность и мощь C++, простоту использования Java, .NET или Python. [GPL2]
- ROOT - Набор объектно-ориентированных фреймворков со всеми необходимыми средствами для эффективной обработки и анализа больших объёмов данных. Используется в CERN. [LGPL]
- rpp - Минимальная замена STL для C++20 в духе Rust. [MIT]
- SaneCppLibraries - Набор библиотек абстракции платформ для macOS, Windows и Linux. [MIT] website
- Seastar - Современный фреймворк C++ с открытым исходным кодом для высокопроизводительных серверных приложений на современном оборудовании. [Apache-2.0 License] seastar.io
- sfl library - Библиотека C++11 только из заголовочных файлов с новыми и малоизвестными контейнерами; некоторые из них можно использовать в константных выражениях C++20. [zlib]
- Siv3D - Siv3D (OpenSiv3D) — фреймворк C++20 для творческого программирования: 2D/3D-игр, медиаискусства, визуализации и симуляторов. [MIT] website
- STLport - Образцовая реализация STL. [Free]
- STXXL - Стандартная библиотека шаблонов для очень больших наборов данных. [Boost]
- tbox - Мультиплатформенная библиотека C, похожая на GLib. [Apache2] website
- Ultimate++ - Кроссплатформенный фреймворк быстрой разработки приложений на C++. [BSD]
- Windows Template Library - Библиотека C++ для разработки приложений и компонентов пользовательского интерфейса Windows. [Public]
- WUI - WUI (Window User Interface Library) — кроссплатформенная библиотека для создания графических интерфейсов на C++17 и новее. [Boost]website
- xtd - Современный фреймворк C++20 для создания консольных (CLI), оконных (GUI) приложений и модульных тестов (xUnit) под Windows, macOS, Linux, iOS, Android, FreeBSD и Haiku. [MIT]
- Yomm2 - Быстрые, ортогональные и открытые мультиметоды. Заменяет Yomm11. Yomm11 [Boost]
- YUP! - Современный фреймворк, оптимизированный для аудио в реальном времени и творческого ПО с нативной поддержкой GPU. [ISC]
Искусственный интеллект
Заголовок раздела «Искусственный интеллект»- ANNetGPGPU - Библиотека искусственных нейронных сетей для GPU (CUDA). [LGPL]
- btsk - Начальный набор для создания игровых деревьев поведения. [zlib]
- cpp-mcp - Лёгкий SDK протокола MCP (Model Context Protocol) для C++. [MIT]
- Evolving Objects - Библиотека эволюционных вычислений на шаблонах ANSI C++, помогающая очень быстро создавать собственные алгоритмы стохастической оптимизации. [LGPL]
- fastmcpp - Порт библиотеки fastmcp для Python на C++. [Apache2]
- frugally-deep - Библиотека только из заголовочных файлов для использования моделей Keras в C++. [MIT]
- Genann - Простая библиотека нейронных сетей на C. [zlib]
- MXNet - Лёгкое, переносимое и гибкое распределённое/мобильное глубокое обучение с динамическим планировщиком зависимостей потоков данных, учитывающим мутации; для Python, R, Julia, Scala, Go, JavaScript и других языков. website
- PyTorch - Тензоры и динамические нейронные сети на Python с мощным ускорением на GPU. website
- flashlight - Flashlight — быстрая и гибкая библиотека машинного обучения, полностью написанная на C++. [BSD]
- Recast/Detour - Генератор навигационных сеток и средство поиска пути (3D), преимущественно для игр. [zlib]
- TensorFlow - Библиотека программного обеспечения с открытым исходным кодом для численных вычислений с использованием графов потоков данных. [Apache]
- Txeo - Современная обёртка TensorFlow для C++. [Apache]
- oneDNN - Кроссплатформенная библиотека с открытым исходным кодом для ускорения приложений глубокого обучения. [Apache] website
- CNTK - Microsoft Cognitive Toolkit (CNTK) — инструментарий глубокого обучения с открытым исходным кодом. [Boost]
- tiny-dnn - Фреймворк глубокого обучения для C++11: только заголовочные файлы и без зависимостей. [BSD]
- Veles - Распределённая платформа для быстрой разработки приложений глубокого обучения. [Apache]
- Kaldi - Инструментарий для распознавания речи. [Apache]
Асинхронный цикл событий
Заголовок раздела «Асинхронный цикл событий»- Asio - Кроссплатформенная библиотека C++ для сетевого программирования и низкоуровневого ввода-вывода, предоставляющая разработчикам единообразную асинхронную модель в современном стиле C++. [Boost] website
- Boost.Asio - Кроссплатформенная библиотека C++ для сетевого программирования и низкоуровневого ввода-вывода. [Boost] website
- C++ Actor Framework - Реализация модели акторов на C++ с открытым исходным кодом. [BSD-3-Clause] website
- Ichor - Очередь событий, ориентированная на безопасность потоков и предоставляющая внедрение зависимостей. [MIT]
- libev - Полнофункциональный и высокопроизводительный цикл событий, созданный по образцу libevent, но без его ограничений и ошибок. [BSD and GPL]
- libevent - Библиотека уведомлений о событиях. [BSD]
- libhv - Кроссплатформенная библиотека цикла событий. [BSD]
- libuv - Кроссплатформенный асинхронный ввод-вывод. [BSD]
- promise-cpp - Библиотека только из заголовочных файлов, реализующая стандарт Promise/A+. [Anti-996]
- uvw - Обёртка libuv для C++. [MIT]
- uv-cpp - Простая интерфейсная высокопроизводительная сетевая библиотека на C++11. [MIT]
Библиотеки аудио, звука, музыки и оцифрованной речи.
- Amplitude Audio SDK - Кроссплатформенный аудиодвижок, разработанный с учётом потребностей игр. [Apache-2.0] website
- Aubio - Библиотека для анализа аудио и музыки.[GPL-3.0] website
- AudioFile - Простая библиотека C++ для чтения и записи аудиофайлов. [MIT]
- audioFlux - Библиотека C для анализа аудио и музыки, а также извлечения признаков. [MIT]
- dr_libs - Библиотеки декодирования аудио для C и C++ в одном файле. [Unlicense]
- FMOD - Простой в использовании кроссплатформенный аудиодвижок и инструмент создания аудиоконтента для игр. [Free for non-commercial/Commercial]
- KFR - Быстрый современный DSP-фреймворк C++: БПФ, фильтры КИХ/БИХ, преобразование частоты дискретизации. [GPL/Proprietary]
- LAME - LAME — высококачественный кодировщик MPEG Audio Layer III (MP3). [LGPL]
- libsndfile - Библиотека C с обёрткой C++ для чтения и записи файлов с дискретизированным звуком через единый стандартный интерфейс. [LGPL-2.1] website
- libsoundio - Кроссплатформенная библиотека C для ввода и вывода аудио в реальном времени. [MIT] website
- Maximilian - Библиотека цифровой обработки аудио и музыки на C++. [MIT]
- OpenAL - Open Audio Library — кроссплатформенный аудиоинтерфейс. [BSD/LGPL/Proprietary]
- miniaudio - Библиотека воспроизведения и захвата аудио в одном файле. [Unlicense] website
- ni-media - Библиотека C++ для чтения и записи аудиофайлов. [MIT]
- Opus - Полностью открытый, свободный от лицензионных отчислений и универсальный аудиокодек. [BSD]
- PortAudio - Бесплатная кроссплатформенная библиотека аудиоввода-вывода с открытым исходным кодом. [MIT]
- rnnoise - Рекуррентная нейронная сеть для шумоподавления аудио. [BSD-3-Clause]
- SELA - Простое сжатие аудио без потерь. [MIT]
- SoLoud - Простой переносимый аудиодвижок для игр. [zlib]
- Speex - Бесплатный кодек речи. Устарел и заменён Opus. [BSD]
- Tonic - Простой и эффективный синтез аудио на C++. [Unlicense]
- Vorbis - Ogg Vorbis — полностью открытый, непатентованный формат сжатого аудио общего назначения, свободный от лицензионных отчислений. [BSD]
- minimp3 - Декодер MP3 только из заголовочных файлов, находящийся в общественном достоянии и созданный методом независимой чистой реализации. [CC0]
- Verovio - Verovio — быстрая и лёгкая библиотека гравировки нотной записи. [LGPL] website
- Wav2Letter++ - Быстрый инструментарий обработки речи с открытым исходным кодом, полностью написанный на C++; использует тензорную библиотеку ArrayFire и библиотеку машинного обучения flashlight для максимальной эффективности. [BSD]
- PocketSphinx - Лёгкий движок распознавания речи. [BSD-2-Clause] website
Биология
Заголовок раздела «Биология»Биоинформатика, геномика и биотехнологии.
- BioC++ - Вычислительные библиотеки C++ для биоинформатики. [BSD]
- Chaste - Библиотека C++ с открытым исходным кодом для вычислительного моделирования математических моделей физиологии и биологии. [BSD]
- libsequence - Библиотека C++ для представления и анализа данных популяционной генетики. [GPL]
- SeqAn - Алгоритмы и структуры данных для анализа последовательностей с акцентом на биологические данные. [BSD/3-clause]
- Vcflib - Библиотека C++ для разбора и обработки файлов VCF. [MIT]
- Wham - Поиск структурных вариантов (SV) в геномах путём непосредственного применения ассоциативных тестов к файлам BAM. [MIT]
- htslib - Библиотека C для чтения и записи данных высокопроизводительного секвенирования. [MIT/BSD] website
BitTorrent
Заголовок раздела «BitTorrent»- jech/dht - Библиотека BitTorrent DHT на C. [MIT]
- libtorrent (a.k.a. libtorrent-rasterbar) - Эффективная и полнофункциональная реализация BitTorrent на C++. [BSD]
- LibTorrent (a.k.a. libtorrent-rakshasa) - Библиотека BitTorrent. [GPL]
- libutp - Библиотека протокола передачи uTorrent. [MIT]
Химия, квантовая химия, химия и физика твёрдого тела, геохимия и биохимия.
- d-SEAMS - Движок анализа траекторий молекулярной динамики на C++ и Lua с Nix. Название — сокращение от Deferred Structural Elucidation Analysis for Molecular Simulations. [GPL] website
- gromacs - Параллельная реализация молекулярной динамики с передачей сообщений. [GPL] website
- Reaktoro - Вычислительный фреймворк на C++ и Python для моделирования химически реагирующих систем. [LGPL] website
- LAMMPS - Классический код молекулярной динамики, ориентированный на моделирование материалов. Название — сокращение от Large-scale Atomic/Molecular Massively Parallel Simulator. [GPL] website
- MADNESS - Многомасштабная адаптивная численная среда для научного моделирования. [GPL] website
- MPQC - Программа массово-параллельной квантовой химии MPQC вычисляет свойства атомов и молекул из первых принципов, используя не зависящее от времени уравнение Шрёдингера. [GPL] website
- Psi - Пакет вычислительной химии из первых принципов. [GPL] website
Командная строка
Заголовок раздела «Командная строка»Консольный/терминальный интерфейс, интерфейс командной строки.
- Argh! - Минималистичный обработчик аргументов без лишних сложностей, только из заголовочных файлов. [BSD]
- argparse - Разбор аргументов для современного C++. [MIT]
- args - Простая библиотека C++ для разбора аргументов, только из заголовочного файла. [MIT]
- Argy - Библиотека разбора аргументов командной строки для современного C++ — простая, понятная, только из заголовочного файла и без зависимостей. [MIT]
- barkeep - Небольшой заголовочный файл C++ для отображения асинхронных анимаций, счётчиков и индикаторов выполнения. [Apache-2.0] website
- Boost.Program_options - Библиотека для получения параметров программы стандартными способами, например из командной строки и файла конфигурации. [Boost] website
- cli - Кроссплатформенная библиотека C++14 только из заголовочных файлов для интерактивных интерфейсов командной строки (в стиле Cisco). [Boost]
- CLI11 - Библиотека C++11 в одном или нескольких файлах, только из заголовочных файлов, для простого и расширенного разбора CLI. [BSD]
- clipp - Удобный, мощный и выразительный обработчик аргументов командной строки для C++11/14/17 в одном заголовочном файле. [MIT]
- cpp-terminal - Небольшая библиотека C++ только из заголовочных файлов для создания мультиплатформенных терминальных приложений. [MIT]
- Crossline - Небольшая автономная кроссплатформенная замена readline и libedit без настройки, под лицензией MIT. [MIT]
- Ctrl+C - Кроссплатформенная библиотека C++11 для обработки события Ctrl+C в пользовательских функциях. [MIT]
- cxxopts - Лёгкий анализатор параметров командной строки для C++. [MIT]
- docopt.cpp - Библиотека для создания анализатора параметров на основе строки документации. [MIT/Boost]
- FINAL CUT - Библиотека для создания терминальных приложений с текстовыми виджетами. [LGPL]
- FTXUI - Функциональный терминальный пользовательский интерфейс на C++. [MIT]
- gflags - Модуль флагов командной строки для C++. [BSD]
- imtui - Текстовый пользовательский интерфейс в стиле Immediate Mode. [MIT]
- indicators - Индикаторы активности для современного C++. [MIT]
- linenoise - Небольшая автономная альтернатива readline и libedit. [BSD-2-Clause]
- linenoise-ng - Небольшая переносимая замена GNU readline для Linux, Windows и macOS с поддержкой символов UTF-8. [BSD]
- Lyra - Простой и компонуемый анализатор командной строки для C++11 и новее. [Boost]
- Ncurses - Терминальный пользовательский интерфейс. [MIT]
- FINAL CUT - Терминальный пользовательский интерфейс и современная замена Ncurses. [LGPLv3+]
- oof - Удобное высокопроизводительное управление цветом RGB и позицией при выводе в консоль. [MIT]
- PDCurses - Библиотека curses из общественного достояния; доступны исходный код и предварительно собранная библиотека. [PublicDomain]
- popl - Парсер аргументов командной строки и INI-файлов для C++11 и новее, шаблонный и в одном заголовочном файле. [MIT]
- replxx - Замена readline и libedit с поддержкой UTF-8, подсветки синтаксиса и подсказок; работает в Unix и Windows. [BSD]
- tabulate - Создание таблиц для современного C++. [MIT]
- TCLAP - Зрелая, стабильная и многофункциональная библиотека для определения аргументов командной строки и доступа к ним в ANSI C++. [MIT]
- termbox - Библиотека C для создания текстовых пользовательских интерфейсов. [MIT]
- TermOx - Библиотека терминального пользовательского интерфейса (TUI) для C++17. [MIT]
- tuibox - Библиотека TUI для терминала в одном заголовочном файле, позволяющая создавать интерактивные приложения командной строки с управлением мышью. [MIT]
- Ginseng - Парсер аргументов командной строки для C++. [MIT]
Библиотеки сжатия и архивирования.
- bit7z - Статическая библиотека C++, предоставляющая простой и понятный интерфейс к динамическим библиотекам 7-Zip. [MPL2]
- Brotli - Формат сжатия Brotli, разработанный Google. [MIT]
- bzip2 - Свободно доступный высококачественный компрессор данных, не обременённый патентами. [BSD]
- bzip3 - Улучшенный и более мощный идейный преемник BZip2. [LGPL]
- FastLZ - Компактное и переносимое сжатие LZ77 с выравниванием по байтам. [MIT]
- FiniteStateEntropy - Кодеки энтропийного кодирования нового поколения: Finite State Entropy и Huff0.
- FSST - Эффективное сжатие строк с произвольным доступом. [MIT]
- heatshrink - Библиотека сжатия данных для встраиваемых систем и систем реального времени. [ISC]
- Kanzi - Современный модульный, переносимый и эффективный компрессор данных без потерь на C++. [Apache-2.0]
- KArchive - Библиотека для создания, чтения, записи и обработки архивов, например ZIP и TAR. Также обеспечивает прозрачное сжатие и распаковку данных в форматах вроде gzip через подкласс QIODevice. [LGPL]
- libarchive - Библиотека архивирования и сжатия с поддержкой множества форматов. [New BSD] website
- LZ4 - Чрезвычайно быстрый алгоритм сжатия. [BSD] website
- LZAV - Быстрый алгоритм сжатия данных в памяти. [MIT]
- LZFSE - Библиотека сжатия LZFSE и инструмент командной строки, разработанные Apple.
- LZHAM - Библиотека сжатия данных без потерь с коэффициентом сжатия, близким к LZMA, но со значительно более быстрой распаковкой. [BSD]
- LZMA :zap: - Стандартный универсальный метод сжатия формата 7z. [PublicDomain] website
- LZMAT - Чрезвычайно быстрая библиотека сжатия данных без потерь в реальном времени. [GPL]
- miniz - Библиотека сжатия Deflate/Inflate в одном исходном файле C с совместимым с zlib API, чтением и записью ZIP-архивов и записью PNG. [MIT]
- Minizip - Zlib с последними исправлениями ошибок, поддерживающая разбиение архивов PKWARE на тома, шифрование AES и буферизацию ввода-вывода. [zlib]
- minizip-ng - Форк популярной библиотеки для работы с ZIP-архивами из дистрибутива zlib. [zlib]
- misa77 - Невероятно быстрая распаковка при хорошем коэффициенте сжатия. [MIT]
- OpenZL - Новый фреймворк сжатия данных. [BSD] website
- PhysicsFS - Библиотека для абстрактного доступа к различным архивам. Предназначена для видеоигр; её архитектура частично вдохновлена файловой подсистемой Quake 3. [zlib]
- Rapidgzip - Распаковка Gzip и произвольный доступ для современных многоядерных компьютеров. [Apache-2/MIT]
- smaz - Библиотека сжатия коротких строк. [BSD]
- Snappy - Быстрый компрессор/декомпрессор. [BSD]
- ZLib - Очень компактная библиотека сжатия потоков данных. [zlib]
- zlib-ng - Zlib для систем «следующего поколения». Полноценная замена с серьёзными оптимизациями. [zlib]
- zstd - Zstandard — быстрый алгоритм сжатия в реальном времени, разработанный Facebook. [BSD]
- ZXC - Высокопроизводительное асимметричное сжатие без потерь. [BSD-3-Clause]
- ZZIPlib - Обеспечивает доступ на чтение к ZIP-архивам. [MPL/LGPL]
- cmix - Программа сжатия данных без потерь, нацеленная на максимальный коэффициент сжатия в ущерб скорости. [GPL-3.0]
- LZSSE-SIMDe - Переносимая SIMD-реализация сжатия LZSSE. [BSD-2-Clause]
- Zopfli - Библиотека сжатия с очень эффективным, но медленным сжатием Deflate/zlib. [Apache-2.0]
Параллелизм
Заголовок раздела «Параллелизм»Параллелизм и многопоточность.
- alpaka - Библиотека абстракции для ускорения параллельных ядер. [LGPLv3+]
- ArrayFire - Универсальная библиотека для GPU. [BSD]
- Async++ - Лёгкий фреймворк параллелизма для C++11, вдохновлённый библиотекой Microsoft PPL и предложением к стандарту C++ N3428. [MIT]
- atomic_queue - Очереди без блокировок с несколькими производителями и потребителями для C++14, основанные на кольцевых буферах и std::atomic. [MIT]
- Boost.Compute - Библиотека вычислений на GPU для C++ и OpenCL. [Boost] website
- Bolt - Библиотека шаблонов C++, оптимизированная для GPU. [Apache2]
- BS::thread_pool - Быстрая, лёгкая и простая в использовании библиотека пула потоков C++17. [MIT]
- Channel - Потокобезопасный контейнер для обмена данными между потоками. [MIT]
- ck - Примитивы параллелизма, безопасные механизмы освобождения памяти и неблокирующие структуры данных. [BSD]
- concurrentqueue - Быстрая конкурентная очередь C++11 без блокировок, с несколькими производителями и потребителями. [BSD,Boost]
- Coros - Простая и быстрая библиотека параллелизма на основе задач с использованием корутин. [BSL-1.0]
- CUB - CUB предоставляет современные повторно используемые программные компоненты для всех уровней программирования на CUDA. [New BSD]
- cuda-api-wrappers - Лёгкие обёртки современного C++ для среды выполнения API программирования GPU CUDA. [BSD]
- cupla - API C++ для запуска CUDA/C++ через OpenMP, Threads, TBB и другие технологии посредством Alpaka. [LGPLv3+]
- C++React - Библиотека реактивного программирования для C++11. [Boost]
- dispenso - Высокопроизводительная библиотека C++ для параллельного программирования с пулами потоков, параллельными циклами for, future, графами задач и конкурентными контейнерами. [MIT]
- FiberTaskingLib - Библиотека многопоточности на основе задач, поддерживающая графы задач с произвольными зависимостями. [Apache]
- HPX - Универсальная среда выполнения C++ для параллельных и распределённых приложений любого масштаба. [Boost]
- Intel Games Task Scheduler - Фреймворк планирования задач, разработанный с учётом потребностей создателей игр. [MIT]
- Intel Parallel STL - Реализация Intel® STL для C++17, работающая с C++11 и новее. [Apache2]
- Intel TBB - Intel® Threading Building Blocks. [Apache2]
- junction - Библиотека конкурентных структур данных на C++. [BSD]
- Kokkos - Переносимая высокопроизводительная модель программирования для параллельного выполнения и абстракции памяти. [BSD]
- libcds - Библиотека конкурентных структур данных для C++. [BSD]
- Libclsph - Библиотека симуляции SPH-жидкости с ускорением на GPU на базе OpenCL. [MIT]
- libdill - Добавляет структурированный параллелизм в C (корутины). [MIT]
- libdispatch - Grand Central Dispatch (GCD), разработанная Apple Inc., — технология параллельного выполнения задач на основе шаблона пула потоков. libdispatch — библиотека, реализующая службы GCD. [Apache-2.0] website
- libfork - Современная библиотека задач без блокировок и ожидания, с захватом продолжений, основанная на корутинах C++20. [MPL-2.0] website
- libmill - Добавляет параллелизм в стиле Go в C. [MIT]
- marl - Marl — гибридный планировщик задач на потоках и волокнах, написанный на C++11. [Apache-2.0]
- moderngpu - Библиотека повышения продуктивности для вычислений общего назначения на GPU. Написана на C++ для CUDA и использует только заголовочные файлы. Её особенность — ускоренные примитивы для решения задач с нерегулярным параллелизмом. [FreeBSD & Copyright, Sean Baxter]
- NCCL - Оптимизированные примитивы для коллективного взаимодействия нескольких GPU. [BSD]
- Neco - Библиотека параллелизма для C (корутины). [MIT]
- OpenCL - Открытый стандарт параллельного программирования гетерогенных систем.
- OpenMP - API OpenMP.
- rotor - Мини-фреймворк акторов на C++, ориентированный на цикл событий. [MIT]
- SObjectizer - Реализация моделей Actor, Publish-Subscribe и CSP в одном достаточно компактном фреймворке C++. [BSD-3-Clause]
- Quantum - Мощный фреймворк-диспетчер корутин C++, построенный на базе Boost.Coroutine2.
- RaftLib - Библиотека C++ для конкурентной потоковой обработки и потоков данных с помощью операторов, похожих на операторы iostream. [Apache2]
- readerwriterqueue - Быстрая очередь C++ без блокировок с одним производителем и одним потребителем. [BSD]
- stdgpu - Эффективные структуры данных в стиле STL на GPU. [Apache2]
- Taskflow - Универсальная система программирования задач для параллельных и гетерогенных вычислений. (Переименована из Cpp-Taskflow.) [MIT]
- ThreadPool - Простая реализация пула потоков для C++11. [zlib]
- Thrust - Библиотека параллельных алгоритмов, похожая на стандартную библиотеку шаблонов C++ (STL). [Apache2]
- TooManyCooks - Высокопроизводительный фреймворк корутин C++20 с расширенными возможностями обнаружения аппаратных ресурсов. [BSL-1.0]
- transwarp - Библиотека C++ только из заголовочных файлов для конкурентного выполнения задач. [MIT]
- VexCL - Библиотека шаблонов векторных выражений C++ для OpenCL/CUDA. [MIT]
- STAPL - Фреймворк параллельного программирования на C++, предназначенный для параллельных компьютеров как с общей, так и с распределённой памятью. [BSD]
- concurrencpp - Универсальная библиотека параллелизма с задачами, исполнителями, таймерами и корутинами C++20.
- libcu++ - Стандартная библиотека C++ от NVIDIA с гетерогенной реализацией возможностей стандартной библиотеки C++. [Apache-2.0]
- nvthreads - Библиотека для эффективной и постоянной многопоточности в C/C++. [LGPL-2.1]
Конфигурация
Заголовок раздела «Конфигурация»Файлы конфигурации, файлы INI.
- inifile-cpp - Простой в использовании парсер INI-файлов для C++, только из заголовочных файлов. [MIT]
- inih - Простой парсер INI-файлов на C, подходящий для встраиваемых систем. [BSD-3-Clause]
- inih - Версия inih на C++ только из одного заголовочного файла. [BSD-3-Clause]
- ini-cpp - Версия на C++ только из одного заголовочного файла с удобным интерфейсом чтения и записи, расширяющая inih. [BSD-3-Clause] website
- iniparser - Парсер INI-файлов. [MIT]
- inipp - Простой парсер и генератор INI-файлов на C++, только из заголовочного файла. [MIT]
- libconfig - Библиотека C и C++ для обработки структурированных файлов конфигурации. [LGPL-2.1] website
- libconfuse - Небольшая библиотека C для разбора файлов конфигурации. [ISC]
- mINI - Средство чтения и записи INI-файлов. [MIT]
- simpleini - Кроссплатформенная библиотека C++ с простым API для чтения и записи файлов конфигурации в стиле INI. [MIT]
- toml++ - Парсер и сериализатор TOML для C++17 и новее, только из заголовочного файла. [MIT] website
- toml11 - Парсер/кодировщик TOML для C++11 и новее, только из заголовочного файла и зависящий только от стандартной библиотеки C++. [MIT]
Контейнеры
Заголовок раздела «Контейнеры»- CRoaring - Роаринговые битовые карты на C (и C++) с оптимизациями SIMD. [Apache-2.0]
- dynamic_bitset - Простые полезные библиотеки: динамический битсет для C++17/20, только из заголовочных файлов. [MIT] website
- fixed-containers - Библиотека C++20 только из заголовочных файлов, предоставляющая контейнеры фиксированной ёмкости, вычисляемые на этапе компиляции. [MIT]
- flat_hash_map - Очень быстрая плоская хеш-таблица с хешированием Фибоначчи.
- frozen - Альтернатива gperf для C++14: только заголовочный файл и constexpr. [Apache-2.0]
- Hashmaps - Реализация алгоритмов хеш-таблиц с открытой адресацией на C++. [MIT]
- hat-trie - Реализация быстрой и компактной по памяти HAT-боровки на C++. [MIT]
- Hopscotch map - Быстрая хеш-таблица только из заголовочного файла с разрешением коллизий методом hopscotch hashing. [MIT]
- librb - Реализация кольцевого буфера на C с полной поддержкой потокобезопасной конкурентной записи и чтения и автоматическим увеличением размера при необходимости. [BSD] website
- LSHBOX - Набор инструментов C++ для локально-чувствительного хеширования (LSH): содержит несколько популярных алгоритмов LSH и поддерживает Python и MATLAB. [GPL]
- marisa-trie - Алгоритм сопоставления с рекурсивно реализованным хранилищем. [BSD-2-Clause/LGPL-2.1]
- parallel-hashmap - Семейство очень быстрых и экономных по памяти хеш-карт и контейнеров B-деревьев, только из заголовочных файлов. [Apache2] website
- PGM-index - Структура данных для быстрого поиска, поиска предшественника, диапазонов и обновления массивов с миллиардами элементов, использующая на порядки меньше места, чем традиционные индексы. [Apache2] website
- plf::colony - Неупорядоченный контейнер типа «мешок», превосходящий стандартные контейнеры при частых изменениях и сохраняющий постоянные указатели на неудалённые элементы независимо от вставок и удалений. [zLib] website
- plf::list - Реализация std::list без слияния диапазонов, что улучшает локальность кэша и значительно повышает производительность. [zLib] website
- plf::stack - Контейнер на замену адаптеру std::stack, превосходящий по производительности все стандартные контейнеры при использовании в качестве стека. [zLib] website
- ring_span lite - Упрощённая реализация ring_span Артура О’Двайера, то есть представление кольцевого буфера. [MIT]
- robin-hood-hashing - Быстрая и экономичная по памяти хеш-таблица для C++14 на основе robin hood hashing. [MIT]
- robin-map - Быстрые хеш-карта и хеш-множество с robin hood hashing. [MIT]
- sparsepp - Быстрая и экономичная по памяти хеш-карта для C++. [BSD 3-clause]
- sqlitemap - Постоянно хранимая карта на базе SQLite. [MIT]
- st_tree - Быстрый и гибкий шаблонный класс C++ для древовидных структур данных. [Apache-2.0]
- svector - Компактный вектор с оптимизацией SVO для C++17 и новее. [MIT]
- tree.hh - Библиотека деревьев C++ только из заголовочного файла, в стиле STL. [GPL2+]
- unordered_dense - Быстрая плотно размещённая хеш-карта и хеш-множество с удалением сдвигом назад на основе robin hood hashing. [MIT]
- fifo_map - Ассоциативный контейнер C++ с порядком FIFO. [MIT]
- ordered-map - Хеш-карта и хеш-множество C++, сохраняющие порядок вставки. [MIT]
Криптография
Заголовок раздела «Криптография»Библиотеки криптографии и шифрования.
- Bcrypt - Кроссплатформенная утилита для шифрования файлов. Зашифрованные файлы переносимы между всеми поддерживаемыми операционными системами и процессорами. [BSD]
- BeeCrypt - Переносимая и быстрая криптографическая библиотека. [LGPLv2.1+]
- BoringSSL - Форк OpenSSL, разработанный с учётом потребностей Google. [Apache2]
- Botan - Криптографическая библиотека для C++. [BSD-2]
- Crypto++ - Бесплатная библиотека классов C++ с реализациями криптографических схем. [Boost] website
- digestpp - Библиотека хеширования (дайджестов) для C++11, только из заголовочных файлов. [PublicDomain]
- GnuPG - Полная и свободная реализация стандарта OpenPGP. [GPL]
- GnuTLS - Библиотека защищённого взаимодействия с реализацией протоколов SSL, TLS и DTLS. [LGPL2.1]
- Libgcrypt - Криптографическая библиотека общего назначения, изначально основанная на коде GnuPG. [LGPLv2.1+]
- LibreSSL - Свободная реализация протокола SSL/TLS, ответвившаяся от OpenSSL в 2014 году. [?]
- libsodium - Криптографическая библиотека на основе NaCl, переносимая/упаковываемая, с чётким мнением авторов и простая в использовании. [ISC]
- libhydrogen - Лёгкая, безопасная и простая в использовании криптографическая библиотека для сред с ограниченными ресурсами. [ISC]
- LibTomCrypt - Достаточно полный, модульный и переносимый набор криптографических инструментов. [WTFPL]
- mbedTLS - Библиотека SSL с открытым исходным кодом: переносимая, простая в использовании, читаемая и гибкая; ранее называлась PolarSSL. [Apache2] website
- Nettle - Криптографическая библиотека низкого уровня. [LGPL]
- OpenSSL - Надёжная криптографическая библиотека промышленного класса с широкими возможностями и открытым исходным кодом. [Apache] website
- retter - Коллекция хеш-функций, шифров, инструментов, библиотек и материалов по криптографии.
- s2n - Реализация протоколов TLS/SSL. [Apache]
- sha1collisiondetection - Библиотека и инструмент командной строки для обнаружения коллизий SHA-1 в файле. [MIT]
- stduuid - Кроссплатформенная реализация UUID для C++17. [MIT]
- Tink - Многоязыковая кроссплатформенная библиотека с криптографическими API, которые безопасны, просты в правильном использовании и сложны для неправильного. [Apache-2.0]
- Tiny AES in C - Компактная переносимая реализация AES-128/192/256 на C. [PublicDomain]
- tiny-ECDH-c - Компактная переносимая реализация протокола согласования ключей ECDH на C. [PublicDomain]
- Themis - Криптографическая библиотека для простой защиты данных: симметричное и асимметричное шифрование, защищённые сокеты с прямой секретностью для мобильных и серверных платформ. [Apache2]
- HEhub - Библиотека гомоморфного шифрования и его приложений. [Apache2]
- Qt-Secret - Простая библиотека шифрования на базе Qt для проектов C++. [LGPL]
- micro-ecc - Компактная и быстрая реализация ECDH и ECDSA для 8-, 32- и 64-разрядных процессоров. [BSD-2-Clause]
- crypto-algorithms - Базовые реализации стандартных криптографических алгоритмов (AES, SHA и др.) на C. [PublicDomain]
- aes-stream - Быстрый потоковый шифр для C на основе AES. [ISC]
Библиотеки для разбора файлов CSV (значения, разделённые запятыми).
- commata - Ещё один парсер CSV для C++17, только из заголовочного файла. [Unlicense]
- csv2 - Быстрый парсер CSV для современного C++. [MIT]
- Csv::Parser - Парсер CSV для C++17, работающий на этапе компиляции и во время выполнения. [Zlib]
- Fast C++ CSV Parser - Небольшая, простая в использовании и быстрая библиотека только из заголовочных файлов для чтения файлов CSV. [BSD-3-Clause]
- Glaze - Высокопроизводительная библиотека CSV только из заголовочного файла с поддержкой рефлексии. [MIT]
- lazycsv - Быстрый, лёгкий парсер CSV для современного C++ в одном заголовочном файле. [MIT]
- rapidcsv - Простая в использовании библиотека C++ для разбора CSV, только из заголовочного файла. [BSD-3-Clause]
- ssp - Парсер «CSV» только из заголовочного файла: быстрый, универсальный, с современным API C++. [MIT]
- Vince’s CSV Parser - Быстрый автономный потоковый парсер CSV для C++17 с необязательным преобразованием типов и вычислением статистики. [MIT]
- zsv - Самый быстрый в мире (SIMD) парсер CSV с расширяемым интерфейсом командной строки. [MIT]
Базы данных
Заголовок раздела «Базы данных»Библиотеки баз данных, серверы SQL, драйверы ODBC и инструменты.
- ClickHouse - Клиент C++ для СУБД ClickHouse. [Apache2]
- CrossDB - Сверхпроизводительная лёгкая встраиваемая и серверная реляционная СУБД OLTP. [MPL-2.0] website
- Doltlite - SQLite с контролем версий. [PublicDomain/Apache2]
- DuckDB - Встроенная в процесс СУБД SQL OLAP. [MIT] website
- hiberlite - Объектно-реляционное отображение C++ для sqlite3. [BSD]
- Hiredis - Минималистичная клиентская библиотека C для базы данных Redis. [BSD]
- Infinity - База данных с нативной поддержкой ИИ для приложений на основе LLM, обеспечивающая невероятно быстрый векторный и полнотекстовый поиск. [Apache2]
- Kuzu - Встраиваемая СУБД графов свойств, созданная для скорости запросов и масштабируемости. Реализует Cypher. [MIT]
- Kvrocks - Распределённая NoSQL-база данных «ключ—значение», использующая RocksDB как движок хранения и совместимая с протоколом Redis. [Apache2]
- Ladybug - Встраиваемая графовая база данных, созданная для высокой скорости запросов и масштабируемости. [MIT] website
- LevelDB - Быстрая библиотека хранения «ключ—значение», разработанная в Google и предоставляющая упорядоченное соответствие строковых ключей строковым значениям. [BSD]
- libpg_query - Библиотека C для доступа к парсеру PostgreSQL вне серверной среды. [BSD-3-Clause]
- libpqxx - Официальный клиентский API C++ для PostgreSQL. [BSD-3-Clause]
- LMDB - Очень быстрое встраиваемое хранилище «ключ—значение» с полной семантикой ACID. [OpenLDAP]
- LMDB++ - Обёртка C++11 для встраиваемой базы данных LMDB. [PublicDomain]
- mgclient - Клиент Memgraph для C/C++. [Apache2]
- MongoDB C Driver - Клиентская библиотека MongoDB для C. [Apache2]
- MongoDB C++ Driver - Драйвер MongoDB для C++. [Apache2]
- MongoDB Libbson - Служебная библиотека BSON. [Apache2]
- MySQL++ - Обёртка C++ для API MySQL на языке C. [LGPL]
- nanodbc - Небольшая обёртка C++ для нативного API ODBC на C. [MIT]
- ODB - Система ORM для C++ с открытым исходным кодом, кроссплатформенная и работающая с различными базами данных. [GPLv2]
- redis3m - Обёртка hiredis с чистым интерфейсом C++, поддержкой Sentinel и готовых шаблонов использования. [Apache2]
- Reindexer - Встраиваемая база данных в памяти, ориентированная на документы и предоставляющая высокоуровневый интерфейс построения запросов. [Apache2] website
- RocksDB - Встраиваемое хранилище «ключ—значение» для быстрого хранения данных от Facebook. [BSD]
- SimDB - Высокопроизводительное кроссплатформенное хранилище «ключ—значение» C++11: в общей памяти, без блокировок, в одном файле и с минимумом зависимостей. [Apache2]
- SlothDB - Встраиваемая база данных SQL, работающая повсюду: на ноутбуке, сервере и в браузере. [MIT] website
- SOCI - Уровень абстракции баз данных для C++. [Boost]
- Speedb - Разрабатываемое сообществом высокопроизводительное масштабируемое встраиваемое хранилище «ключ—значение», совместимое с RocksDB. [Apache2]
- sqlgen - ORM на основе рефлексии и генератор SQL-запросов для C++20, похожий на SQLAlchemy/SQLModel для Python или Diesel для Rust. [MIT]
- SQLite - Полнофункциональная полностью встраиваемая реляционная база данных размером всего в несколько сотен килобайт, которую можно включить прямо в проект. [PublicDomain]
- SQLiteC++ - SQLiteC++ (SQLiteCpp) — удобная и простая в использовании обёртка C++ для SQLite3. [MIT]
- sqlite_modern_cpp - Обёртка библиотеки SQLite для C++14, только из заголовочного файла. [MIT]
- sqlite_orm - Лёгкая ORM-библиотека SQLite для современного C++, только из заголовочного файла. [AGPL + paid MIT]
- sqlpp11 - Встроенный предметно-ориентированный язык с проверкой типов для SQL-запросов и результатов в C++. [BSD-2-Clause]
- sqlpp23 - Типобезопасная библиотека SQL для C++. [BSD-2-Clause]
- TidesDB - Высокопроизводительный отказоустойчивый встраиваемый движок транзакционного хранения, оптимизированный для флеш-памяти и ОЗУ. [MPL-2.0] website
- TileDB - Быстрая СУБД для плотных и разреженных многомерных массивов. [MIT] website
- TinyORM - Современная библиотека ORM для C++. [MIT] website
- UnQLite - Автономный транзакционный движок NoSQL без сервера и настройки. [BSD-2-Clause] website
- upscaledb - Встраиваемое типизированное хранилище «ключ—значение» со встроенным интерфейсом запросов. [GPLv3]
- TigerBeetleDB C++ client (Community) - TigerBeetle — база данных финансового учёта, созданная для критически важных систем, где безопасность и производительность необходимы для будущего финансовых услуг. [BSL-1.0]
- Trilogy - Клиентская библиотека для серверов баз данных, совместимых с MySQL; рассчитана на производительность, гибкость и простоту встраивания. [MIT]
- UStore - Мультимодальная база данных для BLOB, JSON и графов. [Apache2]
- Velox - Библиотека ускорения векторных вычислений на C++, предназначенная для оптимизации движков запросов и систем обработки данных. [Apache-2.0] website
- Zvec - Лёгкая и молниеносно быстрая внутрипроцессная векторная база данных. [Apache2] website
- constexpr-sql - Парсер и исполнитель SQL-запросов на этапе компиляции для C++17. [MIT]
- NuDB - Быстрое хранилище «ключ—значение» для SSD с добавлением только в конец. [Boost]
Визуализация данных
Заголовок раздела «Визуализация данных»Библиотеки визуализации данных.
- gplot++ - Кроссплатформенная библиотека построения графиков на C++, только из заголовочного файла; взаимодействует с Gnuplot. [MIT]
- matplotplusplus - Библиотека графики C++ для визуализации данных. [MIT] website
- mathplot - Построение графиков и визуализация данных на C++ с помощью заголовочных файлов и современного OpenGL. [Apache-2.0] website
- Plotly++ - Интерфейс C++ к спецификации фигур Plotly.js для создания интерактивной визуализации данных. [MIT]
- matplotlib-cpp - Обёртка C++ для библиотеки построения графиков matplotlib на Python. [MIT]
Отладка
Заголовок раздела «Отладка»Библиотеки отладки, обнаружение утечек памяти и ресурсов, модульное тестирование.
- Attest - Кроссплатформенный тестовый фреймворк C без динамической памяти: параметризованные тесты с учётом жизненного цикла, проверки и форматируемые сообщения. [MIT]
- backward-cpp - Удобное средство форматирования трассировок стека для C++. [MIT]
- Bencher - Набор инструментов непрерывного бенчмаркинга для обнаружения регрессий производительности в CI.[Apache2]
- benchmark - Небольшая библиотека поддержки микробенчмаркинга от Google. [Apache2]
- Boost.Test - Библиотека тестирования Boost. [Boost] website
- check - Check — фреймворк модульного тестирования для C. [LGPL-2.1] website
- doctest - Самый лёгкий полнофункциональный тестовый фреймворк C++ в одном заголовочном файле. [MIT]
- Catch2 - Современный тестовый фреймворк для C++ для модульных тестов, TDD и BDD. [Boost]
- Celero - Фреймворк бенчмаркинга для C++. [Apache2]
- cpp-dump - Библиотека C++ для отладки, печатающая значения любых переменных, в том числе пользовательских типов. [MIT]
- CppUTest - Фреймворк модульного тестирования и имитации объектов для C/C++. [BSD-3-clause]
- CUTE - Упрощённое модульное тестирование C++. [LGPL3]
- CMocka - Фреймворк модульного тестирования C с поддержкой имитационных объектов. [Apache2]
- CppBenchmark - Фреймворк бенчмаркинга производительности C++ с точностью измерения до наносекунд. [MIT]
- Cpptrace - Простая, переносимая и автономная библиотека трассировок стека C++ с поддержкой C++11 и новее. [MIT]
- CppUnit - Порт JUnit на C++. [LGPL2]
- CrashCatch - Отчёт о сбоях C++ в одном заголовочном файле: записывает трассировки стека и создаёт дампы сбоев
.dmpи.txt. [MIT] website - CTest - Программа запуска тестов CMake. [BSD]
- dbg-macro - Макрос dbg(…) для C++. [MIT]
- DebugViewPP - Просмотрщик журналов отладки. [Boost]
- Deleaker - Инструмент для обнаружения утечек ресурсов, включая утечки памяти, GDI и дескрипторов.
- FakeIt - Простой фреймворк имитации объектов для C++. [MIT]
- fff - Микрофреймворк для создания фиктивных функций C. [MIT]
- Google Mock - Библиотека для написания и использования имитационных классов C++. [BSD]
- Google Test - Тестовый фреймворк Google для C++. [BSD]
- Hippomocks - Фреймворк имитации объектов в одном заголовочном файле. [LGPL-2.1]
- IceCream-Cpp - Больше никогда не отлаживайте код с помощью cout/printf. [MIT]
- ig-debugheap - Мультиплатформенная отладочная куча для поиска ошибок памяти. [BSD]
- libassert - Самая чрезмерно усложнённая библиотека проверок (assert) для C++. [MIT]
- libtap - Пишите тесты на C. [GPL2]
- microprofile - Профилировщик с веб-интерфейсом для нескольких платформ. [Unlicense]
- MinUnit - Минимальный фреймворк модульного тестирования C в одном автономном заголовочном файле. [MIT]
- nanobench - Простые, быстрые и точные средства микробенчмаркинга для C++11/14/17/20 в одном заголовочном файле. [MIT] website
- Nanotimer - Простой кроссплатформенный класс таймера с низкими накладными расходами для бенчмаркинга. [zLib] website
- Nonius - Фреймворк микробенчмаркинга для C++. [CC]
- Remotery - Профилировщик в одном файле C с веб-просмотрщиком. [Apache2]
- snitch - Лёгкий тестовый фреймворк для C++20. [Boost]
- Touca - Система регрессионного тестирования с открытым исходным кодом, которую можно разместить самостоятельно. [Apache2] website
- UnitTest++ - Лёгкий фреймворк модульного тестирования для C++. [MIT/X Consortium license]
- Unity - Простое модульное тестирование для C. [MIT]
- utest.h - Фреймворк модульного тестирования для C и C++ в одном заголовочном файле. [Unlicense]
- utl::profiler - Профилировщик для C++17 в одном заголовочном файле. [MIT]
- μt - Фреймворк модульного тестирования μ (микро)/Unit для C++20: один заголовок или модуль, без макросов. [Boost]
- VLD - Visual Leak Detector — надёжная бесплатная система обнаружения утечек памяти с открытым исходным кодом для Visual C++.
- heaptrack - Профилировщик памяти в куче для Linux. [LGPL-2.1]
Документация
Заголовок раздела «Документация»- Doxide - Современная документация для современного C++: настройка в YAML, вывод в Markdown. [Apache 2.0] website
- doxygen :zap: - Фактический стандартный инструмент генерации документации по аннотированным исходникам C++. [GPL2] website
- doxyrest - Компилятор из XML Doxygen в reStructuredText для Sphinx. [MIT]
- hdoc - Современный инструмент документирования C++. [AGPL/Proprietary] website
- Natural Docs - Natural Docs — генератор документации с открытым исходным кодом для нескольких языков программирования. [AGPL/Proprietary] website
- Sourcey - Генератор статической документации, обрабатывающий XML Doxygen, а также OpenAPI, godoc, MCP и Markdown. [AGPL-3.0] website
- Sphinx - Sphinx упрощает создание информативной и красивой документации. [BSD-2-Clause] website
Цифровая обработка сигналов
Заголовок раздела «Цифровая обработка сигналов»Цифровая обработка сигналов.
- DSPFilters - Коллекция полезных классов C++ для цифровой обработки сигналов. [MIT]
- fCWT - Быстрое непрерывное вейвлет-преобразование (fCWT) — библиотека для быстрого вычисления CWT. [Apache-2.0]
- FFTW - Библиотека C для вычисления дискретного преобразования Фурье в одном или нескольких измерениях. [GPL]
- iir1 - Библиотека фильтров IIR реального времени для C++. [MIT]
- kissfft - Библиотека быстрого преобразования Фурье (БПФ), стремящаяся следовать принципу «Keep it Simple, Stupid». [BSD-3-Clause]
- pocketfft - Реализация БПФ на основе FFTPack с рядом улучшений. [BSD-3-Clause]
- wavelib - Реализация вейвлет-преобразований 1D и 2D на C. [BSD-3-Clause]
Библиотеки для разбора и обработки файлов шрифтов.
- Fontconfig - Библиотека настройки и конфигурирования шрифтов. [MIT] website
- FreeType - FreeType — свободно доступная программная библиотека для отрисовки шрифтов. [FTL & GPLv2]
- otfcc - Библиотека C и утилита для разбора и записи файлов шрифтов OpenType. [Apache-2.0]
- harfbuzz - Движок формирования текста. [Old MIT]
- libschrift - Лёгкая библиотека отрисовки шрифтов TrueType. [ISC]
- SheenBidi - Продвинутая реализация алгоритма двунаправленного письма Unicode. [Apache-2.0]
Игровые движки
Заголовок раздела «Игровые движки»- Acid - Высокоскоростной игровой движок C++17 на Vulkan. [MIT]
- Allegro - Кроссплатформенная библиотека, предназначенная главным образом для видеоигр и мультимедийного программирования. [zlib]
- Axmol Engine - Кроссплатформенный игровой движок для настольных компьютеров, мобильных устройств и Xbox (UWP), ответвление Cocos2d-x-4.0. [MIT] website
- Cocos2d-x - Мультиплатформенный фреймворк для создания 2D-игр, интерактивных книг, демонстраций и других графических приложений. [MIT]
- Corange - Игровой движок, написанный на чистом C с использованием SDL и OpenGL. [BSD]
- crown - Crown — универсальный игровой движок на основе данных, написанный с нуля на каноничном C++ с минималистичной архитектурой, ориентированной на данные. [MIT]
- delta3d - Надёжная платформа симуляции. [LGPL2]
- EnTT - Игры встречаются с современным C++. [MIT]
- GamePlay - Кроссплатформенный нативный игровой фреймворк C++ для создания 2D/3D-игр на мобильных устройствах и настольных компьютерах. [Apache2]
- Godot - Полнофункциональный игровой движок с открытым исходным кодом под лицензией MIT. [MIT]
- Grit - Проект сообщества по созданию бесплатного игрового движка для разработки игр с открытым 3D-миром. [MIT]
- Halley - Лёгкий игровой движок на C++14 с «настоящей» системой сущность-компонент. [Apache 2.0]
- Hazel Game Engine - Hazel — преимущественно ранняя версия интерактивного приложения и движка рендеринга для Windows. [Apache-2.0 license]
- IX-Ray Platform - Форк движка X-Ray 1.6, призванный улучшить игровой процесс и упростить разработку модификаций. [Modified MIT/non-commercial only]
- JNGL - 2D-библиотека для Linux, Windows, macOS, Android, iOS, Xbox, Nintendo Switch и веба. [zlib] website
- KlayGE - Кроссплатформенный игровой движок с открытым исходным кодом и архитектурой на основе плагинов. [GPLv2] website
- nCine - Кроссплатформенный 2D-игровой движок C++11 с упором на производительность и необязательной поддержкой скриптов Lua. [MIT] website
- o3de - Мультиплатформенный 3D-движок с открытым исходным кодом и поддержкой реального времени, основанный на Amazon Lumberyard. [Apache2] website
- OpenXRay - Модифицированный сообществом движок X-Ray, используемый в серии игр S.T.A.L.K.E.R. [Modified BSD/non-commercial only]
- Oxygine - Кроссплатформенный игровой 2D-движок на C++. [MIT]
- Panda3D - Игровой движок и фреймворк для 3D-рендеринга и разработки игр на Python и C++. [Modified BSD] website
- PixelGameEngine - Официальный дистрибутив olcPixelGameEngine — инструмента, используемого в видеороликах и проектах javidx9 на YouTube. [OLC3]
- Polycode - Кроссплатформенный фреймворк для творческого программирования на C++ (с привязками Lua). [MIT]
- quakeforge - Активно поддерживаемая ветка исходного кода оригинального движка Quake с более чем 20-летней историей разработки. [GPL-2.0]
- raylib - Простая и удобная библиотека для программирования видеоигр. [zlib/libpng] website
- Spring - Мощный бесплатный кроссплатформенный движок стратегий в реальном времени. [GPLv2/GPLv3] website
- Torque2D - Движок C++ с открытым исходным кодом и поддержкой нескольких платформ для разработки 2D-игр. [MIT] website
- Torque3D - Движок C++ с открытым исходным кодом для разработки 3D-игр. [MIT] website
- toy engine - toy — компактный модульный игровой движок на C++; он предлагает простые выразительные идиомы C++ для быстрой разработки полнофункциональных 2D- и 3D-игр.
- Urho3D - Бесплатный лёгкий кроссплатформенный 2D/3D-игровой движок на C++, во многом вдохновлённый OGRE и Horde3D. [MIT]
- Zodiac Engine - Кроссплатформенный движок и редактор 3D-рендеринга с открытым исходным кодом, написанный на C++20 с использованием Vulkan. [MIT]
- ezEngine - Бесплатный игровой движок C++ с открытым исходным кодом. Он построен по модульному и гибкому принципу и подходит для множества сценариев использования. [MIT] website
- CXXGraph - Бесплатная библиотека графов для C++17, только из заголовочного файла, для представления графов и выполнения алгоритмов. [AGPL-3.0]
- Graaf - Универсальная лёгкая библиотека графов для C++20. [MIT] website
Графический интерфейс
Заголовок раздела «Графический интерфейс»Графический пользовательский интерфейс.
- Boden - Нативный кроссплатформенный фреймворк графического интерфейса для мобильных устройств. [GPL/LGPL/Proprietary] website
- Brisk - Кроссплатформенный GUI-фреймворк C++20 с MVVM и реактивными возможностями, масштабируемой графикой с ускорением на GPU. [GPL/Proprietary] website
- CEGUI - Гибкая кроссплатформенная библиотека графического интерфейса.
- Elements - Лёгкая модульная библиотека GUI с мелкозернистыми элементами и независимостью от разрешения. [MIT]
- FLTK - Быстрый, лёгкий кроссплатформенный инструментарий GUI для C++. [LGPL2]
- FOX Toolkit - Открытый кроссплатформенный инструментарий виджетов. [LGPL]
- GacUI - Пользовательский интерфейс C++ с ускорением на GPU, инструментами разработки WYSIWYG, поддержкой XML, встроенной привязкой данных и возможностями MVVM. [Ms-PL]
- GTK+ - Мультиплатформенный инструментарий для создания графических пользовательских интерфейсов. [LGPL]
- gtkmm - Официальный интерфейс C++ для популярной библиотеки графического интерфейса GTK+. [LGPL]
- imgui - Графический пользовательский интерфейс Immediate Mode с минимальным числом зависимостей. [MIT]
- implot - Виджеты для построения графиков в Immediate Mode для imgui. [MIT]
- iup - Мультиплатформенный инструментарий для создания графических пользовательских интерфейсов. [MIT]
- libui - Простая и переносимая (но не ограниченная в возможностях) библиотека GUI на C, использующая нативные технологии графического интерфейса каждой поддерживаемой платформы. [MIT]
- MyGUI - Быстрый, гибкий и простой графический интерфейс. [MIT]
- nana - Nana — кроссплатформенная библиотека для программирования GUI в современном стиле C++. [Boost]
- NanoGui - Минималистичная кроссплатформенная библиотека виджетов для OpenGL 3.x и новее. [BSD]
- NAppGUI - SDK для создания кроссплатформенных настольных приложений на ANSI C. [MIT] website
- nuklear - Библиотека графического интерфейса ANSI C в одном заголовочном файле. [PublicDomain]
- QCustomPlot - Виджет построения графиков для Qt без дополнительных зависимостей. [GPLv3]
- Qwt - Виджеты Qt для технических приложений. [Own based on LGPL]
- QwtPlot3D - Богатая возможностями библиотека программирования на C++ для Qt/OpenGL, предоставляющая набор 3D-виджетов. [zlib]
- RmlUi - Развитая библиотека пользовательского интерфейса HTML/CSS. Форк libRocket. [MIT]
- Saucer - Современная кроссплатформенная библиотека веб-представлений на C++. [MIT]
- Sciter - Sciter — встраиваемый движок HTML/CSS/скриптов, предназначенный для использования в качестве слоя интерфейса современных настольных приложений. [Free/Commercial]
- Slint - Лёгкий инструментарий GUI для настольных и встраиваемых систем. [GPL/Free/Proprietary] website
- TGUI - Современный кроссплатформенный GUI на C++. [Zlib] website
- WebUI - Используйте любой веб-браузер в качестве GUI: язык бэкенда на ваш выбор, HTML5 во фронтенде. [MIT] website
- wxCharts - Библиотека для создания диаграмм в приложениях wxWidgets. [MIT] website
- wxWidgets - Библиотека C++, позволяющая создавать приложения для Windows, Mac OS X, Linux и других платформ на основе одной кодовой базы. [Own LGPL]
- Yue - Библиотека для создания нативных кроссплатформенных GUI-приложений. [LGPLv2]
- GuiLite - Самая маленькая библиотека GUI для всех платформ (5 тысяч строк кода), только из заголовочного файла. [Apache-2.0]
- LCUI - Небольшая библиотека C для создания пользовательских интерфейсов с помощью C, XML и CSS. [MIT]
Графика
Заголовок раздела «Графика»- assimp - Open Asset Import Library (assimp) — кроссплатформенная библиотека импорта 3D-моделей, предоставляющая общий API для разных форматов файлов 3D-ресурсов. [BSD-3-Clause] website
- bgfx - Кроссплатформенная библиотека рендеринга. [BSD]
- Blend2D - Движок векторной 2D-графики с ускорением посредством JIT-компилятора. [Zlib] website
- Cairo - Библиотека 2D-графики с поддержкой множества устройств вывода. [LGPL2 or Mozilla MPL]
- C-Turtle - Библиотека черепашьей графики C++11, только из заголовочного файла, выступающая обёрткой CImg. [MIT]
- Diligent Engine - Современная кроссплатформенная низкоуровневая библиотека 3D-графики. [Apache2]
- DirectXTK - Коллекция вспомогательных классов для написания кода DirectX 11.x на C++. [MIT]
- GLFW - Простая кроссплатформенная библиотека для работы с OpenGL. [zlib/libpng]
- GLFWPP - Тонкая современная обёртка GLFW на C++17, только из заголовочных файлов. [MIT]
- Harfang 3D Библиотека 3D-визуализации, доступная на C++, Python, Lua и Go. Основана на BGFX. [GPLv3/LGPLv3/Proprietary] website
- herebedragons - Базовая 3D-сцена, реализованная с использованием различных движков, фреймворков и API. [MIT] website
- Horde3D - Небольшой движок 3D-рендеринга и анимации. [EPL]
- Ion - Набор компактных эффективных библиотек для создания кроссплатформенных клиентских и серверных приложений с 3D-графикой. [Apache2] website
- Irrlicht - Высокопроизводительный движок 3D-графики реального времени на C++. [zlib]
- libigl - Простая библиотека геометрической обработки на C++. [MPL2]
- LLGL - Low Level Graphics Library (LLGL) — тонкий уровень абстракции для современных графических API. [BSD-3-Clause]
- LunaSVG - Автономная библиотека рендеринга SVG на C++. [MIT]
- magnum - Лёгкое модульное графическое ПО промежуточного слоя на C++11/C++14 для игр и визуализации данных. [MIT] website
- MESHLIB - SDK для существенного повышения эффективности обработки 3D-данных. [Free/Commercial] website
- micro-gl - Встраиваемая векторная графика C++11 в реальном времени, только из заголовочных файлов: без стандартной библиотеки, FPU и GPU. [CUSTOM] website
- NanoVG - Библиотека сглаженного рисования векторной 2D-графики поверх OpenGL для интерфейсов и визуализации. [Zlib]
- Ogre 3D :zap: - Ориентированный на сцены гибкий движок 3D-рендеринга реального времени (в отличие от игрового движка), написанный на C++. [MIT] website
- OpenSceneGraph - Высокопроизводительный инструментарий 3D-графики с открытым исходным кодом. [OSGPL]
- OpenSubdiv - Библиотека Pixar для вычисления и рендеринга поверхностей подразделения на CPU и GPU. [Modified Apache2]
- OpenVDB - Библиотека и инструменты для хранения, редактирования и рендеринга объёмных наборов данных. [MPL2]
- Panda3D - Фреймворк для 3D-рендеринга и разработки игр на Python и C++. [BSD]
- Partio - Библиотека для работы с данными частиц с поддержкой большинства распространённых форматов файлов. [Modified BSD]
- Skia - Полнофункциональная библиотека 2D-графики для рисования текста, геометрических фигур и изображений. [BSD] website
- ThorVG - Независимая от платформы переносимая библиотека для рисования векторных сцен и анимации, включая SVG и Lottie. [MIT] website
- TinySpline - Небольшая, но мощная библиотека ANSI C для интерполяции, преобразования и запросов к произвольным кривым NURBS, B-сплайнам и Безье. [MIT]
- urho3d - Кроссплатформенный движок рендеринга и игр. [Many different, mostly MIT]
- Yocto/GL - Компактные библиотеки C++ для физически корректной графики на основе данных. [MIT]
- olive.c - Простая библиотека 2D-графики. [MIT]
Обработка изображений
Заголовок раздела «Обработка изображений»- avir - Высококачественное средство масштабирования HDR-изображений и быстрый ресайзер Lanczos с SIMD. [MIT]
- Boost.GIL - Универсальная библиотека изображений. [Boost] website
- BitmapPlusPLus - Простая и быстрая библиотека Bitmap для C++, только из заголовочных файлов. [MIT]
- CImg - Небольшой инструментарий C++ для обработки изображений с открытым исходным кодом. [Own LGPL or GPL]
- CxImage - Библиотека обработки и преобразования изображений для загрузки, сохранения, отображения и трансформации изображений BMP, JPEG, GIF, PNG, TIFF, MNG, ICO, PCX, TGA, WMF, WBMP, JBG и J2K. [zlib]
- Dlib :zap: - Современный инструментарий C++11 для машинного обучения, компьютерного зрения, численной оптимизации и глубокого обучения. [Boost] website
- fpng - Сверхбыстрая библиотека чтения и записи PNG на C++. [Unlicense]
- FreeImage - Библиотека с открытым исходным кодом, поддерживающая популярные графические форматы изображений и другие форматы, необходимые современным мультимедийным приложениям. [GPL2 or GPL3]
- GD - Графическая библиотека GD, широко известная применением в PHP для загрузки и обработки изображений и создания миниатюр. [custom permissive license, requires mention in user docs] website
- DCMTK - Инструментарий DICOM.
- GDCM - Библиотека Grassroots DICOM.
- ITK - Кроссплатформенная система анализа изображений с открытым исходным кодом. [Apache2 from ITK 4.0]
- Jpegli - Усовершенствованная реализация кодировщика и декодера JPEG. [BSD-3-Clause]
- Leptonica - Leptonica — библиотека с открытым исходным кодом, содержащая широкий набор программных средств для обработки и анализа изображений. [BSD-2-Clause] website
- libavif - Библиотека для кодирования и декодирования файлов .avif. [BSD-2-Clause]
- libfacedetection - Библиотека обнаружения лиц на изображениях с открытым исходным кодом. Скорость обнаружения достигает 1500 кадров в секунду. [BSD]
- libjpeg-turbo - Кодек изображений JPEG, использующий SIMD-инструкции для ускорения базового кодирования и декодирования JPEG. [IJG & BSD-3-Clause & zlib] website
- libjxl - Эталонная реализация формата изображений JPEG XL. [BSD-3-Clause]
- libpng - Эталонная библиотека для приложений чтения, создания и обработки растровых изображений PNG (Portable Network Graphics). [libpng-2.0] website
- libspng - Простая современная альтернатива libpng. [BSD-2] website
- libvips - Быстрая библиотека обработки изображений с низким потреблением памяти. [LGPL] website
- LodePNG - Кодировщик и декодер PNG на C и C++. [Zlib]
- Magick++ - Интерфейсы программ ImageMagick для C++. [Apache2]
- MagickWnd - Интерфейсы программ ImageMagick для C. [Apache2]
- MozJPEG - Усовершенствованный кодировщик JPEG. [BSD/BSD-3-Clause/ZLIB]
- OpenCV :zap: - Компьютерное зрение с открытым исходным кодом. [Apache2] website
- OpenEXR - Кроссплатформенная библиотека для обработки изображений с расширенным динамическим диапазоном. [Modified BSDF]
- OpenImageIO - Мощная библиотека обработки изображений и текстур с поддержкой множества распространённых форматов с потерями и RAW. [Modified BSD]
- OpenJPEG - Кодек JPEG 2000 с открытым исходным кодом, написанный на C. [BSD-2-Clause]
- PlutoFilter - Библиотека фильтров изображений на C в одном заголовочном файле без динамического выделения памяти. [MIT]
- QOI - Формат изображений «Quite OK Image Format» для быстрого сжатия без потерь. [MIT]
- SAIL - Простая в использовании кроссплатформенная библиотека декодирования изображений с подключаемыми кодеками. [MIT]
- Simd - Библиотека обработки изображений C++ с использованием SIMD: SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, AVX, AVX2, AVX-512, VMX (Altivec), VSX (Power7) и NEON для ARM. [MIT]
- stb-image - Библиотека загрузки изображений STB в одном заголовочном файле. [Public Domain]
- tesseract-ocr - Движок OCR. [Apache2]
- TinyDNG - Загрузчик и средство записи Tiny DNG/TIFF для C++ только из заголовочного файла. [MIT]
- TinyEXIF - Компактная библиотека C++ для разбора EXIF и XMP в JPEG, совместимая со стандартом ISO. [MIT]
- TinyTIFF - Лёгкая библиотека чтения и записи TIFF. [GPL-3.0]
- Video++ - Высокопроизводительная библиотека обработки видео и изображений для C++14. [MIT]
- VIGRA - Универсальная библиотека компьютерного зрения C++ для анализа изображений. [MIT X11]
- VTK - Свободная система программного обеспечения с открытым исходным кодом для 3D-компьютерной графики, обработки изображений и визуализации. [BSD]
- OpenImageDenoise - Высокопроизводительная высококачественная библиотека шумоподавления для изображений с трассировкой лучей. [Apache-2.0] website
- bitmap - Библиотека Bitmap для C++ для чтения, записи и обработки BMP-изображений. [MIT]
Интернационализация
Заголовок раздела «Интернационализация»- gettext - GNU gettext. [GPL2]
- IBM ICU - Набор библиотек C/C++ и Java с поддержкой Unicode и глобализации. [ICU]
- libiconv - Библиотека преобразования между различными кодировками символов. [GPL]
- simdutf - Процедуры Unicode (UTF-8, UTF-16, UTF-32), обрабатывающие миллиарды символов в секунду с использованием SSE2, AVX2, NEON и AVX-512. [Apache-2/MIT]
- uni-algo - Реализация алгоритмов Unicode для C/C++. [Unlicense or MIT]
- utf8.h - Функции работы со строками UTF-8 для C и C++ в одном заголовочном файле. [Unlicense]
- utf8proc - Компактная библиотека C для обработки данных Unicode в UTF-8. [MIT]
Межпроцессное взаимодействие
Заголовок раздела «Межпроцессное взаимодействие»- Apache Thrift - Эффективный IPC/RPC между языками C++, Java, Python, PHP, C# и многими другими. Изначально разработан в Facebook. [Apache2]
- Boost.Interprocess - Библиотека Boost только из заголовочных файлов с поддержкой разделяемой памяти уровня ядра и файлов, отображённых в память, а также встроенными механизмами синхронизации (семафоры, мьютексы и др.). [Boost] website
- bRPC - bRPC — RPC-фреймворк промышленного класса на C++, часто используемый в высокопроизводительных системах поиска, хранения, машинного обучения, рекламы, рекомендаций и др. [Apache2] website
- Cap’n Proto - Быстрый формат обмена данными и RPC-система на основе возможностей. [MIT] website
- eCAL - Pub/sub, клиент-сервер, C++/Python/C#, различные протоколы сообщений (protobuf, capnproto и др.). [Apache2] website
- gRPC - Высокопроизводительный RPC-фреймворк общего назначения с открытым исходным кодом. [BSD] website
- Ice - Полнофункциональный RPC-фреймворк с поддержкой C++, C#, Java, JavaScript, Python и других языков. [GPLv2]
- iceoryx - Полноценный фреймворк межпроцессного взаимодействия без копирования для критически важных систем с привязками для C и Rust. Работает в Linux, QNX, Windows, macOS и FreeBSD. [Apache2] website
- libjson-rpc-cpp - Фреймворк JSON-RPC для серверов и клиентов C++. [MIT]
- nanomsg - Простая высокопроизводительная реализация нескольких «протоколов масштабируемости». [MIT] website
- nng - nanomsg следующего поколения — лёгкая библиотека обмена сообщениями без брокера. [MIT] website
- rpclib - Современная клиентская и серверная библиотека msgpack-RPC для C++. [MIT]
- simple-rpc-cpp - Простой генератор RPC-обёрток для функций C/C++. [BSD]
- SRPC - Лёгкая RPC-система с поддержкой нескольких протоколов и OpenTelemetry. [Apache2]
- WAMP - Поддерживает шаблоны RPC и обмен сообщениями pub/sub (много реализаций на разных языках).
- xmlrpc-c - Лёгкая RPC-библиотека на основе XML и HTTP. [BSD]
- Boost.PropertyTree - Парсер/генератор дерева свойств для XML, JSON, INI и Info-файлов. [Boost] website
- cJSON - Сверхлёгкий парсер JSON на ANSI C. [MIT]
- DAW JSON Link - Быстрая и удобная сериализация и разбор JSON на C++. [BSL-1.0]
- frozen - Парсер и генератор JSON для C/C++. [GPL & GPL2]
- Glaze - Сверхбыстрая библиотека JSON и интерфейсов в памяти для современного C++. [MIT]
- Jansson - Библиотека C для кодирования, декодирования и обработки данных JSON. [MIT]
- jbson - jbson — библиотека для создания и обхода данных BSON и документов JSON в C++14. [Boost]
- JeayeSON - Очень удобная библиотека JSON для C++, только из заголовочных файлов. [BSD]
- Jsmn - Минималистичный парсер JSON на C. [MIT]
- json :zap: - JSON для современного C++. [MIT] website
- json.cpp - Вычурная библиотека разбора и сериализации JSON для C++. [Apache-2.0]
- json.h - Простое решение для разбора JSON на C и C++ в одном заголовочном и одном исходном файле. [Unlicense]
- json-build - Миниатюрный сериализатор JSON на C89 без динамического выделения памяти. [MIT]
- json-c - Реализация JSON на C. [MIT]
- jsoncons - Библиотека C++ только из заголовочных файлов для JSON и похожих на JSON бинарных форматов с поддержкой JSONPointer, JSONPatch, JSONPath и JMESPath. [Boost]
- JsonCpp - Библиотека C++ для работы с JSON. [MIT]
- Jsonifier - Набор классов для очень быстрого разбора и сериализации объектов из JSON и в JSON. [MIT]
- jsonParse - Простой парсер JSON на ANSI C. [MIT]
- json-parser - Компактный парсер JSON на переносимом ANSI C. [BSD]
- json-struct - Высокопроизводительный парсер JSON в одном заголовочном файле, преобразующий данные в структуры C++ и обратно. [MIT]
- json-voorhees - Библиотека JSON для C++ с поддержкой C++11. Без зависимостей, быстрая и удобная для разработчиков. [Apache2]
- JSON Toolkit - Библиотека JSON, JSON Pointer, JSON Schema и JSONL для C++20. [AGPL/Commercial]
- jute - Очень простой парсер JSON для C++. [PublicDomain]
- libjson - Библиотека C для разбора и печати JSON. Легко интегрируется с любой моделью. [LGPL]
- libjson - Лёгкая библиотека JSON. [?]
- LIBUCL :zap: - Парсер универсальной библиотеки конфигурации. [BSD-2-Clause]
- meojson - Движок сериализации JSON/JSON5 нового поколения для C++: без зависимостей, только заголовочный файл, раскрывает потенциал JSON. [MIT]
- parson - Parson — лёгкая библиотека JSON на C. [MIT]
- PicoJSON - Парсер и сериализатор JSON для C++ только из заголовочного файла. [BSD]
- qt-json - Простой класс для разбора данных JSON в иерархию QVariant и обратно. [GPLv3]
- RapidJSON :zap: - Быстрый парсер/генератор JSON для C++ с API в стилях SAX и DOM. [MIT] website
- sajson - Лёгкий сверхвысокопроизводительный парсер JSON для C++11. [MIT]
- simdjson - Сверхбыстрая библиотека JSON, способная разбирать гигабайты JSON в секунду. [Apache-2.0]
- Sonic-Cpp - Быстрая библиотека сериализации и десериализации JSON с ускорением SIMD. [Apache-2.0]
- taoJSON - Библиотека JSON для C++ без зависимостей, только из заголовочных файлов. [MIT]
- ujson - µjson — небольшая библиотека JSON для C++11 с поддержкой UTF-8. [MIT]
- UltraJSON - Сверхбыстрый декодер и кодировщик JSON на C. [BSD-3-Clause]
- YAJL - Быстрая потоковая библиотека разбора JSON на C. [ISC]
- yyjson - Высокопроизводительная библиотека JSON на ANSI C. [MIT]
- libdart - Высокопроизводительная библиотека обработки JSON, оптимизированная для сетевых задач. [MIT]
Ведение журналов
Заголовок раздела «Ведение журналов»- Abseil Logging - Библиотека журналирования Abseil предоставляет средства записи сообщений в stderr, файлы и другие приёмники. [Apache-2.0]
- Blackhole - Фреймворк журналирования на основе атрибутов, разработанный для скорости, модульности и гибкой настройки. [MIT]
- Boost.Log - Создана для модульности и расширяемости. [Boost] website
- BqLog - Лёгкая высокопроизводительная система журналирования, используемая в таких проектах, как «Honor of Kings». [Apache-2.0]
- fmtlog - Высокопроизводительная библиотека журналирования в стиле fmtlib с задержкой в наносекунды. [MIT]
- G3log - Асинхронный регистратор с динамическими приёмниками. [PublicDomain]
- glog - Реализация модуля журналирования Google на C++.
- haclog - Чрезвычайно быстрая библиотека журналирования на чистом C. [MIT]
- Log4cpp - Библиотека классов C++ для гибкого журналирования в файлы, syslog, IDSA и другие назначения. [LGPL]
- log4cplus - Простой в использовании API журналирования C++ с потокобезопасным, гибким и произвольно детализированным управлением журналами и конфигурацией. [BSD & Apache2]
- loguru - Лёгкая библиотека журналирования для C++. [PublicDomain]
- lwlog - Очень быстрая библиотека синхронного и асинхронного журналирования для C++17. [MIT]
- ng-log - Библиотека C++14 для журналирования на уровне приложения. [BSD-3-Clause]
- plog - Переносимый простой журнал для C++ менее чем в 1000 строк кода. [MPL2]
- reckless - Низколатентная высокопроизводительная асинхронная библиотека журналирования для C++. [MIT]
- spdlog - Сверхбыстрая библиотека журналирования C++ только из заголовочных файлов.
- templog - Очень небольшая и лёгкая библиотека C++ для добавления журналирования в приложения. [Boost]
- P7Baical - Библиотека с открытым исходным кодом и поддержкой разных платформ для быстрой отправки телеметрии и трассировок с минимальным использованием CPU и памяти. [LGPL]
- Quill - Асинхронная кроссплатформенная библиотека журналирования с низкой задержкой. [MIT]
- logfault - Простая, элегантная и эффективная библиотека журналирования C++ только из заголовочного файла. [MIT]
Машинное обучение
Заголовок раздела «Машинное обучение»- Caffe - Быстрый фреймворк нейронных сетей. [BSD]
- catboost - Быстрая, масштабируемая и высокопроизводительная библиотека градиентного бустинга на решающих деревьях. [Apache2]
- CCV - C-based/Cached/Core Computer Vision Library — современная библиотека компьютерного зрения. [BSD]
- darknet - Фреймворк нейронных сетей с открытым исходным кодом на C и CUDA. [PublicDomain] website
- Dlib :zap: - Современный инструментарий C++11 для машинного обучения, компьютерного зрения, численной оптимизации и глубокого обучения. [Boost] website
- FAISS - Библиотека для эффективного поиска сходства и кластеризации плотных векторов. [MIT]
- FANN - Быстрая библиотека искусственных нейронных сетей на C. [LGPL]
- Fido - Модульная библиотека машинного обучения на C++ для встроенной электроники и робототехники. [MIT] website
- flashlight - Быстрая и гибкая библиотека машинного обучения от Facebook AI Research, полностью написанная на C++ и основанная на тензорной библиотеке ArrayFire. [BSD-3-Clause] website
- ggml - Библиотека тензоров для машинного обучения с поддержкой 16- и 4-разрядного квантования. [MIT]
- libsvm - Простая, удобная и эффективная библиотека машин опорных векторов. [BSD-3-Clause] website
- m2cgen - Инструмент командной строки для преобразования обученных классических моделей машинного обучения в нативный код C без зависимостей. [MIT]
- MeTA - Современный инструментарий для науки о данных на C++. [MIT]
- Minerva - Быстрая и гибкая система глубокого обучения. [Apache2]
- mlpack - Масштабируемая библиотека машинного обучения на C++. [LGPLv3] website
- ncnn - Высокопроизводительный фреймворк инференса нейронных сетей, оптимизированный для мобильных платформ. [BSD]
- OpenCV :zap: - Библиотека компьютерного зрения с открытым исходным кодом. [BSD] website
- oneDAL - Мощная библиотека машинного обучения, ускоряющая анализ больших данных. [Apache]
- ONNX runtime - Библиотека C и C++ для обучения и инференса моделей ONNX. ONNX — стандарт, в который можно преобразовать модели ИИ независимо от исходной библиотеки обучения. [MIT] website
- Recommender - Библиотека C для рекомендации товаров с помощью коллаборативной фильтрации (CF). [BSD]
- RNNLIB - RNNLIB — библиотека рекуррентных нейронных сетей для задач обучения на последовательностях. [GPLv3]
- SHOGUN - Набор инструментов машинного обучения Shogun. [GPLv3]
- sofia-ml - Набор быстрых инкрементальных алгоритмов машинного обучения. [Apache2]
- USearch - Быстрая библиотека поиска и кластеризации векторов и строк. [Apache2]
- VLFeat - Библиотека VLFeat с открытым исходным кодом реализует популярные алгоритмы компьютерного зрения, специализируясь на анализе изображений, извлечении и сопоставлении локальных признаков. [BSD-2-Clause] website
- xgboost - Масштабируемая, переносимая и распределённая библиотека градиентного бустинга (GBDT, GBRT или GBM) для Python, R, Java, Scala, C++ и других языков. Работает на одном компьютере, в Hadoop, Spark, Flink и DataFlow. [Apache2]
- TensorComprehensions - Полнофункциональная библиотека C++ для автоматического синтеза высокопроизводительных ядер машинного обучения. [Apache-2.0]
- kann - Лёгкая библиотека C для искусственных нейронных сетей. [MIT]
Математика
Заголовок раздела «Математика»- Apophenia - Библиотека C для статистических и научных вычислений. [GPL2]
- Armadillo - Быстрая библиотека C++ для линейной алгебры и научных вычислений. [Apache2] website
- autodiff - Современная быстрая и выразительная библиотека C++ для автоматического дифференцирования. [MIT] website
- blaze - Высокопроизводительная библиотека математики C++ для плотных и разреженных вычислений. [BSD]
- Boost.Multiprecision - Предоставляет типы целых, рациональных чисел и чисел с плавающей запятой с расширенным диапазоном и точностью в C++; только заголовочный файл либо с бэкендами GMP/MPFR/LibTomMath. [Boost] website
- ceres-solver - Библиотека C++ от Google для моделирования и решения больших сложных нелинейных задач наименьших квадратов. [BSD]
- CGAL - Коллекция эффективных и надёжных геометрических алгоритмов. [LGPL&GPL] website
- cml - Настраиваемая математическая библиотека. [Boost]
- CNL - Составная числовая библиотека для C++. [Boost]
- DirectXMath - Линейная алгебра C++ со встроенными SIMD-инструкциями для игр и графических приложений.
- Dlib :zap: - Современный инструментарий C++11 для машинного обучения, компьютерного зрения, численной оптимизации и глубокого обучения. [Boost] website
- Eigen - Высокоуровневая библиотека шаблонов-заголовков C++ для линейной алгебры, операций с матрицами и векторами, численных решателей и связанных алгоритмов. [MPL2]
- ExprTk - Библиотека ExprTk (C++ Mathematical Expression Toolkit) — простой в использовании, удобный для интеграции и чрезвычайно эффективный парсер и движок вычисления математических выражений во время выполнения. [MIT]
- Fastor - Лёгкий высокопроизводительный фреймворк тензорной алгебры для современного C++. [MIT]
- geo-utils-cpp - Библиотека C++17 только из заголовочных файлов для геометрии на сфере по широте/долготе: расстояние, азимут, площадь, проверка точки в многоугольнике. [Apache2]
- Geometric Tools - Библиотека C++ для вычислений в областях математики, графики, анализа изображений и физики. [Boost] website
- GLM - Математическая библиотека C++ только из заголовочных файлов, соответствующая математике GLSL OpenGL и совместимая с ней. [MIT] website
- GMTL - Graphics Math Template Library — набор инструментов с обобщёнными реализациями графических примитивов. [GPL2]
- GMP - Библиотека C для арифметики произвольной точности над знаковыми целыми числами, рациональными числами и числами с плавающей запятой. [LGPL3 & GPL2]
- Klein - Быстрая библиотека геометрической алгебры C++17 с оптимизацией SIMD для проекций, пересечений и объединений точек, прямых и плоскостей, движения твёрдого тела и др. [MIT] website
- libfixmath - Кроссплатформенная библиотека математики с фиксированной точкой. [MIT]
- linalg.h - Небольшая библиотека векторной математики C++ в одном заголовочном файле, находящаяся в общественном достоянии. [Unlicense]
- MATIO - Библиотека ввода-вывода файлов MATLAB MAT. [BSD-2-Clause] website
- MatX - Библиотека численных вычислений C++17 с ускорением на GPU и синтаксисом, похожим на MATLAB/Python. [BSD 3-clause]
- mexce - JIT-компилятор математических выражений над скалярами в одном заголовочном файле без зависимостей, генерирующий оптимизированный машинный код x87 FPU. [BSD]
- MIRACL - Криптографическая библиотека арифметики целых и рациональных чисел произвольной точности. [AGPL]
- NumCpp - Шаблонная реализация библиотеки Python NumPy для C++, только из заголовочного файла. [MIT]
- NumKong - Расстояния, скалярные произведения, матричные операции, геопространственные и геометрические ядра с SIMD-ускорением для 16 числовых типов. (Ранее называлась SimSIMD.)
- OMath - Кроссплатформенная современная математическая библиотека общего назначения на C++23, подходящая для разработки читов и игр. [ZLIB]
- muparser - muParser — расширяемая высокопроизводительная библиотека разбора математических выражений на C++. [MIT]
- LibTomMath - Бесплатная переносимая библиотека целых чисел произвольной точности для теоретико-числовых вычислений, полностью написанная на C. [PublicDomain & WTFPL] website
- linmath.h - Компактная библиотека линейной математики для программирования графики. [WTFPL]
- lp_solve - Библиотека для формулировки и решения задач линейного программирования. [LGPL] website
- OpenBLAS - Оптимизированная библиотека BLAS на основе версии GotoBLAS2 1.13 BSD. [BSD 3-clause] website
- PCG-rand - PCG — семейство простых, быстрых, компактных и статистически качественных алгоритмов генерации случайных чисел. В отличие от многих генераторов общего назначения, их также сложно предсказать. [Apache]
- QuantLib - Бесплатная библиотека количественных финансовых вычислений с открытым исходным кодом. [Modified BSD] website
- sebsjames/maths - Шаблонная библиотека математики C++20, ориентированная на удобство и удовольствие программиста, использующего её (применяется в mathplot). [Apache2] website
- StatsLib - Библиотека функций статистических распределений для C++, только из заголовочных файлов. [Apache2] website
- SymEngine - Быстрая библиотека символьных преобразований — переписанное на C++ ядро SymPy. [MIT]
- TinyExpr - Библиотека C для разбора и вычисления математических выражений из строк. [zlib]
- Vc - Классы векторов SIMD для C++. [BSD]
- Versor - Быстрая универсальная библиотека C++ геометрических алгебр, включая евклидову, проективную, конформную, пространства-времени и другие.
- Wagyu - Универсальная библиотека геометрических операций объединения, пересечения, разности и исключающего ИЛИ. [mapbox-wagyu original]
- wide-integer - Wide-Integer реализует общий шаблон C++ для uint128_t, uint256_t, uint512_t, uint1024_t и т. д. [BSL-1.0]
- Wykobi - Библиотека C++ с эффективными, надёжными и простыми в использовании процедурами вычислительной геометрии в 2D/3D. [MIT]
- xtensor - Библиотека C++14 для численного анализа с выражениями многомерных массивов, вдохновлённая синтаксисом NumPy. [BSD 3-clause] website
- universal - Библиотека C++14 только из заголовочных файлов, реализующая арифметику чисел posit произвольной разрядности. Posit — система чисел с плавающей запятой и переменной точностью, эффективнее стандарта IEEE; она позволяет получать воспроизводимые результаты научных вычислений. [MIT license]
- utl::random - Библиотека C++17 только из заголовочных файлов для быстрой генерации случайных чисел в симуляциях Монте-Карло и разработке игр. [MIT]
- XAD - Мощное автоматическое дифференцирование для C++. [AGPL] website
- geogram - Библиотека геометрических алгоритмов. [BSD-3-Clause]
- std-simd - Переносимая реализация std::experimental::simd для C++. [BSD-3-Clause]
- libdivide - Оптимизированное целочисленное деление для C/C++ с помощью libdivide. [zlib] website
- fpsqrt - Быстрое вычисление квадратного корня в формате с фиксированной и плавающей точкой для C. [MIT]
- fastmod - Быстрая библиотека C/C++ только из заголовочных файлов для вычисления остатков и редукций по модулю. [Apache-2.0]
- Spectra - Библиотека C++ для крупномасштабных задач на собственные значения, построенная поверх Eigen. [MPL2] website
- FastNoiseSIMD - Библиотека функций генерации шума с ускорением SIMD. [MIT]
Управление памятью
Заголовок раздела «Управление памятью»- Boehm GC - Консервативный сборщик мусора для C и C++. [similar to X11] website
- C Smart Pointers - Умные указатели для языка программирования GNU C. [MIT]
- Hoard - Быстрый, масштабируемый и экономный по памяти malloc для Linux, Windows и Mac. [Apache-2.0] website
- jemalloc - Реализация malloc(3) общего назначения с упором на предотвращение фрагментации и масштабируемую поддержку параллелизма. [BSD] website
- memory - Библиотека распределителей памяти C++, совместимая со STL. [ZLib]
- memory-allocators - Пользовательские распределители памяти для повышения производительности динамического выделения памяти. [MIT]
- mimalloc - Компактный распределитель памяти общего назначения с отличной производительностью. [MIT]
- rpmalloc - Кроссплатформенный распределитель памяти C с кэшированием потоков, выравниванием по 16 байтам и без блокировок. [PublicDomain]
- snmalloc - Высокопроизводительный распределитель памяти на основе передачи сообщений. [MIT]
- TCMalloc - Быстрая многопоточная реализация malloc от Google. [Apache-2.0] website
- buddy_alloc - Распределитель памяти C на основе алгоритма buddy в одном заголовочном файле с ограниченной стоимостью выделения памяти. [0BSD]
- tgc - Компактный сборщик мусора для C, написанный примерно в 500 строк кода. [BSD]
- Mesh - Распределитель памяти, автоматически уменьшающий объём памяти, используемый приложениями C/C++. [Apache-2.0]
- rpmalloc - Кроссплатформенный распределитель памяти с кэшированием потоков, без блокировок, выравниванием по 16 байтам, находящийся в общественном достоянии. [PublicDomain]
- TLSF - Двухуровневый распределитель памяти с сегрегированным списком свободных блоков общего назначения для динамического выделения. [BSD]
Мультимедиа
Заголовок раздела «Мультимедиа»- GStreamer - Библиотека для построения графов компонентов обработки мультимедиа. [LGPL]
- icey - Стек медиа реального времени и лёгкая альтернатива libwebrtc для получения RTSP, обработки мультимедиа, сигнализации, TURN и доставки в браузер; написан на C++20. [LGPL v2.1+]
- libass - Переносимый рендерер субтитров формата ASS/SSA. [ISC]
- libav - Коллекция библиотек и инструментов для обработки мультимедиа, например аудио, видео, субтитров и связанных метаданных. [LGPL v2.1+ and others] website
- LIVE555 Streaming Media - Библиотека потоковой передачи мультимедиа по открытым стандартным протоколам (RTP/RTCP, RTSP, SIP). [LGPL]
- libVLC - Медиафреймворк libVLC (VLC SDK). [GPL]
- MediaInfoLib - Удобное унифицированное отображение наиболее важных технических данных и тегов видео- и аудиофайлов. [BSD]
- QtAv - Фреймворк воспроизведения мультимедиа на базе Qt и FFmpeg для простого создания плеера. [LGPL] website
- SDL :zap: - Простой слой прямого доступа к мультимедиа. [zlib] website
- SFML :zap: - Простая и быстрая библиотека мультимедиа. [zlib] website
- TagLib - Библиотека для чтения и редактирования метаданных нескольких популярных аудиоформатов. [LGPL/MPL] website
- ada - Быстрый парсер URL на современном C++, соответствующий WHATWG. [Apache-2.0/MIT]
- ACE - Объектно-ориентированный инструментарий сетевого программирования на C++. [?MIT?]
- AGENT++ - Фреймворк C++ с полноценным трёхъязычным движком и диспетчером протокола SNMP v1/2c/3 для разработки SNMP-агентов. [Apache-2.0]
- Boost.Asio :zap: - Кроссплатформенная библиотека C++ для сетевого программирования и низкоуровневого ввода-вывода. [Boost] website
- Boost.Beast :zap: - HTTP и WebSocket на базе Boost.Asio для C++11. [Boost] website
- Breep - Событийная высокоуровневая библиотека P2P для C++14. [EUPL-1.1 (OSI approved)]
- C++ REST SDK - C++ REST SDK (ранее назывался Casablanca). [Apache2]
- CZMQ - Высокоуровневая привязка ØMQ для C. [MPL2] website
- Restbed - Асинхронный REST-фреймворк для C++11. [AGPL]
- Restinio - Библиотека C++14 только из заголовочных файлов для встроенного HTTP/WebSocket-сервера. [BSD]
- c-ares - Библиотека C для асинхронных DNS-запросов. [MIT]
- cofetch - Асинхронный HTTP-клиент с цепочками вызовов на базе multi-интерфейса libcurl и ASIO. Одна реализация поддерживает обратные вызовы, корутины и future. [MIT]
- cpp-httplib - Библиотека сервера HTTP/HTTPS на C++11 в одном файле и заголовочном файле. [MIT]
- cpp-netlib - Коллекция библиотек с открытым исходным кодом для высокоуровневого сетевого программирования. [Boost]
- cpp-netlib/uri - Библиотека разбора и построения URI для C++, совместимая с RFC 3986 и RFC 3987. [Boost]
- CppServer - Сверхбыстрая асинхронная библиотека серверов и клиентов сокетов C++ с низкой задержкой, поддерживающая TCP, SSL, UDP, HTTP, HTTPS и WebSocket и решающая проблему 10 тысяч подключений. [MIT]
- cpr - Современная библиотека HTTP-запросов для C++ с простым, но мощным интерфейсом. Создана по образцу модуля Requests для Python. [MIT] website
- curlcpp - Объектно-ориентированная обёртка C++ для CURL (libcurl). [MIT]
- curlpp C++-обёртка для libcURL. [MIT]
- DPDK - Data Plane Development Kit — библиотеки и драйверы для быстрой обработки пакетов. [BSD-3-Clause & GPL-2.0] website
- ENet - Надёжная сетевая библиотека UDP. [MIT] website
- evpp - Высокопроизводительные сети C++ с протоколами TCP/UDP/HTTP. [BSD]
- FTP client for C++ - Клиент C++ для выполнения FTP-запросов. [MIT]
- H2O - Оптимизированный HTTP-сервер с поддержкой HTTP/1.x и HTTP/2, который также можно использовать как библиотеку. [MIT]
- KCP - Быстрый и надёжный протокол ARQ, помогающий приложениям уменьшать сетевую задержку. [MIT]
- libcurl - Библиотека передачи файлов по нескольким протоколам. [MIT/X derivate license]
- libhttpserver - Библиотека C++ для создания встроенного HTTP-сервера REST и других приложений. [LGPL2.1]
- Libmicrohttpd - Небольшая библиотека C GNU libmicrohttpd, упрощающая запуск HTTP-сервера как части другого приложения. [LGPL v2.1+]
- libpcap - Переносимая библиотека C/C++ для захвата сетевого трафика. [BSD] website
- libquic - Библиотека протокола QUIC, извлечённая из реализации QUIC в Chromium. [BSD]
- librdkafka - Клиентская библиотека Apache Kafka для C и C++. [BSD-2-Clause]
- libwebsockets - Лёгкая чистая реализация WebSocket на C с библиотеками клиента и сервера. [LGPL2.1 + static link exception] website
- Lithium - Создавайте высокопроизводительные HTTP-серверы на C++ без глубоких знаний C++. [MIT]
- lwIP - Лёгкий стек TCP/IP. [Modified BSD]
- mailio - mailio — кроссплатформенная библиотека C++ для формата MIME и протоколов SMTP, POP3 и IMAP. [BSD]
- Mongoose - Чрезвычайно лёгкий веб-сервер. [GPL2]
- MQTT-C - Переносимый клиент MQTT на C для встраиваемых систем и обычных компьютеров. [MIT] website
- mTCP - Высокомасштабируемый стек TCP пользовательского уровня для многоядерных систем. [Modified BSD]
- Muduo - Неблокирующая сетевая библиотека C++ для многопоточных серверов Linux. [BSD]
- nghttp2 - Библиотека HTTP/2 для C. [MIT] website
- nghttp3 - Библиотека HTTP/3 на C. [MIT] website
- Onion - Библиотека HTTP-сервера на C, разработанная для лёгкости и простоты использования. [Apache2/GPL2]
- OpenDDS - Реализация службы распространения данных (DDS) Object Management Group (OMG) на C++ с открытым исходным кодом. [Apache2]
- PF_RING™ - Высокоскоростной фреймворк обработки пакетов. [LGPL-2.1] website
- PicoHTTPParser - Компактный примитивный быстрый парсер HTTP-запросов и ответов. [MIT]
- POCO :zap: - Библиотеки классов и фреймворки C++ для создания сетевых и интернет-приложений на настольных, серверных, мобильных и встраиваемых системах. [Boost] website
- Proxygen - Коллекция библиотек HTTP на C++ от Facebook, включая простой в использовании HTTP-сервер. [BSD]
- RedPanda - Платформа потоковой обработки данных для разработчиков. Совместима с API Kafka. В 10 раз быстрее. [BSL]
- RakNet - Кроссплатформенный сетевой движок C++ с открытым исходным кодом для разработчиков игр. [BSD]
- restclient-cpp - Простой REST-клиент для C++. Использует libcurl для HTTP-запросов. [MIT]
- Seasocks - Простой компактный встраиваемый веб-сервер на C++ с поддержкой WebSocket. [BSD]
- SNMP++ - API C++ с поддержкой SNMP v1/2c/v3. [custom permissive license]
- tlse - Реализация TLS 1.2/1.3 в одном файле C с tomcrypt в качестве криптографической библиотеки. [BSD-2-Clause]
- TQUIC - Высокопроизводительная лёгкая кроссплатформенная библиотека QUIC с интерфейсом для C и C++. [Apache2]
- Tufão - Асинхронный веб-фреймворк C++ на основе Qt. [LGPL2]
- uriparser - Библиотека разбора и обработки URI, строго соответствующая RFC 3986. [BSD-3-Clause]
- uWebSockets - µWS — одна из самых лёгких, эффективных и масштабируемых реализаций серверов WebSocket и HTTP. [Zlib]
- UCall - Высокопроизводительная библиотека RPC с ускорением SIMD на io_uring. [Apache2]
- WAFer - Сверхлёгкая программная платформа на C для масштабируемых серверных и сетевых приложений. Node.js для программистов на C. [GPL2]
- Wangle - Фреймворк клиентских и серверных приложений для построения асинхронных событийно-ориентированных сервисов на современном C++. [Apache-2.0]
- wdt - Встраиваемая библиотека (и инструмент командной строки) для максимально быстрой передачи данных между двумя системами по нескольким TCP-маршрутам. [BSD-3-Clause]
- WebSocket++ - Библиотека клиентов и серверов WebSocket на основе C++/Boost.Asio. [BSD]
- wspp - Современная библиотека WebSocket-клиента и сервера ws/wss в одном заголовочном файле без зависимостей. [MIT]
- PcapPlusPlus - Мультиплатформенный фреймворк C++ для перехвата сетевого трафика, разбора и формирования пакетов. [Unlicense]
- ZeroMQ - Высокоскоростная модульная асинхронная библиотека взаимодействия. [LGPL3/MPL2] website
- Zyre - Кластеризация локальной сети для одноранговых приложений. [MPL2]
- easyhttpcpp - Кроссплатформенная библиотека HTTP-клиента от Sony с кэшированием. [MIT]
- GameNetworkingSockets - Надёжные и ненадёжные сообщения через UDP от Valve. API с установлением соединения (как TCP). [BSD-3-Clause]
- wepoll - Обёртка epoll для Windows на основе Winsock. [BSD-2-Clause]
Office Open XML
Заголовок раздела «Office Open XML»Библиотеки для разбора и обработки файлов xlsx, pptx, docx и т. д.
- DuckX - Библиотека C++ для создания и изменения файлов Microsoft Word (.docx). [MIT]
- FreeXL - Библиотека с открытым исходным кодом для извлечения корректных данных из электронных таблиц. [MPL/GPL-2/LGPL-2]
- libxls - Чтение двоичных файлов Excel из C/C++. [BSD-2-Clause]
- libxlsxwriter - Библиотека C для создания файлов Excel XLSX. [BSD-2-Clause] website
- OpenXLSX - Библиотека C++ для чтения, записи, создания и изменения файлов Microsoft Excel® (.xlsx). [BSD-3-Clause]
- SimpleXlsxWriter - Средство записи файлов XLSX для Microsoft Excel 2007 и новее. [zlib]
- XLSX I/O - Библиотека C для чтения и записи файлов .xlsx. [MIT]
Библиотеки для разбора и обработки PDF-документов.
- libharu - Бесплатная кроссплатформенная библиотека с открытым исходным кодом для создания PDF. [zlib]
- litePDF - Библиотека создания и редактирования PDF-документов, использующая функции GDI через контекст устройства для рисования содержимого страницы. [LGPL v3 and zlib]
- MuPDF - Лёгкая программа просмотра PDF, XPS и электронных книг. [AGPL/Proprietary]
- PDF-Writer - Высокопроизводительная библиотека C++ для создания, изменения и разбора PDF-файлов. [Apache-2.0] website
- PDF4QT - Инструментарий PDF с библиотекой рендеринга и редактирования, просмотрщиком и инструментами командной строки. [MIT] website
- pdfio - Простая библиотека C для чтения и записи PDF-файлов. [Apache-2] website
- PDFium - Библиотека создания и рендеринга PDF. [BSD-3-Clause]
- PoDoFo - Библиотека для работы с форматом файлов PDF. [LGPL]
- Poppler - Открытая многобэкендовая библиотека рендеринга PDF, основанная на кодовой базе xpdf-3.0. [GPLv2/GPLv3]
- QPDF - Инструмент и библиотека C++ для преобразования PDF-файлов с сохранением содержимого. [Apache-2.0] website
- Xpdf - Xpdf — бесплатная программа просмотра PDF и набор инструментов, включая извлечение текста, преобразование изображений и HTML и многое другое. [GPL v2/GPL v3]
- DynaPDF - Простая в использовании библиотека генерации PDF. [Commercial]
Движки симуляции динамики.
- Box2D - Двумерный физический движок для игр. [BSD-like]
- Bullet - Трёхмерный физический движок для игр. [zlib] website
- Chipmunk - Быстрая и лёгкая библиотека физики 2D-игр. [MIT] website
- Jolt Physics - Многопоточная библиотека физики твёрдых тел и обнаружения столкновений. [MIT]
- Kratos - Фреймворк для создания параллельного междисциплинарного программного обеспечения симуляции с акцентом на модульность, расширяемость и высокую производительность. [BSD] website
- LiquidFun - Двумерный физический движок для игр. [BSD-like]
- Newton Dynamics - Комплексное решение для симуляции физических сред в реальном времени. [zlib]
- ODE - Open Dynamics Engine — высокопроизводительная библиотека с открытым исходным кодом для симуляции динамики твёрдых тел. [BSD&LGPL]
- ofxBox2d - Обёртка openFrameworks для Box2D. [BSD-like]
- PhysX - Промежуточный SDK физического движка реального времени с открытым исходным кодом, разработанный Nvidia в составе пакета Nvidia GameWorks. [BSD-3-Clause]
- PlayRho - Интерактивный физический движок и библиотека. [Zlib]
- Project Chrono - Открытый движок мультифизического моделирования. [BSD-3-Clause] website
- Quantum++ - Современная библиотека квантовых вычислений для C++11. [MIT]
- QuarkPhysics - Физический движок 2D-мягких и твёрдых тел. [MIT]
- Simbody - Высокопроизводительная библиотека многотельной динамики и физики C++ для симуляции сочленённых биомеханических и механических систем, например автомобилей, роботов и человеческого скелета. [Apache2]
- SOFA - SOFA — фреймворк с открытым исходным кодом для симуляции в реальном времени, ориентированный на медицинское моделирование. [LGPL] website
- tungsten - Высокопроизводительный физически корректный рендерер на C++. [zlib]
Рефлексия
Заголовок раздела «Рефлексия»- config-loader - Фреймворк статической рефлексии C++17, преобразующий файл конфигурации в нативную структуру данных. [MIT]
- Better Enums - Рефлексивные перечисления (преобразование в строку, итерация) в одном заголовочном файле. [BSD] website
- clReflect - Рефлексия C++ с помощью clang. [MIT]
- CPFG - Библиотека C++03 для рефлексии, обратных вызовов и привязки скриптов. [Apache2]
- CPP-Reflection - Рефлексия C++ с помощью clang. [MIT]
- Easy Reflection - Простое и быстрое решение для рефлексии и сериализации, как в Rust, Java или Go. [Apache]
- Enchantum - Современная библиотека C++17 только из заголовочного файла для рефлексии перечислений на этапе компиляции. [MIT]
- Magic Enum - Библиотека C++17 только из заголовочного файла для статической рефлексии перечислений (строка, преобразование из строки, итерация); работает с любыми перечислениями без макросов и шаблонного кода. [MIT]
- magic_get - Методы в стиле std::tuple для пользовательских типов без макросов и шаблонного кода. [Boost]
- meta - Система рефлексии времени выполнения на C++, только из заголовочного файла, без внедрения в типы и макросов. [MIT]
- Nameof - Библиотека C++17 только из заголовочного файла с макросами и функциями nameof для получения простых имён переменных, типов, функций, макросов и перечислений. [MIT]
- REFLECT - Библиотека статической рефлексии C++20. [MIT]
- reflect-cpp - Сериализация через рефлексию, включая автоматическое извлечение имён полей из структур. [MIT]
- RTTR - Библиотека рефлексии для C++11. [MIT] website
- simple_enum - Быстрая, понятная и типобезопасная библиотека поддержки перечислений C++. [BSL-1.0] website
- TSMP - Библиотека статической рефлексии C++20 без внедрения в типы и макросов. Извлекает данные рефлексии из исходного кода с помощью libclang и предоставляет их через специализацию шаблонов. [MIT]
- visit_struct - Миниатюрная библиотека рефлексии полей структур в C++. [Boost]
- Refureku - Библиотека рефлексии во время выполнения и генерации кода для C++17. [MIT]
Регулярные выражения
Заголовок раздела «Регулярные выражения»- CppVerbalExpressions - Простые в использовании регулярные выражения C++. [MIT]
- CTRE - Сопоставитель регулярных выражений, совместимый с PCRE (почти), на этапе компиляции. [MIT]
- Hyperscan - Hyperscan — высокопроизводительная библиотека сопоставления множества регулярных выражений от Intel. Одновременно сопоставляет большое число выражений (до десятков тысяч). Обычно используется в стеке библиотек DPI. [BSD]
- Oniguruma - Современная гибкая библиотека регулярных выражений с поддержкой различных кодировок символов. [BSD]
- PCRE - Библиотека регулярных выражений C, вдохновлённая возможностями регулярных выражений Perl. [BSD]
- PCRE2 - Набор функций C, реализующих сопоставление с шаблонами регулярных выражений. [BSD] website
- PIRE - Библиотека регулярных выражений Yandex, несовместимая с Perl. Может быть очень быстрой (более 400 МБ/с). [LPGL v3.0]
- RE2 - Программная библиотека регулярных выражений на основе конечного автомата и теории автоматов. [BSD-3-Clause]
- SLRE - Сверхлёгкий движок регулярных выражений для C/C++. [GPLv2/Proprietary]
- sregex - Библиотека движка регулярных выражений в стиле Perl на основе NFA/DFA без возврата, предназначенная для поиска в больших потоках данных. [BSD]
- SRELL - Шаблонная библиотека регулярных выражений C++ с поддержкой Unicode. [BSD]
- TRE - Библиотека приближённого сопоставления регулярных выражений и инструмент командной строки agrep. [BSD-2-Clause]
- Vectorscan - Переносимый форк высокопроизводительной библиотеки сопоставления регулярных выражений. [BSD-3-Clause]
- Pawn.Regex - Плагин Pawn с поддержкой регулярных выражений посредством std::regex из C++11. [MIT]
Робототехника
Заголовок раздела «Робототехника»- FusionCore - Библиотека объединения сенсорных данных ROS 2 UKF: объединяет GPS, IMU и одометрию колёс с адаптивным уровнем шума и отбрасыванием выбросов для надёжной локализации вне помещений. [Apache2]
- MOOS-IvP - Набор модулей C++ с открытым исходным кодом для обеспечения автономности робототехнических платформ, в частности автономных морских аппаратов.
- MRPT - Инструментарий программирования мобильных роботов. [BSD]
- PCL - Point Cloud Library — автономный крупномасштабный проект с открытым исходным кодом для обработки 2D/3D-изображений и облаков точек. [BSD] website
- Robotics Library (RL) - Автономная библиотека C++ для кинематики роботов, планирования движения и управления. [BSD]
- RobWork - Коллекция библиотек C++ для симуляции и управления робототехническими системами. [Apache2] website
- ROS - Robot Operating System предоставляет библиотеки и инструменты, помогающие разработчикам создавать приложения для роботов. [BSD]
- Ruckig - Генерация движения в реальном времени для роботов и машин. [MIT] website
- YARP (Yet Another Robot Platform) - Библиотека и инструментарий для коммуникации и интерфейсов устройств. [BSD-3-Clause] website
- SPICE Toolkit - Библиотека и инструментарий для вычисления геометрической информации при планировании и анализе научных наблюдений, полученных с роботизированных космических аппаратов. [MIT] website
Научные вычисления
Заголовок раздела «Научные вычисления»- AMGCL - Библиотека C++ для решения больших разреженных линейных систем методом алгебраического многосеточного решения, только из заголовочных файлов. [MIT]
- Au - Библиотека физических единиц, совместимая с C++14, без зависимостей и с возможностью поставки одним файлом. Акцент на безопасности, доступности, производительности и удобстве разработчика. [Apache 2.0] website
- FFTW - Библиотека C для вычисления дискретного преобразования Фурье в одном или нескольких измерениях. [GPL]
- GSL - Научная библиотека GNU. [GPL]
- preCICE - Библиотека сопряжения для разбиения мультифизических симуляций (FSI, CHT и др.). [LGPL] website
- TileDB - Быстрая СУБД для плотных и разреженных многомерных массивов. [MIT] website
- Trilinos - Высокопроизводительные решатели уравнений в частных производных. [BSD]
- Torch - Фреймворк научных вычислений с широкой поддержкой алгоритмов машинного обучения и приоритетной поддержкой GPU. [BSD-3-Clause] website
- volesti - Высокомерная выборка из усечённых распределений, выпуклая оптимизация и вычисление объёмов.
Скрипты
Заголовок раздела «Скрипты»- AngelScript - AngelScript — интерпретируемый/компилируемый скриптовый язык, ориентированный на игры. [zlib]
- Boost.Python - Библиотека C++, обеспечивающая бесшовное взаимодействие между C++ и языком программирования Python. [Boost] website
- cppimport - Импортируйте файлы C++ напрямую из Python! [MIT]
- CppSharp - Инструменты и библиотеки для связывания API C/C++ с высокоуровневыми языками. [MIT]
- ChaiScript - Простой встраиваемый скриптовый язык для C++. [BSD] website
- ctypes.sh - Интерфейс внешних функций для bash. [MIT]
- Cython - Cython — оптимизирующий статический компилятор для Python и расширенного языка Cython (на основе Pyrex). Он упрощает создание расширений C для Python до уровня простоты самого Python. [Apache] website
- djinni - Инструмент генерации объявлений типов и привязок интерфейсов для разных языков. [Apache2]
- Duktape - Встраиваемый движок JavaScript с компактным размером. [MIT] website
- JavaCpp - Недостающий мост между Java и нативным C++. [Apache2]
- JerryScript - Сверхлёгкий движок JavaScript для Интернета вещей. [Apache-2.0] website
- libffi - Переносимая библиотека интерфейса вызова внешних функций. [MIT] website
- Lua - Минималистичный и быстрый скриптовый движок для файлов конфигурации и простых скриптов приложений. [MIT]
- LuaBridge - Лёгкая библиотека без зависимостей для привязки Lua к C++. [MIT]
- LuaBridge3 - Лёгкая библиотека без зависимостей для привязки Lua, LuaJIT, Luau и Ravi к C++. [MIT]
- luacxx - API C++11 для создания привязок Lua. [MIT]
- Luau - Быстрый, компактный и безопасный встраиваемый скриптовый язык с постепенной типизацией, производный от Lua. [MIT] website
- MicroQuickJS - MicroQuickJS (или MQuickJS) — движок JavaScript для встраиваемых систем. [MIT]
- MiniScript - Современный, элегантный и простой в изучении скриптовый язык, легко встраиваемый в собственные проекты на C# или C++. [MIT]
- nanobind - Компактные и эффективные привязки C++/Python. [BSD-3-Clause]
- nbind - Волшебные заголовочные файлы, открывающие доступ к библиотеке C++ из JavaScript. [MIT]
- PHP-CPP - Библиотека для создания расширений PHP на C++. [Apache2] website
- pocketpy - Интерпретатор Python для скриптов в играх на C++17, только из заголовочного файла. [MIT] website
- pybind11 - Бесшовное взаимодействие между C++11 и Python. [BSD]
- QuickJS - Компактный встраиваемый движок JavaScript. [MIT]
- SIP - Генератор привязок C или C++ для Python 2 и 3. [GPL]
- sol2 - Обёртка API C++ ↔ Lua с расширенными возможностями и высочайшей производительностью. [MIT]
- SWIG - Генератор обёрток/интерфейсов, связывающий код C++ с JavaScript, Perl, PHP, Python, Tcl и Ruby. [GPL/Output not licensed] website
- txiki.js - Компактная среда выполнения JavaScript. [MIT]
- V7 - Встраиваемый движок JavaScript. [GPL2]
- V8 - Быстрый движок JavaScript от Google, который можно встроить в любое приложение C++. [BSD]
- v8pp - Библиотека C++ только из заголовочных файлов для предоставления классов и функций C++ в V8 и использования их в коде JavaScript. [BOOST] website
- ChakraCore Движок JavaScript от Microsoft, который можно встроить в nodejs. [MIT]
- MuJS - Встраиваемый интерпретатор JavaScript на C. [ISC] website
- hobbes - Язык и встраиваемый JIT-компилятор от Morgan Stanley. [Apache-2.0]
Сериализация
Заголовок раздела «Сериализация»- BitSerializer - Многоформатная библиотека сериализации (JSON, XML, YAML, CSV, MsgPack). [MIT]
- Bitsery - Библиотека бинарной сериализации C++, только из заголовочного файла. [MIT]
- Bond - Кроссплатформенный фреймворк с открытым исходным кодом для работы с данными по схеме. [MIT]
- Boost.Serialization - Библиотека сериализации Boost. [Boost] website
- Cap’n Proto - Быстрый формат обмена данными и RPC-система на основе возможностей. [MIT] website
- cereal - Библиотека сериализации для C++11. [BSD]
- cista - Библиотека C++17 для высокопроизводительной сериализации и десериализации без копирования. [MIT]
- cppcodec - Библиотека C++11 только из заголовочных файлов для кодирования и декодирования Base64, Base32 и шестнадцатеричных данных с единообразным гибким API. [MIT]
- FastBinaryEncoding - Fast Binary Encoding — сверхбыстрое универсальное решение для сериализации на C++, C#, Go, Java, JavaScript, Kotlin, Python, Ruby и Swift. [MIT]
- FlatBuffers - Эффективная по памяти библиотека сериализации. [Apache2]
- Kaitai Struct - Декларативный язык описания различных двоичных структур данных и компилятор, генерирующий код парсеров C++. [GPLv3+][MIT][Apache2]
- iguana - Современный универсальный удобный движок сериализации на C++20 и C++17. [Apache2]
- MessagePack - Эффективный двоичный формат сериализации «как JSON» для C и C++. [Apache2] website
- mrpt-serialization - Версионируемая сериализация в двоичные и текстовые форматы. [BSD] website
- nanopb - Компактная реализация Protocol Buffers на ANSI C. [Zlib]
- protobuf - Protocol Buffers — формат обмена данными от Google. [BSD]
- protobuf-c - Реализация Protocol Buffers на C. [BSD]
- Protocol Puffers - Небольшая шаблонная библиотека C++20 для сериализации/десериализации, совместимая с protobuf и только из заголовочных файлов. [Apache-2.0]
- SimpleBinaryEncoding - Кодирование и декодирование сообщений приложений в двоичном формате для приложений с низкой задержкой. [Apache2]
- upb - Компактная реализация protobuf на C. [BSD]
- Wirehair - Помехоустойчивый код Фонтана O(N) для больших данных. [BSD-3-Clause]
- YAS - Очень быстрая библиотека сериализации бинарных, текстовых и JSON-форматов. [Boost]
- zpp_bits - Пожалуй, самая быстрая современная библиотека сериализации. Просто посмотрите это видео.
- fbthrift - Ветка Apache Thrift от Facebook, включающая библиотеку сериализации и RPC-фреймворк. [Apache-2.0]
Последовательный порт
Заголовок раздела «Последовательный порт»- Asio - Asio содержит классы для переносимого создания последовательных портов и управления ими. [Boost] website
- Boost.Asio - Boost.Asio содержит классы для переносимого создания последовательных портов и управления ими. [Boost] website
- CSerialPort - Лёгкая кроссплатформенная библиотека последовательного порта. [LGPL3]
- Libserial - Программирование последовательного порта на C++. [BSD-3-Clause]
- Serial Communication Library - Кроссплатформенная библиотека последовательного порта на C++. [MIT] website
Сортировка
Заголовок раздела «Сортировка»- cpp-sort - Алгоритмы сортировки и связанные инструменты для C++14. [MIT]
- pdqsort - Быстрая сортировка, устойчивая к шаблонам входных данных. [zlib]
- Timsort - Шаблонная стабильная сортировка, превосходящая алгоритмы на основе быстрой сортировки, включая std::sort, для обратных или частично отсортированных данных. [MIT]
- Indiesort - Обёртка сортировки, позволяющая применять std::sort и другие алгоритмы для произвольного доступа к контейнерам без произвольного доступа; также ускоряет сортировку крупных или нетривиально копируемых типов в контейнерах и массивах с произвольным доступом. [zLib] website
- x86-simd-sort - Шаблонная библиотека C++ высокопроизводительных алгоритмов сортировки на основе SIMD. [BSD-3-Clause]
- libvpx - SDK кодека VP8/VP9. [BSD]
- FFmpeg - Полнофункциональное кроссплатформенное решение для записи, преобразования и потоковой передачи аудио и видео. [LGPL2/GPL2]
- avcpp - Современная обёртка FFmpeg для C++. [MIT]
- libde265 - Реализация открытого видеокодека H.265. [LGPL] website
- x265 - Реализация открытого видеокодека H.265. [GPL2] website
- OpenH264 - Кодек H.264 с открытым исходным кодом. [BSD] website
- Theora - Свободный открытый формат сжатия видео. [BSD]
- Vireo - Лёгкая универсальная библиотека обработки видео от Twitter. [MIT]
- libuvc - Кроссплатформенная библиотека для USB-видеоустройств. [BSD]
Виртуальные машины
Заголовок раздела «Виртуальные машины»- CarpVM - «Интересная» виртуальная машина на C. Посмотрим, что из этого выйдет. [GPLv3]
- MicroPython - Ставит целью запуск реализации Python 3.x на микроконтроллере. [MIT]
- TinyVM - Небольшая быстрая лёгкая виртуальная машина, написанная на чистом ANSI C. [MIT]
Веб-фреймворки
Заголовок раздела «Веб-фреймворки»- aeronet - Высокопроизводительный модульный микрофреймворк C++ для HTTP/1.1, HTTP/2 и WebSocket, ориентированный на производительность и масштабируемость. [MIT]
- Civetweb - Простой и мощный встраиваемый веб-сервер C/C++ с необязательной поддержкой CGI, SSL и Lua. [MIT]
- C++ REST SDK - Проект Microsoft для облачного клиент-серверного взаимодействия в нативном коде с современным асинхронным API C++. [MIT]
- CppCMS - Бесплатный высокопроизводительный фреймворк веб-разработки (не CMS). [LGPLv3]
- Crow - Crow — микрофреймворк C++ для веб-служб с маршрутизацией, похожей на Python Flask. [BSD] website
- Cutelyst - Веб-фреймворк C++ на базе Qt, использующий простой подход фреймворка Catalyst (Perl). [BSD-3-Clause] website
- Drogon - Высокопроизводительный фреймворк HTTP-приложений на C++17/20. [MIT]
- C++ wfrest - Веб-фреймворк C++ для REST API. [Apache2]
- facil.io - Событийный высокопроизводительный веб-фреймворк на C с поддержкой HTTP, WebSocket, SSE и др. [MIT] website
- Kore - Сверхбыстрый гибкий веб-сервер и фреймворк веб-приложений на C. [ISC]
- libOnion - Лёгкая библиотека, помогающая создавать веб-серверы на языке C. [LGPLv3]
- lwan - Экспериментальный масштабируемый высокопроизводительный HTTP-сервер. [GPL2]
- Mach - Современный веб-фреймворк C++20 с акцентом на производительность, безопасность типов и удобство разработчика. [MIT] website.
- oat++ - Лёгкий фреймворк без зависимостей для создания высокопроизводительных веб-служб. [Apache-2.0] website
- Pistache - Pistache — REST-фреймворк C++ на чистом C++11 без внешних зависимостей. [Apache2]
- QDjango - Веб-фреймворк на C++ поверх библиотеки Qt. По возможности следует API Django, откуда и происходит его название. [LGPL]
- TreeFrog Framework - Высокоскоростной полнофункциональный веб-фреймворк на C++ и Qt с поддержкой HTTP и WebSocket (с ORM). [BSD] website
- userver - Асинхронный фреймворк C++17 с богатым набором абстракций и драйверов баз данных для быстрой и удобной разработки эффективных микросервисов, служб и утилит. [Apache-2.0] website
- Wt - Библиотека C++ для разработки веб-приложений. [GPL/Proprietary]
- httpserver.h - Библиотека HTTP-сервера для C в одном заголовочном файле. [MIT]
- libhttp - Кроссплатформенная библиотека HTTP и HTTPS на C/C++. [MIT]
XML — отстой. Правда. Никаких оправданий. XML неприятно разбирать людям, а для компьютеров это вообще катастрофа. Нет никаких причин существовать этой ужасной дряни. — Линус Торвальдс
- Boost.PropertyTree - Парсер/генератор дерева свойств для XML, JSON, INI и Info-файлов. [Boost] website
- Expat - Библиотека парсера XML, написанная на C. [MIT]
- Libxml2 - Парсер и инструментарий XML на C от Gnome. [MIT]
- libxml++ - Парсер XML для C++. [LGPL2]
- Mini-XML - Небольшая библиотека разбора XML на ANSI C. [LGPL2 with exceptions]
- PugiXML - Лёгкий, простой и быстрый парсер XML для C++ с поддержкой XPath. [MIT]
- RapidXml - Попытка создать максимально быстрый парсер XML, сохранив удобство использования, переносимость и разумное соответствие W3C. [Boost]
- TinyXML - Простой компактный минималистичный парсер XML на C++, который легко интегрировать в другие программы. [zlib]
- TinyXML2 - Простой компактный эффективный парсер XML на C++, легко интегрируемый в другие программы. [zlib]
- TinyXML++ - Полностью новый интерфейс к TinyXML, использующий многие преимущества C++: шаблоны, исключения и значительно улучшенную обработку ошибок. [MIT]
- Xalan C - Библиотека и программа командной строки для преобразования XML-документов с помощью таблиц стилей, соответствующих стандарту XSLT 1.0. [Apache-2.0] website
- Xerces-C++ - Проверяющий парсер XML на переносимом подмножестве C++. [Apache2]
- fkYAML - Библиотека YAML для C++, только из заголовочных файлов. [MIT]
- LibCYAML - Библиотека C для чтения и записи YAML. [ISC]
- libfyaml - Продвинутый парсер и средство записи YAML 1.2 и JSON. [MIT]
- LibYAML - Библиотека C для разбора и генерации YAML. [MIT] website
- mini-yaml - Сериализатор/десериализатор YAML 1.0 для C++11 в одном заголовочном файле. [MIT]
- rapidyaml - Rapid YAML — библиотека C++ для разбора и генерации YAML. [MIT]
- yaml-cpp - Парсер и генератор YAML на C++. [MIT]
Полезные библиотеки и инструменты, не подходящие к категориям выше или пока не распределённые по категориям.
- access_profiler - Инструмент подсчёта обращений к полям-членам в программах на C++. [GPL3]
- American fuzzy lop a.k.a. afl-fuzz - Мощный инструмент фаззинга, который со временем автоматически обнаруживает ошибки по минимальному примеру входных данных. [Apache2]
- Argon2 - Хеш паролей Argon2, победитель конкурса PHC. [CC0/Apache2]
- AsmJit - Генерация машинного кода с низкой задержкой. [Zlib] website
- Better String - Альтернатива библиотеке строк для C: более функциональная и лишённая проблем переполнения буфера. Также включает обёртку C++. [BSD, GPL2]
- Boost.Signals2 - Реализация управляемой системы сигналов и слотов. [Boost] website
- casacore - Набор базовых библиотек C++, производных от aips++. [LGPL]
- CCTZ - Библиотека C++ для преобразования между абсолютным и календарным временем с учётом часовых поясов. [Apache-2.0]
- Cheat Sheets of HackingCPP - Отличные шпаргалки и инфографика по алгоритмам, представлениям, контейнерам, случайным числам и др.
- Concord - Библиотека-обёртка API Discord на C. [MIT] website
- CPPItertools - Дополнения к циклу for на диапазонах, вдохновлённые встроенными средствами и библиотекой itertools Python. [BSD-2-Clause]
- CPP-JWT - Библиотека JSON Web Token для C++. [MIT]
- cpp-lazy - Быстрая и простая библиотека ленивых вычислений для C++11/14/17/20. [MIT]
- CRCpp - Простая в использовании и быстрая библиотека CRC для C++. [BSD-3-Clause]
- cxx-prettyprint - Библиотека форматированного вывода контейнеров C++. [Boost]
- date - Библиотека даты и времени на основе заголовка
C++11/14/17. [MIT] website - D++ (DPP) - Лёгкая высокопроизводительная масштабируемая библиотека C++ для создания ботов Discord. [Apache2] website
- Dragonbox - Эталонная реализация нового алгоритма преобразования чисел с плавающей запятой в строки на C++. [Apache2/BSL-1.0]
- DynaMix - Библиотека, позволяющая составлять и изменять объекты во время выполнения. [MIT]
- emio - Безопасная и быстрая высокоуровневая и низкоуровневая библиотека символьного ввода-вывода. [MIT]
- faker-cxx - Библиотека Faker для C++20, генерирующая реалистичные фиктивные данные для тестирования и разработки. [MIT]
- fast_float - Быстрая и точная реализация C++ from_chars, в 4–10 раз быстрее strtod; входит в GCC 12, Chromium, Redis и WebKit/Safari. [Apache2/BSL-1.0/MIT]
- FastFormat - Быстрое безопасное форматирование C++, вдохновлённое log4j и Pantheios. [Simplified BSD]
- fast_io - Значительно более быстрый ввод-вывод для C++20. [MIT]
- fccf - Инструмент командной строки, рекурсивно ищущий в каталоге исходный код C/C++, соответствующий строке поиска. [MIT]
- ffc.h - Ускоренный разбор float/double для C99 в одном заголовочном файле. Порт библиотеки fast_float. [Apache-2.0/BSL-1.0/MIT]
- {fmt} :zap: - Компактная, безопасная и быстрая библиотека форматирования для C++. [Simplified BSD] website
- gcc-poison - Простой заголовочный файл, запрещающий разработчикам использовать небезопасные функции C/C++ в приложениях.
- Gear-Lib - Коллекция базовых библиотек POSIX C для разработки встраиваемых систем и сетевых служб. [MIT]
- happly - Парсер формата файлов PLY для C++, только из заголовочного файла. Разбирайте .ply с удовольствием! [MIT]
- hedley - Заголовочный файл C/C++, сглаживающий некоторые неудобства, связанные с особенностями платформ. website
- Hexi - Лёгкая библиотека C++ только из заголовочных файлов для двоичных потоков и сериализации. [Apache-2.0/MIT]
- HighwayHash - Быстрые надёжные хеш-функции: SipHash/HighwayHash. [Apache-2.0]
- inja - Движок шаблонов для современного C++. [MIT]
- Jinja2С++ - Реализация почти полностью соответствующего спецификации движка шаблонов. website
- jwt-cpp - Библиотека C++ для создания и проверки JSON Web Token, только из заголовочного файла. [MIT]
- Kangaru - Контейнер внедрения зависимостей для C++11 и C++14. [MIT]
- Klib - Небольшие и лёгкие реализации распространённых алгоритмов и структур данных. [MIT]
- KOMIHASH - Очень быстрая высококачественная хеш-функция с дискретно-инкрементальным и потоковым хешированием. [MIT]
- libcpuid - Небольшая библиотека C для обнаружения процессоров x86 и извлечения их возможностей. [BSD]
- libenvpp - Современная библиотека C++ для типобезопасного разбора переменных окружения. [Apache-2.0]
- libevil - Злой менеджер лицензий. [GPLv3]
- libnih - Лёгкая библиотека функций и структур C. [GPL2.1]
- libONVIF - Ещё одна библиотека ONVIF. [GPL-3.0]
- libpopcnt - Быстрая библиотека подсчёта установленных битов C/C++. [BSD-2-Clause]
- libsigc++ - Типобезопасная система обратных вызовов для стандартного C++. [LGPL] website
- libusb - Универсальная библиотека USB для переносимого доступа к USB-устройствам. [LGPL2]
- Mach7 - Библиотека сопоставления с образцом для C++. [BSD]
- minja.hpp - Минималистичный движок шаблонов Jinja для шаблонов диалогов LLM на C++. [MIT]
- mio - Кроссплатформенная библиотека C++11 для ввода-вывода с файлами, отображёнными в память, только из заголовочных файлов. [MIT]
- MPark.Variant - std::variant из C++17 для C++11/14/17. [BSL-1.0]
- MPH - Библиотека минимального статического идеального хеширования для C++20. [MIT]
- Patternia - Реализация сопоставления с образцом для современного C++. [MIT] website
- PEGTL - Библиотека шаблонов грамматик выражений разбора. [MIT]
- Pipes - Конвейеры для выразительной обработки коллекций в C++. [MIT]
- pprint - Форматированный вывод для современного C++. [MIT]
- pspsdk - SDK с открытым исходным кодом для разработки домашних программ PSP. [BSD/GNU GPL3]
- QtVerbalExpressions - Библиотека Qt на основе библиотеки C++ VerbalExpressions. [MIT]
- rain - Самая быстрая некриптографическая хеш-функция на 128 и 256 бит; проходит все тесты и занимает менее 140 строк исходного кода. [Apache-2.0]
- RapidFuzz - Быстрое нечёткое сопоставление строк на C++ с использованием расстояния Левенштейна. [MIT] website
- rapidhash - Очень быстрый высококачественный независимый от платформы алгоритм хеширования. [BSD-2-Clause]
- Reaction - Лёгкий реактивный фреймворк C++20 только из заголовочных файлов, использующий современные возможности C++ для эффективных приложений обработки потоков данных. [MIT]
- reproc - Кроссплатформенная библиотека процессов (C99/C++11). [MIT]
- SafetyHook - Библиотека перехвата процедур для C++23. [BSL-1.0]
- scnlib - scanf для современного C++. [Apache-2.0] website
- Scintilla - Бесплатный компонент редактирования исходного кода. [MIT]
- SDS - Библиотека простых динамических строк для C. [BSD]
- semver.c - Парсер и средство вывода semver на ANSI C. [MIT]
- sigslot - Библиотека сигналов/слотов C++. [PublicDomain]
- SIMD Everywhere - Реализации наборов SIMD-инструкций для систем, которые не поддерживают их нативно. [MIT]
- SLJIT - Независимый от платформы низкоуровневый JIT-компилятор. [BSD] website
- palacaze/sigslot - Простая реализация сигналов/слотов C++14 только из заголовочного файла. [MIT]
- simdzone - Быстрый парсер DNS-зон, соответствующий стандартам. [BSD-3-Clause]
- SimpleSignal - Высокопроизводительные сигналы C++11. [PublicDomain]
- single_file_libs - Библиотеки C/C++ с открытым исходным кодом и минимумом зависимостей. [Various]
- Spicy - Генератор парсеров C++ для анализа протоколов и файлов. [BSD] website
- Stage - Симулятор мобильных роботов. [GPL2]
- stb :zap: - Набор библиотек C/C++ в отдельных файлах. [PublicDomain]
- stdman - Инструмент разбирает архивные HTML-файлы cppreference и создаёт страницы руководства в формате groff для Unix-подобных систем. [MIT]
- StringZilla - Годзилла среди библиотек строк: разделяет, сортирует и перемешивает большие текстовые наборы данных быстрее, чем можно сказать «Токийская башня». [Apache-2.0]
- StrTk - Библиотека C++ с высокопроизводительными процедурами обработки строк. [MIT]
- tgbotxx - Библиотека C++ для ботов Telegram. [MIT]
- The RaBitQ Library - Лёгкая библиотека для алгоритма RaBitQ. [Apache-2.0] website
- tiny::optional - Замена std::optional, не расходующая память без необходимости. [BSL-1.0]
- Tulip Indicators - Библиотека C, включающая более 100 индикаторов технического анализа финансовых данных. [LGPL]
- ub-canaries - Коллекция программ C/C++, пытающихся заставить компиляторы использовать неопределённое поведение.
- value-category-cheatsheet PDF-шпаргалка по lvalue, rvalue и подобным понятиям. [Jank copyleft]
- VarTypes - Функциональный объектно-ориентированный фреймворк для управления переменными в C++/Qt4. [LGPL]
- Wildcards - Простая шаблонная библиотека C++ только из заголовочного файла, реализующая сопоставление с использованием подстановочных знаков. [BSL-1.0]
- xjb - Быстрый алгоритм преобразования чисел с плавающей запятой в строки. [Apache-2.0]
- xxHash - Чрезвычайно быстрый некриптографический алгоритм хеширования. [BSD-2-Clause] website
- xxhash_cpp - Порт библиотеки xxhash на C++17. [BSD-2-Clause]
- ZBar - Библиотека сканирования штрихкодов, позволяющая находить штрихкоды на фотографиях, изображениях и в видеопотоках и возвращать их значения. [LGPL2]
- ZXing - Библиотека обработки изображений штрихкодов 1D/2D с открытым исходным кодом, написанная на Java и портированная на другие языки. [Apache]
- spy - Библиотека constexpr для C++17, определяющая на этапе компиляции ОС, компилятор, архитектуру и SIMD. [MIT]
- licensepp - Библиотека управления лицензиями ПО для проектов C++. [Apache-2.0]
- tinydir - Лёгкая переносимая библиотека C для чтения каталогов и файлов, простая для интеграции. [BSD-2-Clause]
- Cello - Программирование высокого уровня на C, включая универсальные структуры данных и полиморфизм. [BSD-2-Clause] website
- dyno - Библиотека C++ для полиморфизма времени выполнения с семантикой значений. [Boost]
- PolyHook - Библиотека перехвата x86/x64 на C++. [MIT]
- Verdigris - Библиотека только из заголовочных файлов, позволяющая использовать Qt без moc. [MIT]
- Flicks - Единица времени, определённая Facebook/Oculus для точного представления распространённых частот кадров. [BSD]
- Linq - Предоставляет синтаксис LINQ для включений списков в C++. [Boost]
- libcorrect - Библиотека C для свёрточных кодов и коррекции ошибок Рида—Соломона. [BSD-3-Clause]
- libfsm - Библиотека создания и выполнения конечных автоматов, включая regex и glob. [BSD-2-Clause]
- origin - Библиотека C++ для концептов, диагностики и других базовых утилит.
Программное обеспечение
Заголовок раздела «Программное обеспечение»Программное обеспечение для создания среды разработки.
Компиляторы
Заголовок раздела «Компиляторы»Список компиляторов C и C++.
- 8cc - Небольшой компилятор C.
- c - Компилируйте и выполняйте «скрипты» C за один шаг! [MIT]
- Clang - Компилятор C для LLVM. Поддерживает C++11/14/1z, C11. Разработан командой LLVM. [NCSA]
- Fil-C - Фанатично совместимая реализация C и C++ с безопасным управлением памятью.
- GCC - Коллекция компиляторов GNU. Поддерживает C++11/14/1z, C11 и OpenMP. [GNU GPL3]
- PCC - Очень старый компилятор C. Поддерживает C99.
- AMD C++ Compiler - Разработан AMD.
- Intel C++ Compiler - Разработан Intel.
- LLVM - Коллекция модульных и повторно используемых технологий компиляторов и цепочек инструментов.
- Microsoft Visual C++ - MSVC, разработанный Microsoft.
- Open WatCom - Кросс-компиляторы и инструменты Watcom C, C++ и Fortran. [Sybase Open Watcom Public License]
- Oracle Solaris Studio - Компилятор C, C++ и Fortran для SPARC и x86. Поддерживает C++11. Доступен для Linux и Solaris. [OTN Developer License]
- TCC - Миниатюрный компилятор C. [LGPL]
- sierra - Язык программирования с архитектурой CISC, ориентированный на создание сопровождаемых программ.
- movfuscator - Компилятор C с единственной инструкцией: преобразует программы в набор инструкций mov. [MIT]
Онлайн-компиляторы
Заголовок раздела «Онлайн-компиляторы»Список онлайн-компиляторов C и C++.
- codechef - Простой онлайн-компилятор CodeChef.
- coliru - Онлайн-компилятор и оболочка с поддержкой различных компиляторов C++.
- Compiler Explorer - Интерактивный компилятор с возможностью вывода ассемблерного кода.
- CompileOnline - Компиляция и выполнение C++ онлайн в Linux.
- Ideone - Онлайн-компилятор и отладчик, позволяющий компилировать исходный код и выполнять его онлайн более чем на 60 языках программирования.
- OneCompiler - Онлайн-компилятор с поддержкой более 70 языков программирования и систем баз данных.
- Programiz - Онлайн-компилятор для учащихся и разработчиков.
- repl.it - Мощные, но простые инструменты и платформы для преподавателей, учащихся и разработчиков.
- Rextester - Онлайн-компилятор с несколькими компиляторами (Clang, GCC, MSVC) и редакторами.
- Try It Online - TIO — семейство онлайн-интерпретаторов для постоянно расширяющегося списка практических и развлекательных языков программирования.
- Wandbox - Онлайн-компилятор Clang/GCC с доступной библиотекой Boost.
- paiza.io - Онлайн-компилятор C/C++ с поддержкой нескольких файлов, интеграцией GitHub (gist) и совместным редактированием.
- InterviewBit - Простой и удобный онлайн-компилятор C++.
Отладчики
Заголовок раздела «Отладчики»Список отладчиков C и C++.
- Comparison of debuggers - Список отладчиков из Википедии.
- GDB - Отладчик GNU.
- LLDB - Отладчик LLDB.
- Metashell - Интерактивная оболочка метапрограммирования шаблонов с метаотладчиком MDB.
- Valgrind - Инструмент отладки памяти, обнаружения утечек и профилирования.
- x64dbg - Отладчик x64/x32 для Windows с открытым исходным кодом.
Интегрированные среды разработки
Заголовок раздела «Интегрированные среды разработки»Список популярных IDE для C и C++.
- Anjuta DevStudio - IDE GNOME. [GPL3]
- AppCode - IDE для разработки на Objective-C, C, C++ и JavaScript на платформе JetBrains IntelliJ IDEA.
- Cevelop - Кроссплатформенная IDE для C и C++ на базе Eclipse CDT с дополнительными плагинами.
- CLion - Кроссплатформенная IDE для C и C++ от JetBrains.
- Code::Blocks - Бесплатная IDE для C, C++ и Fortran.
- CodeLite - Ещё одна бесплатная кроссплатформенная IDE для C и C++. [GPL2 with an exception for plugins]
- Dev-C++ - Переносимая IDE для C/C++/C++11.
- Eclipse CDT - Полнофункциональная IDE C и C++ на базе платформы Eclipse.
- Embarcadero Dev-CPP - Форк Dev-C++, поставляемый с новыми темами и современными компиляторами. [GPLv2] website
- Geany - Небольшая быстрая кроссплатформенная IDE. [GPL]
- IBM VisualAge - Семейство интегрированных сред разработки IBM.
- Irony-mode - Режим C/C++ для Emacs на базе libclang.
- juCi++ - Кроссплатформенная лёгкая IDE для C++ с интеграцией libclang. [MIT]
- KDevelop - Бесплатная IDE с открытым исходным кодом.
- Microsoft Visual Studio - IDE от Microsoft.
- Microsoft Visual Studio Code :zap: - IDE с открытым исходным кодом от Microsoft. [MIT] website
- NetBeans - IDE для разработки преимущественно на Java, а также на других языках, в частности PHP, C/C++ и HTML5.
- Qt Creator :zap: - Кроссплатформенная IDE для C++, JavaScript и QML, входящая в SDK Qt. [GPL3 with exceptions] website
- rtags - Клиент-серверный индексатор C/C++ для интеграции с Emacs на базе clang.
- Xcode - Разработана Apple.
- YouCompleteMe - YouCompleteMe — быстрый движок автодополнения кода для Vim с нечётким поиском по мере ввода.
- C Playground - Online C Programming IDE - Онлайн-IDE для практики программирования на C, позволяющая писать, редактировать и запускать код в интернете.
Системы сборки
Заголовок раздела «Системы сборки»- awesome-cmake - Подборка отличных скриптов, модулей и ресурсов CMake.
- Bazel - Быстрая масштабируемая система сборки для нескольких языков от Google. [Apache]
- Bear - Инструмент генерации базы данных компиляции для инструментов clang. [GPLv3]
- Buck - Быстрая система сборки, поощряющая создание небольших повторно используемых модулей для разных платформ и языков, включая C++; разработана и используется в Facebook. Написана на Java. [Apache]
- build2 - Кроссплатформенный набор инструментов для сборки, упаковки и управления зависимостями при разработке и упаковке проектов C/C++. [MIT]
- Ccache - Быстрый кэш компилятора C/C++. [GPLv3]
- clib - Менеджер пакетов для языка программирования C. [MIT]
- CMake - Бесплатное кроссплатформенное ПО с открытым исходным кодом для управления процессом сборки независимым от компилятора способом. [BSD]
- Cget - Загрузка пакетов CMake. [Boost] website
- Conan - Менеджер пакетов C/C++ с открытым исходным кодом. [MIT]
- CPM - Менеджер пакетов C++ на базе CMake и Git.
- FASTBuild - Высокопроизводительная система сборки с поддержкой масштабируемой компиляции, кэширования и распределения по сети.
- Hunter - Кроссплатформенный менеджер пакетов C++ на базе CMake. [BSD-2]
- MesonBuild - Система сборки с открытым исходным кодом, созданная для максимальной скорости и удобства использования.
- Ninja - Небольшая система сборки, ориентированная на скорость.
- Sccache - Быстрый кэш компилятора C/C++ с поддержкой разных платформ и облачного хранилища.
- Scons - Инструмент сборки ПО, настраиваемый скриптом Python.
- Sconsolidator - Интеграция системы сборки SCons с Eclipse CDT.
- Spack - Гибкий менеджер пакетов с поддержкой нескольких версий, конфигураций, платформ и компиляторов. [Apache-2.0/MIT]
- SW - Кроссплатформенная система сборки C++ и других языков и менеджер пакетов с большим набором доступных пакетов. [GPLv3]
- tundra - Высокопроизводительная система сборки кода, обеспечивающая максимально быструю инкрементальную сборку даже очень крупных проектов.
- tup - Файловая система сборки, отслеживающая в фоновом режиме изменения файлов.
- Premake - Инструмент, настраиваемый скриптом Lua, для генерации файлов проектов Visual Studio, GNU Make, Xcode, Code::Blocks и других под Windows, Mac OS X и Linux.
- Vcpkg - Менеджер библиотек C++ для Windows, Linux и macOS. [MIT]
- waf - Фреймворк на Python для настройки, компиляции и установки приложений. [BSD] website
- XMake - Кроссплатформенная утилита сборки C/C++ на Lua со встроенным менеджером пакетов xrepo. [Apache]
- boost-cmake - Модули CMake для библиотек Boost. [BSD-3-Clause]
- cmake-examples - Коллекция полезных примеров CMake для различных сценариев. [MIT]
Статический анализ кода
Заголовок раздела «Статический анализ кода»Инструменты для повышения качества и сокращения числа дефектов с помощью анализа кода.
- Cppcheck - Инструмент статического анализа кода C/C++. source
- CppDepend - Упрощает управление сложной кодовой базой C/C++ с помощью анализа и визуализации зависимостей кода, определения правил проектирования, анализа влияния и сравнения версий кода.
- cpplint - Проверка стиля C++ по руководству Google.
- PVS-Studio - Инструмент обнаружения ошибок в исходном коде программ на C, C++ и C#.
- cpp-dependencies - Инструмент проверки зависимостей директив #include в C++ (графы зависимостей формируются в формате .dot). [Apache]
- include-what-you-use - Инструмент для clang, анализирующий директивы включения в исходных файлах C и C++. website
- Infer - Статический анализатор Java, C и Objective-C. [BSD]
- OCLint - Инструмент статического анализа исходного кода для повышения качества и сокращения числа дефектов в C, C++ и Objective-C. source
- Clang Static Analyzer - Инструмент анализа исходного кода, обнаруживающий ошибки в программах на C, C++ и Objective-C.
- Linticator - Интеграция Pc-/FlexeLint с Eclipse CDT.
- IKOS - Статический анализатор C/C++ на основе теории абстрактной интерпретации. [NOSA 1.3]
- List of tools for static code analysis - Список инструментов статического анализа кода из Википедии.
- OptView2 - Проверка пропущенных оптимизаций Clang.
- Trunk - Набор инструментов для проверки, тестирования, слияния и мониторинга кода.
- CodeCompass - Инструмент понимания кода с открытым исходным кодом для крупных проектов C/C++. [GPL-3.0]
- CodeChecker - Инструментарий анализатора, база дефектов и расширение-просмотрщик для Clang Static Analyzer и Clang-Tidy. [Apache-2.0]
Инструменты форматирования кода
Заголовок раздела «Инструменты форматирования кода»- Artistic Style - Инструмент форматирования кода C/C++/C#/Objective-C/Java, также известный как astyle.
- ClangFormat - Инструмент форматирования кода C/C++/Objective-C.
- Clang-Tidy - Инструмент линтинга C++ на базе Clang.
- EditorConfig - EditorConfig помогает поддерживать единый стиль кода в разных редакторах и IDE.
- Uncrustify - Форматировщик кода.
Ресурсы
Заголовок раздела «Ресурсы»Различные ресурсы, например книги, веб-сайты и статьи, для развития навыков и знаний C++.
Проектирование API
Заголовок раздела «Проектирование API»Отличные статьи по C++.
- CppCon 2023 Presentation Materials - Материалы презентаций CppCon 2023.
- CppCon 2022 Presentation Materials - Материалы презентаций CppCon 2022.
- CppCon 2021 Presentation Materials - Материалы презентаций CppCon 2021.
- CppCon 2020 Presentation Materials - Материалы презентаций CppCon 2020.
- CppCon 2019 Presentation Materials - Материалы презентаций CppCon 2019.
- CppCon 2018 Presentation Materials - Материалы презентаций CppCon 2018.
- CppCon 2017 Presentation Materials - Материалы презентаций CppCon 2017.
- CppCon 2016 Presentation Materials - Материалы презентаций CppCon 2016.
- CppCon 2015 Presentation Materials - Материалы презентаций CppCon 2015.
- CppCon 2014 Presentation Materials - Материалы презентаций CppCon 2014.
- C++Now 2023 Presentations - Материалы презентаций C++Now 2023.
- C++Now 2022 Presentations - Материалы презентаций C++Now 2022.
- C++Now 2021 Presentations - Материалы презентаций C++Now 2021.
- C++Now 2019 Presentations - Материалы презентаций C++Now 2019.
- C++Now 2018 Presentations - Материалы презентаций C++Now 2018.
- C++Now 2017 Presentations - Материалы презентаций C++Now 2017.
- C++Now 2016 Presentations - Материалы презентаций C++Now 2016.
- C++Now 2015 Presentations - Материалы презентаций C++Now 2015.
- C++Now 2014 Presentations - Материалы презентаций C++Now 2014.
- C++Now 2013 Presentations - Материалы презентаций C++Now 2013.
- C++Now 2012 Presentations - Материалы презентаций C++Now 2012.
- cpp17_in_TTs - Описания возможностей C++17, представленные преимущественно в виде «таблиц Тони».
- All C++20 core language features with examples - Справочник всех основных возможностей языка C++20 с примерами.
- Memory Footprint of GUI Toolkits - Сравнение объёма памяти, занимаемого различными инструментами GUI.
- C++ UI Libraries - Полный список решений для пользовательского интерфейса на C++.
- C++ Compilation - Краткое описание процесса компиляции C++.
- Books on C++17 - Список книг о C++17.
- modern-cpp-features - Шпаргалка по возможностям современного языка и библиотек C++.
- Choosing Some C++ Over C - Статья о том, когда следует использовать C++ вместо C.
- C++ 17 Features - Полный список возможностей C++17.
- Master C Programming with Open Source Books - Подборка книг с открытым исходным кодом для изучения программирования на C.
Отличные книги о C и C++.
- List of Free C or C++ Books
- Free C Books - vhf/free-programming-books/C.
- Free C++ Books - vhf/free-programming-books/C++.
- Practical Guide to Bare Metal C++
- cppbestpractices - Совместная подборка лучших практик C++.
Стандарты кодирования
Заголовок раздела «Стандарты кодирования»Стиль кода
Заголовок раздела «Стиль кода»- C++ Core Guidelines - «Официальный» набор рекомендаций по C++, проверенный автором C++.
- C++ Dos and Don’ts - Проекты Chromium > Для разработчиков > Стиль кода > Что следует и чего не следует делать в C++.
- google-styleguide - Руководства по стилю для проектов с открытым исходным кодом, созданных в Google.
- Google C++ Style Guide
- GNU Coding Standard
- Linux kernel coding style
- LLVM Coding Standards
Подкасты
Заголовок раздела «Подкасты»- CppCast - Первый подкаст, созданный разработчиками C++ для разработчиков C++.
- CppChat - Периодический еженедельный обзор происходящего в мире C++ в беседах с гостями из сообщества.
Доклады
Заголовок раздела «Доклады»- C++ Conferences - Каталог конференций C++.
- CppCon Talks :zap: - Конференция C++.
- Quick game development with C++11/C++14 - Доклад Vittorio Romeo на CppCon 2014.
- Presentation on Hana for C++Now 2015
- Meeting Cpp - YouTube-канал Meeting C++.
Отличные видео о C и C++.
- List of C or C++ YouTube Videos
- Awesome C Programming Tutorials in Hi Def [HD] - Коллекция подробных учебных материалов по языку программирования C для начинающих и новых программистов.
- C++ - Автор — VoidRealms.
- C++ Qt Programming - Автор — VoidRealms.
- C++ Programming Tutorials Playlist - Официальный плейлист учебных материалов Buckys по программированию на C++ от TheNewBoston.
- C++ Programming Tutorials from thenewboston - Все учебные материалы thenewboston по программированию на C++ собраны здесь.
- C++ GUI with Qt Playlist - Официальный плейлист учебных материалов thenewboston по созданию графических интерфейсов на C++ с Qt.
- Caleb Curry’s C Programming Tutorials - Полный плейлист учебных материалов по программированию на C от Caleb Curry.
- C Programming Tutorials - Все учебные материалы TheNewBoston по программированию на C собраны здесь.
- Bo Qian’s playlist - Библиотека Boost, стандартная библиотека C++, современный C++, продвинутый C++, продвинутая STL и др.
- The Cherno’s C++ Playlist - Обширная серия учебных материалов по C++ от The Cherno.
- Code for Yourself C++ Playlist - Полный курс C++, охватывающий всё: от основ до проектирования ПО.
Веб-сайты
Заголовок раздела «Веб-сайты»Полезные веб-сайты о C и C++.
- Standard C++ :zap: - Новости, текущее состояние и обсуждение стандартного C++.
- Build Bench - Сравнение сборок C++.
- Quick Bench - Быстрые бенчмарки C++.
- CppCon - Конференция C++.
- C++ reference - Полный онлайн-справочник по языкам C и C++ и их стандартным библиотекам.
- cppstat - Сайт, доступно перечисляющий возможности C++ и степень их поддержки компиляторами и реализациями стандартной библиотеки.
- C++ by Example - Изучайте C++ на примерах.
- cplusplus.com - Сеть ресурсов C++.
- C FAQ - Часто задаваемые вопросы о C.
- C++ FAQ - Часто задаваемые вопросы о C++.
- C++ FQA Lite - Ответы на часто задаваемые вопросы о C++.
- C++ Quiz - Простая онлайн-викторина для проверки знаний языка программирования C++.
- Guru of the Week - Регулярная серия задач по программированию на C++, созданная и написанная Хербом Саттером.
- Meeting C++
- PVS-Studio’s challenge - Викторина PVS-Studio по C++, в которой нужно найти ошибки во фрагментах кода проектов с открытым исходным кодом.
- Udemy C++ Courses and Tutorials
- C++ Hints - Команда PVS-Studio каждый рабочий день публикует подсказки о распространённых ошибках C++ и способах их исправления.
- C++ tutorial - Каталог онлайн-курсов C++ с рейтингами пользователей.
- C++ Tutorial for Beginners - Подробное руководство по C++, составленное экспертами.
- C++ for yourself - Подробное руководство по современному C++, охватывающее всё — от основ до проектирования ПО.
- CompileBytes C++ Compiler – Онлайн-компилятор C++ и интерактивная среда выполнения кода.
- C++ Resources - Коллекция ресурсов C++, включая книги, статьи и инструменты.
- CppPatterns - Репозиторий шаблонов и идиом современного C++. website
- Function Pointers - Руководство по пониманию указателей на функции в C/C++.
Полезные блоги о C и C++.
- Coding For Speed - Coding For Speed DOT COM — меньше времени выполнения.
- Eric Niebler
- Sticky Bits
- Paul Fultz II’s Blog
- ridiculousfish - Будет ли это оптимизировано?
- Embedded in Academia
- Simplify C++
- Fluent C++
- Bartek’s Coding Blog
- Kenny Kerr
- Sutter’s Mill
- Vorbrodt’s C++ Blog
- foonathan::blog()
- C++ Team Blog - Блог разработчиков команды Microsoft Visual C++.
Другие замечательные проекты
Заголовок раздела «Другие замечательные проекты»Коллекция полезного кода, фрагментов и т. п.
- algorithms - Алгоритмы и структуры данных на C++.
- c-algorithms - Библиотека алгоритмов C.
- 30 Seconds of C++
- awesome-ld-preload - Подборка ресурсов по LD_PRELOAD.
- awesome-static-analysis - Подборка инструментов статического анализа для всех языков программирования.
- cpp_functional_programming - Список материалов и ссылок по функциональному программированию на C++.
- algorithms_and_data_structures - Реализация алгоритмов и структур данных на C++.
Другие списки Awesome
Заголовок раздела «Другие списки Awesome»Другие невероятно замечательные подборки.
- lists - Подборка списков Awesome на GitHub.
- awesome-awesomeness - Подборка замечательных подборок Awesome.
- awesome :zap: - Подборка списков Awesome.
- C++ links - Список ресурсов C++ по категориям.
- Awesome C++ - Зеркало LibHunt.
- Awesome C 1
- Awesome C 2
- Awesome Modern C++ - Коллекция ресурсов по современному C++.
- AwesomePerfCpp - Подборка ресурсов по оптимизации производительности C/C++.
- free-programming-books - Список свободно доступных книг по программированию.
- Inqlude - Архив библиотек Qt.
- papers-we-love - Статьи научного сообщества, предназначенные для чтения и обсуждения.
- awesome-algorithms - Подборка отличных ресурсов для изучения и/или практики алгоритмов.
- awesome-hpp - Подборка замечательных библиотек C++ только из заголовочных файлов.
- awesome-talks - Коллекция скринкастов, записей встреч пользовательских групп и конференционных докладов.
- Projects - Список практических проектов, которые можно реализовать на любом языке программирования.
- Awesome interview questions - Подборки вопросов для собеседований по наиболее популярным технологиям, включая C и C++.
- nothings/single_file_libs :zap: - Список библиотек C/C++ в отдельных файлах.
Вакансии
Заголовок раздела «Вакансии»- Сейчас список пуст, но вы можете добавить вакансию, открыв merge request.
Спонсоры
Заголовок раздела «Спонсоры»- Свяжитесь с нами, если хотите спонсировать этот репозиторий. Название и логотип вашей компании будут размещены здесь на видном месте.
Участие в проекте
Заголовок раздела «Участие в проекте»Ознакомьтесь с рекомендациями для участников, чтобы узнать подробности. Спасибо всем участникам — вы замечательные!
Если вы заметили, что проект или ссылка больше не поддерживаются либо не подходят для этого списка, отправьте pull request, чтобы улучшить документ. Спасибо!
Заголовок раздела «Если вы заметили, что проект или ссылка больше не поддерживаются либо не подходят для этого списка, отправьте pull request, чтобы улучшить документ. Спасибо!»HagiCode
HagiCode — агентная среда разработки. Насыщенные и удобные взаимодействия с интерфейсом делают планирование, работу агентов и проектные задачи понятными и доступными, превращая разработку в увлекательный процесс.
Насыщенные и удобные взаимодействия с интерфейсом помогают легче планировать, запускать агентов и вести проектную работу.
- УмныйРабочие процессы OpenSpec превращают намерение в исполнимый путь от предложения через дизайн и задачи до готового изменения.
- ЭффективныйМультиагентное выполнение параллельно продвигает исследование, реализацию и проверку в нескольких репозиториях и с привычными Agent CLI.
- ИнтересныйНасыщенные и удобные взаимодействия с интерфейсом делают планирование, работу агентов и проектные задачи понятными и доступными.
Скачать для Windows
Поделиться HagiCode
Превращайте идеи в готовое ПО.
HagiCode — агентная среда разработки: рабочие процессы OpenSpec планируют изменение, мультиагентное выполнение его реализует, а Hero Scenario делает долгий путь наглядным, так что идеи становятся готовым ПО.
- Умный
- Рабочие процессы OpenSpec превращают намерение в путь от предложения до готового изменения.
- Эффективный
- Мультиагентное выполнение ведёт исследование, реализацию и проверку параллельно.
- Увлекательный
- Удобный интерфейс упрощает планирование, работу агентов и проектные задачи.
© 2026 HagiCode | Powered By hagilight-starlight@0.21.0 | Branch: main | Commit: 745b50b | Built:

