[OpenSource]Libraries and Frameworks Collections
Keywords: OpenSource, Library, Framework
Programming Language
C
Fiber: fast and lightweight cross-platform coroutines
https://github.com/simonfxr/fiber
C++
SGI STL study
https://github.com/steveLauwh/SGI-STL
C++ High Performance, published by Packt
https://github.com/PacktPublishing/Cpp-High-Performance
Kick-start your C++! A template for modern C++ projects using CMake, CI, code coverage, clang-format and reproducible dependency management.
https://github.com/TheLartians/ModernCppStarter
Lua
A fast, small, safe, gradually typed embeddable scripting language derived from Lua
https://github.com/Roblox/luau
LuaHelper is a High-performance lua plugin, Language Server Protocol for lua.
https://github.com/Tencent/LuaHelper
Vlang
Simple, fast, safe, compiled language for developing maintainable software. Supports translation from C and (soon) C++. Compiles itself in <1s.
https://github.com/vlang/v
Redlang
Red is a next-generation programming language strongly inspired by Rebol, but with a broader field of usage thanks to its native-code compiler, from system programming to high-level scripting and cross-platform reactive GUI, while providing modern support for concurrency, all in a zero-install, zero-config, single 1MB file!
https://github.com/red/red
Rlang
Low-level API for programming with R
https://github.com/r-lib/rlang
Wren
The Wren Programming Language
https://github.com/wren-lang/wren
Taichi
The Taichi programming language
https://github.com/taichi-dev/taichi
Visual Programming
Resources and references for the past and future of visual programming.
https://github.com/ivanreese/visual-programming-codex
Futhark
Futhark is a purely functional data-parallel programming language. Its optimising compiler is able to compile it to typically very performant GPU code.
https://github.com/diku-dk/futhark
Compiling
C & C++
8cc is a compiler for the C programming language.
https://github.com/rui314/8cc
A list of Clang warnings and their descriptions.
https://github.com/NSHipster/clangwarnings.com
Fast C OBJ parser
https://github.com/thisistherk/fast_obj
bfp is a C/C++ posit floating point format implementation.
https://github.com/libcg/bfp
Experimental wrapper over LLVM for generating and compiling code at run-time.
https://github.com/pdziepak/codegen
cr.h: A Simple C Hot Reload Header-only Library
https://github.com/fungos/cr
Interactive Compiler
Run compilers interactively from your web browser and interact with the assembly
https://github.com/compiler-explorer/compiler-explorer
Build Time
Analyze your builds programmatically with the C++ Build Insights SDK
https://devblogs.microsoft.com/cppblog/analyze-your-builds-programmatically-with-the-c-build-insights-sdk/
A build analysis tool for the MSVC toolchain.
https://github.com/microsoft/vcperf
Metaprogramming
Your standard library for metaprogramming.
https://github.com/boostorg/hana
Instant compile time C++ 11 metaprogramming library.
https://github.com/edouarda/brigand
C++ metaprogramming shell
https://github.com/metashell/metashell
Code Obfuscation
Obfuscation library based on C++11/14 and metaprogramming.
https://github.com/andrivet/ADVobfuscator
Deep Puzzling is an AI-based framework for concealing attack intentions and protecting codes, which prevents crackers from obtaining critical codes.
https://github.com/aisecstudent/DeepPuzzling
Preprocessor
The goal is to have good conformance with the C and C++ standards and to handle nonstandard preprocessor extensions in gcc / clang / visual studio preprocessors.
https://github.com/danmar/simplecpp
Concurrency
Concurrency C Libraries
libcsp is a high performance concurrency C library influenced by the CSP model, 10x faster than Golang.
https://github.com/shiyanhui/libcsp
Search Algorithm
NGS approach
SPTAG: A library for fast approximate nearest neighbor search
https://github.com/microsoft/SPTAG
Optimization & Performance
Stack Tracing
A beautiful stack trace pretty printer for C++
https://github.com/bombela/backward-cpp
CPU Profiling
Intel® VTune™ Profiler User Guide
https://software.intel.com/content/www/us/en/develop/documentation/vtune-help/top/api-support/instrumentation-and-tracing-technology-apis/instrumentation-and-tracing-technology-api-reference/event-api.html
Event Tracing
https://docs.microsoft.com/en-us/windows/win32/api/_etw/
A Rust CPU profiler implemented with the help of backtrace-rs
https://github.com/tikv/pprof-rs
Orbit & Dive: C/C++ Performance Profiler (both for CPU and GPU)
https://github.com/google/orbit
Memory Sanitizer (profiling, leak detect)
AddressSanitizer, ThreadSanitizer, MemorySanitizer
https://github.com/google/sanitizers
Memory instrumentation tool for android app&game developers.
https://github.com/Tencent/loli_profiler
MTuner is a C/C++ memory profiler and memory leak finder for Windows, PlayStation 4 and 3, Android and other platforms.
https://github.com/milostosic/MTuner
Memory Malloc
TCMalloc is Google’s customized implementation of C’s malloc()
and C++’s operator new
used for memory allocation within our C and C++ code. TCMalloc is a fast, multi-threaded malloc implementation.
https://github.com/google/tcmalloc
gperftools is a collection of a high-performance multi-threaded malloc() implementation, plus some pretty nifty performance analysis tools.
https://github.com/gperftools/gperftools
A scoped stack allocator (Forstbite)
https://github.com/graphitemaster/scope_stack_alloc
Parsing
Fast and exact implementation of the C++ from_chars functions for float and double types: 4x to 10x faster than strtod, part of GCC 12 and WebKit/Safari
https://github.com/fastfloat/fast_float
GC
Garbage Collection
gc_ptr is a full parallel garbage collector.
https://github.com/yechaoGitHub/GC
Debug
Debugger for comprehensive
Debugging the way it’s meant to be done
https://github.com/emoon/ProDBG
Debugger for Lua
Lua Debugger for VS Code
https://github.com/Tencent/luapanda
Debugger for C++
Record and Replay Framework. rr is a lightweight tool for recording, replaying and debugging execution of applications (trees of processes and threads).
https://github.com/rr-debugger/rr
Database
SQL Database
The high-performance distributed SQL database for global, internet-scale apps.
https://github.com/yugabyte/yugabyte-db
Financial Accounting
A distributed financial accounting database designed for mission critical safety and performance to power the future of financial services.
https://github.com/coilhq/tigerbeetle
In-memory Datastore
A modern replacement for Redis and Memcached
https://github.com/dragonflydb/dragonfly
A new project to resume development on the formerly open-source Redis project. We’re calling it Valkey, since it’s a twist on the key-value datastore.
https://github.com/valkey-io/valkey
Mobile
Libraries
OpenSSL Library for iOS and Android
https://github.com/leenjewel/openssl_for_ios_and_android
OpenSSL for Android NDK
https://github.com/buptis073114/MyOpenSSL
CMake wrapper for OpenSSL supporting cross-compilation
https://github.com/viaduck/openssl-cmake
Compile curl & openssl & zlib for android with NDK.
https://github.com/shishuo365/libcurl-android
curl sources
https://curl.haxx.se/download.html
a version of the official Android openssl setup to build standalone for use in app
https://github.com/guardianproject/openssl-android
gyp version of openssl to embed in projects.(opensslconf.h)
https://github.com/luvit/openssl
Precompiled OpenSSL (Include Static and Dynamic Library)(opensslconf.h)
https://github.com/David-Reguera-Garcia-Dreg/Precompiled-OpenSSL-Windows
Database
High-performance reactive database for powerful React and React Native apps
https://github.com/Nozbe/WatermelonDB
Building
The easiest way to automate building and releasing your iOS and Android apps
https://github.com/fastlane/fastlane
Build android apps without any java, entirely in C and Make.
https://github.com/cnlohr/rawdrawandroid
Desktop
Desktop Apps
Native, high-performance, cross-platform desktop apps - built with Reason!(OCaml)
https://github.com/revery-ui/revery
Middleware
ABI Adapter
musl - an implementation of the standard library for Linux-based systems
http://git.musl-libc.org/cgit/musl/
Message Queue
JQ is a minimal job queue, that can be used to multithread work across multiple cpus.
https://github.com/jonasmr/jq
Cloud
Cloud-native high-performance edge/middle/service proxy
https://github.com/envoyproxy/envoy
Game Development
Gaming meets modern C++ - a fast and reliable entity-component system (ECS) and much more.
https://github.com/skypjack/entt
EASTL stands for Electronic Arts Standard Template Library. It is an extensive and robust implementation that has an emphasis on high performance.
https://github.com/electronicarts/EASTL
ECS (Entity Component Systems), collecting links and documents about the topic
https://gist.github.com/paniq/c32ac8447a7cc5c33a45
Algorithm
Compression
Zstandard - Fast real-time compression algorithm
https://github.com/facebook/zstd
Crypto
Extremely fast non-cryptographic hash algorithm
https://github.com/Cyan4973/xxHash
a portable and fast pairing-based cryptography library
https://github.com/herumi/mcl
Bit Twiddling Hacks
Bit Twiddling Hacks
https://github.com/botonchou/Bit-Twiddling-Hacks-By-Sean-Eron-Anderson
Lockfree
A collection of resources on wait-free and lock-free programming
https://github.com/rigtorp/awesome-lockfree
A fast single-producer, single-consumer lock-free queue for C++ (Recommended)
https://github.com/cameron314/readerwriterqueue
A simple lock-free queue implementation.
https://github.com/supermartian/lockfree-queue
Navigation
An open source platform for visual-inertial navigation research.
https://github.com/rpng/open_vins
Cyclic Redundancy Check (CRC)
Multi-threading Parallel CRC Computation in C++
https://github.com/dante2608/Parallel-CRC
Emulator
Game Platform Emulator
Reicast is a multiplatform Sega Dreamcast emulator
https://github.com/reicast/reicast-emulator
Media
Video Player
Command line video player
https://github.com/mpv-player/mpv
Audio Player
Winyl’s main repository.
https://github.com/winyl-player/winyl
Game Development
Free, easy, portable audio engine for games
https://github.com/jarikomppa/soloud
Internet of Things (IoT)
Big Data for IoT
An open-source big data platform designed and optimized for the Internet of Things (IoT).
https://github.com/taosdata/TDengine
Data Formating
Serialization Library
FlatBuffers: Memory Efficient Serialization Library
https://github.com/google/flatbuffers
Protocol Buffers - Google’s data interchange format
https://github.com/protocolbuffers/protobuf
A Lua module to work with Google protobuf
https://github.com/starwing/lua-protobuf
Json
Parsing gigabytes of JSON per second
https://github.com/lemire/simdjson
Configuration File Format
Tom’s Obvious, Minimal Language(Hugo’s config file is using TOML)
https://github.com/toml-lang/toml
Table
pytablewriter is a Python library to write a table in various formats: CSV / Elasticsearch / HTML / JavaScript / JSON / LaTeX / LDJSON / LTSV / Markdown / MediaWiki / NumPy / Excel / Pandas / Python / reStructuredText / SQLite / TOML / TSV.
https://github.com/thombashi/pytablewriter
Data Config for Game Dev
你的最佳游戏配置解决方案 {excel, csv, xls, xlsx, json, bson, xml, yaml, lua, unity scriptableobject} => {json, bson, xml, lua, yaml, protobuf(pb), msgpack, flatbuffers, erlang, custom template} data + {c++, java, c#, go(golang), lua, javascript(js), typescript(ts), erlang, rust, gdscript, protobuf schema, flatbuffers schema, custom template} code。 不仅仅是导表工具。
https://github.com/focus-creative-games/luban
Building
C++ Building
a small build system with a focus on speed
https://github.com/ninja-build/ninja
A cross-platform build utility based on Lua
https://github.com/xmake-io/xmake
Building Toolchain
The Emscripten toolchain is distributed as a standalone Emscripten SDK. The SDK provides all the required tools, such as Clang, Python and Node.js along with an update mechanism that enables migrating to newer Emscripten versions as they are released.
https://github.com/emscripten-core/emsdk
Container
Podman
libpod is a library used to create container pods. Home of Podman.
https://github.com/containers/libpod
Statistics
Benchmark Chat / Graph
Benchmark multiple object trackers (MOT) in Python
https://github.com/cheind/py-motmetrics
Simple comparison framework for APIs
https://github.com/nvMcJohn/apitest
Github Statistics
Dynamically generated stats for your github readmes
https://github.com/anuraghazra/github-readme-stats
Github Tools
GitHub Sponsors
This GitHub Action will automatically add your GitHub Sponsors to your README. It can be configured in multiple ways allowing you to display and breakdown your sponsors by price tier with fallbacks.
https://github.com/JamesIves/github-sponsors-readme-action
GitHub Image
github image site
https://githubmemory.com/
Github Emoji
A markdown version emoji cheat sheet
https://github.com/ikatyang/emoji-cheat-sheet/blob/master/README.md
Code Review
Google Code Review
How to do a code review
https://google.github.io/eng-practices/review/reviewer/
Emergencies
https://google.github.io/eng-practices/review/emergencies.html#what
Google Style Guides
http://google.github.io/styleguide/
The CL author’s guide to getting through code review
https://google.github.io/eng-practices/review/developer/
AI
AI Pipeline
PipelineAI: Real-Time Enterprise AI Platform
https://github.com/PipelineAI/pipeline
Science
Multi-Disciplinary Simulation
Kratos Multiphysics (A.K.A Kratos) is a framework for building parallel multi-disciplinary simulation software. Modularity, extensibility and HPC are the main objectives. Kratos has BSD license and is written in C++ with extensive Python interface.
https://github.com/KratosMultiphysics/Kratos
Visualization for Scientific Data
The fundamental problem being solved by the ANARI standard is to provide application developers with a high-level rendering API that can be used to render images from scientific and technical visualizations containing 3D surface geometry and volumetric data. (Recommended)
https://github.com/KhronosGroup/ANARI-SDK
VisIt - Visualization and Data Analysis for Mesh-based Scientific Data
https://github.com/visit-dav/visit
Apache Superset is a Data Visualization and Data Exploration Platform
https://github.com/apache/superset
Matplotlib is a comprehensive library for creating static, animated, and interactive visualizations in Python.
https://github.com/matplotlib/matplotlib
OpenFOAM is the free, open source CFD software developed primarily by OpenCFD Ltd since 2004.
https://www.openfoam.com/
https://develop.openfoam.com/Development/openfoam/-/blob/master/doc/Build.md
cuDF - GPU DataFrame Library. Built based on the Apache Arrow columnar memory format, cuDF is a GPU DataFrame library for loading, joining, aggregating, filtering, and otherwise manipulating data.
https://github.com/rapidsai/cudf
Tutorials
Build Your Own
Build your own (insert technology here)
https://github.com/danistefanovic/build-your-own-x
Heterogeneous Tutorials
Brotcrunsher, included graphics tutorials, Java tutorials, and so on.
https://www.youtube.com/c/Brotcrunsher/playlists
Video Streaming
WebCamera Streaming (Video Capture)
Streaming camera to web as MJPEG stream or individual JPEG snapshots. Providing embedded web UI for watching camera directly from a web browser.
https://github.com/cvsandbox/cam2web
WebRTC streamer for V4L2 capture devices, RTSP sources and Screen Capture
https://github.com/mpromonet/webrtc-streamer
Pixels Streaming
C++ library for building applications to stream pixels to Tide
https://github.com/BlueBrain/Deflect
File System
C / C++ File System
Lightweight, portable and easy to integrate C directory and file reader
https://github.com/cxong/tinydir
An implementation of C++17 std::filesystem for C++11 /C++14/C++17 on Windows, macOS, Linux and FreeBSD.
https://github.com/gulrak/filesystem
A modern file explorer that pushes the boundaries of the platform.
https://github.com/files-community/Files
IO Stream
Significantly faster input/output for C++20
https://github.com/cppfastio/fast_io
High Performance Computing
PGAS (Partitioned Global Address Space)
Partitioned Global Address Space (PGAS) library for distributed arrays.
https://github.com/GlobalArrays/ga
Concurrent Programming
LMAX Disruptor, High Performance Inter-Thread Messaging Library.
https://github.com/LMAX-Exchange/disruptor
Fast String
Fast string implementation for graphics.
https://github.com/RobloxResearch/SIMDString
DFT (Discrete Fourier Transform)
FFTW is a C subroutine library for computing the discrete Fourier transform (DFT) in one or more dimensions, of arbitrary input size, and of both real and complex data
https://github.com/FFTW/fftw3
Command Line (CMD, CLI)
Progress Bar
Activity Indicators for Modern C++
https://github.com/p-ranav/indicators
(unofficial) tqdm-like single header c++ pretty progress bar
https://github.com/aminnj/cpptqdm
Package Manager
C++ Package Manager
Conan, the C/C++ Package Manager
https://conan.io/
Code Generation
CPP code generation
Simple and straightforward code generator for creating C++ code. If extended, could be used for generating code in any programming language. Written in Python, works both with Python 2 and 3
https://github.com/yuchdev/code_generator
Art
Music
MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!
https://github.com/musescore/MuseScore
Code. Music. Live.
https://github.com/sonic-pi-net/sonic-pi
Painting
Mixbox is a library for natural color mixing based on real pigments.
https://github.com/scrtwpns/mixbox
Game Tools
Factorio
Enhancing the Factorio experience with SAT solvers
https://github.com/R-O-C-K-E-T/Factorio-SAT
Binary Diff
HDiffPatch. A C\C++ library and command-line tools for Diff & Patch between binary files or directories(folder); cross-platform; fast and create small delta/differential; support large files and limit memory requires when diff & patch.
https://github.com/sisong/HDiffPatch
Interview
Interview Resource
A complete computer science study plan to become a software engineer.
https://github.com/jwasham/coding-interview-university
Questions to ask the company during your interview
https://github.com/viraptor/reverse-interview
C++ Interview Practice (Chinese)
https://github.com/huihut/interview
C++ Interview Practice in 2020 (Chinese)
https://github.com/Apriluestc/2020
Misc
CS Fragment Collections
HelloGitHub
https://hellogithub.com/periodical/volume/46/
Project Manage
The Startup CTO’s Handbook, a book covering leadership, management and technical topics for leaders of software engineering teams
https://github.com/ZachGoldberg/Startup-CTO-Handbook
当我回顾所有的烦恼时,想起一位老人的故事,他临终前说:一生中烦恼太多,但大部分担忧的事情却从来没有发生过。──温斯顿·丘吉尔(Winston Churchill)