Sane C++ Libraries
C++ Platform Abstraction Libraries
Modules
Here is a list of all modules:
[detail level 12]
 Algorithms🟥 Placeholder library templated where algorithms will be placed (see Algorithms for more details)
 Async🟨 Async I/O (files, sockets, timers, processes, fs events, threads wake-up) (see Async for more details) Async is a multi-platform / event-driven asynchronous I/O library
 Async StreamsRead, transform and write data concurrently from async sources to destinations
 Build🟨 Minimal build system where builds are described in C++ (see Build for more details)
 C BindingsC bindings for all libraries
 sc_hashingC bindings for Hashing library
 Containers🟨 Generic containers (SC::Vector, SC::SmallVector, SC::Array etc.) (see Containers for more details)
 File🟩 Synchronous Disk File I/O (see File for more details)
 FileSystem🟩 File System operations { exists, copy, delete } for { files and directories } (see File System for more details)
 FileSystem Iterator🟨 Enumerates files and directories inside a given path (see File System Iterator for more details)
 FileSystem Watcher🟩 Notifications {add, remove, rename, modified} for files and directories (see File System Watcher for more details)
 Foundation🟩 Primitive types, asserts, limits, Function, Span, Result, Tagged Union
 Compiler MacrosCompiler Macros Preprocessor macros to detect compiler and platform features
 Language UtilitiesLanguage Utilities Utility classes allowing common C++ constructs
 Type TraitsType Traits (EnableIf, AddPointer, RemovePointer, etc.)
 Hashing🟩 Compute MD5, SHA1 or SHA256 hashes for a stream of bytes (see Hashing for more details)
 Http🟥 HTTP parser, client and server (see Http for more details)
 Plugin🟨 Minimal dependency based plugin system with hot-reload (see Plugin for more details)
 Process🟩 Create child processes and chain them (also usable with Async library) (see Process for more details)
 Reflection🟩 Describe C++ types at compile time for serialization (see Reflection for more details)
 Serialization Binary🟨 Serialize to and from a binary format using Reflection (see Serialization Binary for more details)
 Serialization Binary Type Erased🟥 Implementation of SerializationBinary using a different approach. (see Serialization Binary Type Erased for more details)
 Serialization Text🟨 Serialize to / from text formats (JSON) using Reflection (see Serialization Text for more details)
 Socket🟨 Synchronous socket networking and DNS lookup (see Socket for more details)
 Strings🟩 String formatting / conversion / manipulation (ASCII / UTF8 / UTF16) (see Strings for more details)
 Testing🟨 Simple testing framework used by all of the other libraries (see Testing for more details)
 Threading🟥 Atomic, thread, thread pool, mutex, condition variable (see Threading library page for more details)
 Time🟨 Time handling (relative, absolute, high resolution) (see Time for more details)