Skip to content
Al B edited this page Apr 23, 2025 · 400 revisions

List of available packages. This page is mined to populate clib-search(1).

String manipulation

Utilities

Data structure

Parsing

Encoding/Decoding

Filesystem

Hashing

Encryption

  • veqtrus/vial_aes - AES block cipher with ECB, CBC, CTR, EAX encryption/ decryption and CMAC authentication

Net

Libraries

  • clibs/uv - Cross-platform asychronous I/O
  • clibs/leveldb - LevelDB is a fast key-value storage library written at Google that provides an ordered mapping from string keys to string values
  • clibs/ck - Concurrency primitives, safe memory reclamation mechanisms and non-blocking data structures designed to aid in the research, design and implementation of high performance concurrent systems.
  • beltex/libsmc - Apple System Management Controller (SMC) API
  • brendanashworth/r3 - high-performance path dispatching library for the web
  • qute/qute - AST generation library
  • clibs/sophia - modern embeddable key-value database
  • tzador/gl-matrix - Matrix and Vector library for High Performance OpenGL apps
  • clibs/stb - stb single-file public domain libraries for C/C++
  • daddinuz/option - Mimic Rust's Option type
  • jwerle/libara - a library for constructing random access memory interfaces. Operations are asynchronous and are provided data structures for relaying memory between functions. It is built on top of libuv (libuv >= 1.x.x). It is inspired by Julian Gruber's abstract-random-access.
  • septag/sx - Portable base library for C programmers, tailored for system programmers and game developers. Includes containers, hash-table, memory allocators, fibers, threading, random generator, timer, multi-threaded task scheduler, math (linear algebra/vector/matrix/tweening), etc..
  • jwerle/libnanoresource - A C99 library for creating tiny async resources.
  • jwerle/libram - A C99 library for creating random access memory interfaces.
  • jwerle/libras - A C99 library for creating random access storage interfaces.
  • jwerle/libalru - libalru is a library for creating really fast numeric based LRU caches that leverage an optimized CRC-16-CCITT ported over from @mafintosh's array-lru.
  • andrerenaud/pdfgen - A minimalistic C99 library for creating PDF document.
  • Immediate-Mode-UI/Nuklear - A single-header ANSI C immediate mode cross-platform GUI library.
  • phoenixpinpoint/butterknife - A simple HTML templating system.
  • phoenixpinpoint/fracture - Fracture provides a robust set of tools for developing web applications in C. Build to JS or WASM.

Preprocessor macros

Program flow

Serialization

Testing/Quality Assurance

Timing

Executables

OS Specific

Plugins

Math

  • ScientificC/cmathl - A pure-C math library with a great variety of mathematical functions. Seeks to be close to C89/C90 compliant for portability.
  • jb55/bresenham-line.c - Bresenham's line drawing algorithm
  • MauroMombelli/TrigonomeC - Basic implementation of 3d vector and quaternion
  • MauroMombelli/FreeDCM - An implementation of Direct Cosine Matrix, a fast orientation algorithm
  • willemt/minmax - min and max functions
  • glisy/math - Common linear algebra functions for OpenGL
  • littlstar/clamp - Macro to clamp a value between two other values
  • catb0t/yacbnl - yet another C bignum library for C99
  • erstan/ceval - Parse and evaluate math expressions
  • tochinet/Posit - Posit arithmetic for embedded systems
  • mofosyne/bound_and_clamp.c - Various macros and functions for validating and guarding signals in c (Bounds, Clamps, etc...)
  • goodcleanfun/vectorized - Vectorized operations for numeric arrays using OpenMP if available. Includes cross-platform (via SIMDe) AVX2 vectorized implementations of exp, log, sin and cos.
  • mofosyne/linmap.h - Lightweight Linear Mapping Library (e.g. ADC Conversion)
  • goodcleanfun/simde_avx2 - pulls latest release from SIMD Everywhere, a well-tested header-only library which implements SIMD instruction sets for systems which don't natively support them e.g. will allow using AVX2 code on any platform and will generate the appropriate instructions, say NEON on Apple's M chips. This clib package only pulls in the necessary headers for supporting AVX2 instructions.
  • goodcleanfun/simde_sse2 - pulls latest release from SIMD Everywhere, a well-tested header-only library which implements SIMD instruction sets for systems which don't natively support them e.g. will allow using SSE2 code on any platform and will generate the appropriate instructions, say NEON on Apple's M chips. This clib package only pulls in the necessary headers for supporting SSE2 instructions.

AVR

OpenGL

Profiling

  • daddinuz/watchdog - A memory tracer useful to analyze memory usage or detect leaks.