Library overview
This directory documents the libraries that are built or vendored by mars-nwe. It is intentionally separate from the API headers: the headers define ABI/API, while these notes explain which library should be used by mars-nwe code and which imported helpers are only low-level dependencies.
Mars/NW libraries
- nwcore: common Mars helpers plus imported NSS core runtime.
- nwfs: filesystem, metadata, quota and NSS namespace support.
- nwtui: small terminal UI abstraction built on termbox2.
- nwssl: MatrixSSL/OpenSSL-compatibility wrapper used by Mars components.
Database and service libraries
Wrapped or vendored third-party libraries
These pages document third-party libraries that are useful project-facing
surfaces or long-lived wrapped dependencies. Some vendored packages are
intentionally documented under their owning Mars library instead of receiving a
standalone public page. For example, iniparser and Unicode tables are internal
nwcore details, and termbox2 is an internal nwtui backend.
- nwowfat: bundled libowfat support library.
- nwmatrixssl: bundled MatrixSSL TLS implementation.
- nwlibsodium: bundled libsodium cryptographic primitives.
Naming rule
The directory names use the nw... prefix for documentation even when the
underlying CMake target or upstream project keeps its original name. This keeps
Mars-specific documentation grouped and avoids collisions with upstream docs.
NSS userspace adaptation boundary
See ../NSS_USERSPACE_ADAPTATION.md for the rule that NSS imports provide
semantics and dependency provenance, while Mars NWE provides the userspace
storage, xattr, AdminVolume and integration backends.