Files
mars-nwe/doc/librarys/README.md
2026-06-14 11:49:38 +02:00

43 lines
1.9 KiB
Markdown

# 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](nwcore/README.md): common Mars helpers plus imported NSS core runtime.
- [nwfs](nwfs/README.md): filesystem, metadata, quota and NSS namespace support.
- [nwtui](nwtui/README.md): small terminal UI abstraction built on termbox2.
- [nwssl](nwssl/README.md): MatrixSSL/OpenSSL-compatibility wrapper used by Mars components.
## Database and service libraries
- [nwflaim](nwflaim/README.md): FLAIM database library used by Mars services.
- [nwxflaim](nwxflaim/README.md): XML FLAIM companion library.
## 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](nwowfat/README.md): bundled libowfat support library.
- [nwmatrixssl](nwmatrixssl/README.md): bundled MatrixSSL TLS implementation.
- [nwlibsodium](nwlibsodium/README.md): 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.