This is the list of all libraries, whose internal dependencies are documented at Dependencies:
| Library | Description | Header LOC | Source LOC | Standalone LOC |
|---|---|---|---|---|
| Async | 🟨 Cross-platform completion-based asynchronous I/O | 1926 | 5842 | 19469 |
| Async Streams | 🟨 Bounded byte-stream pipelines with explicit backpressure | 924 | 1798 | 3755 |
| Await | 🟨 C++20 coroutine layer over Async | 1199 | 3231 | 24431 |
| Containers | 🟨 Generic containers (SC::Vector, SC::SmallVector, SC::Array etc.) | 1007 | 3 | 4428 |
| Containers Reflection | 🟨 Opt-in reflection and serialization adapters for SC containers and owning memory types. | 231 | 0 | 5609 |
| Fibers | 🟥 Stackful cooperative task runtime | 0 | 0 | 0 |
| FibersAsync | 🟥 Stackful fiber I/O bridge over Async | 0 | 0 | 0 |
| File | 🟩 Synchronous Disk File I/O | 200 | 1364 | 3018 |
| File System | 🟩 Synchronous, path-based file and directory operations | 188 | 1858 | 3403 |
| File System Iterator | 🟩 Allocation-free, pull-based directory traversal | 92 | 402 | 2098 |
| File System Watcher | 🟩 Portable, recursive directory-change notifications for files and directories | 511 | 1122 | 3145 |
| Foundation | 🟩 Primitive types, asserts, compiler macros, Function, Span, Result | 27 | 64 | 1813 |
| Hashing | 🟩 Incremental MD5, SHA-1 and SHA-256 hashing over byte spans | 95 | 292 | 776 |
| Http | 🟥 Allocation-free HTTP/1.1 client, server, parser, and WebSocket building blocks | 1861 | 7587 | 33872 |
| Http Client | 🟥 Allocation-free HTTP client over the operating system's native transport | 1188 | 4754 | 6876 |
| Memory | 🟩 Explicit allocation policy, owning byte and string storage, and virtual memory | 554 | 1053 | 2749 |
| Plugin | 🟨 Compile source-delivered C++ extensions and reload them inside a running process | 865 | 1322 | 9892 |
| Process | 🟩 Launch child processes, redirect their standard streams, and build pipelines | 408 | 1103 | 6227 |
| Reflection | 🟩 Describe C++ object structure at compile time, primarily for serialization. | 616 | 0 | 930 |
| SerialPort | 🟨 Synchronous serial-port configuration and byte I/O | 55 | 599 | 4532 |
| Serialization Binary | 🟨 Reflection-driven binary persistence with exact and schema-aware reads | 593 | 0 | 1943 |
| Serialization Text | 🟨 Map reflected C++ data to and from JSON in caller-controlled storage | 632 | 471 | 2783 |
| Socket | 🟨 Synchronous TCP, connected UDP, multicast configuration and DNS lookup | 185 | 894 | 2238 |
| Strings | 🟩 Non-owning encoded text, formatting, conversion, parsing, and path manipulation | 1056 | 3143 | 5475 |
| Testing | A small, explicit test runner for SC-style result checking and sectioned tests. | 155 | 791 | 2560 |
| Threading | 🟩 Native threads, synchronization primitives, and a caller-owned task pool | 433 | 926 | 2190 |
| Time | 🟨 Wall-clock timestamps, monotonic time, durations, and high-resolution measurement | 133 | 208 | 541 |
| Common source fragments | Shared source fragments, not a library | 1676 | 582 | - |
| LOC metric | Header | Source | Sum |
|---|---|---|---|
| Library source | 15134 | 38827 | 53961 |
| Common source fragments | 1676 | 582 | 2258 |
All LOC counts in the tables above exclude comments.
Some libraries have C Bindings:
| Library | Description |
|---|---|
| sc_hashing |