Shared libraries and packages
Nexus packages provide shared runtime services used by tools and applications: core helpers, binding, JSON and JSON-RPC, networking, data access, GUI, compression, graphics, and testing.
The package repositories are separate from executable projects. Examples live in Nexus Lab; original upstream notices remain with imported material.
Use a package in a project
Require its Nexus Build project through an explicit project catalog. The project publishes the directories needed by consumers and can declare producers when compilation or generation is necessary.
See dependencies and publications. Adding a directory to a publication does not itself choose link libraries or create a compiler-native runtime package.
Distinguish the models
| Model | Purpose |
|---|---|
| Package metadata/catalog | Describe a package's identity, location, and relationships |
| Nexus Build project | Build operations and dependency-first execution |
| Nexus Pascal runtime package | Shared Pascal runtime image and compiler metadata |
A catalog entry does not download or build anything simply because it exists. Each consuming tool has its own explicit behavior.
Useful starting points
- JSON-RPC modeling.
- Desktop GUI.
- Mobile controls and integration.
- NexusTest.
- Compiler runtime packages.
- Nexus Lab examples.
The attribution record identifies upstream sources and licenses. It does not replace a package's actual build dependencies.
Other library surfaces
| Package | Developer surface |
|---|---|
core, fcl-base |
Shared helpers, containers, streams, masks, configuration and expression support |
db/fcl-db |
Dataset and database abstractions; a database driver still needs its native client library |
serialization/fcl-json, serialization/fcl-xml |
JSON parser/data APIs and XML DOM/read/write APIs |
fcl-process |
Native child-process APIs and pipes |
fcl-registry |
Platform registry and XML registry APIs; a file-backed XML registry is distinct from the Windows registry |
fcl-res |
Resource file readers and writers |
graphics/fcl-image, graphics/pasjpeg |
Image readers/writers and Pascal JPEG codec |
mustache in nexus-packages-ext |
Upstream SynMustache directly; there is no parallel Nexus template engine |
regexpr in nexus-packages-ext |
Upstream regexpr unit directly |
Additional references cover native interfaces and Unicode, compression and hashing, and catalog declarations. Project recipes beside the sources declare the published paths and native producers.