This directory contains all the crates that are published and developed by the Zng project.
The main crate is zng, it re-exports the main API of the other crates in well documented and organized modules.
All other crates have the name prefix zng-.
Proc-macro crates are named after their single dependant crate, with the -proc-macros suffix. The dependant
crate provides the documentation, it re-exports or wraps the proc-macros in declarative macros.
Foundation crates define primitive types and utilities, they are used by other project crates.
zng-unique-idzng-clone-movezng-handlezng-txtzng-unitzng-state-mapzng-app-contextzng-envzng-env-proc-macros
zng-layoutzng-varzng-var-proc-macros
zng-taskzng-task-proc-macros
zng-colorzng-color-proc-macros
zng-time
View-process API and implementation crates. They are named with prefix zng-view.
The "view-process" is a platform adapter plus a renderer, it usually runs in a separate process, communicating over IPC with the app-process.
Currently all platforms (Linux, Windows and MacOS) are implemented in the zng-view crate. If a
future platform cannot integrate with this crate it will be named zng-view-#platform.
zng-view-apizng-viewzng-view-prebuilt
zng-view-angle
Core app-process implementation. Defines the main loop, events, app-extensions API. Connects with any external view-process and converts IPC events into RAW_*_EVENT events.
zng-appzng-app-proc-macros
Most of the app services and events are implemented as app extensions. Extension crates are named
with prefix zng-ext-.
zng-ext-inputzng-ext-fontzng-ext-fs-watcherzng-ext-configzng-ext-l10nzng-ext-l10n-proc-macros
zng-ext-hot-reloadzng-ext-hot-reload-proc-macros
zng-ext-imagezng-ext-svg
zng-ext-audiozng-ext-clipboardzng-ext-windowzng-ext-undozng-ext-single-instancezng-ext-setup
Widget and property declarations. Widget crates are named with prefix zng-wgt-. These crates
are not fully re-exported by the main crate, this difference between the main and full API provide
a kind of internal visibility, providing extra nodes and context values that can be useful for derived widgets
or for custom properties that deeply integrate with a widget.
zng-wgtzng-wgt-stylezng-wgt-inputzng-wgt-accesszng-wgt-transformzng-wgt-windowzng-wgt-datazng-wgt-filterzng-wgt-inspectorzng-wgt-size-offsetzng-wgt-containerzng-wgt-undozng-wgt-data-viewzng-wgt-fillzng-wgt-checkerboardzng-wgt-layerzng-wgt-dialogzng-wgt-undo-historyzng-wgt-imagezng-wgt-textzng-wgt-text-inputzng-wgt-buttonzng-wgt-stackzng-wgt-panelzng-wgt-gridzng-wgt-wrapzng-wgt-rule-linezng-wgt-togglezng-wgt-menuzng-wgt-scrollzng-wgt-settingszng-wgt-shortcutzng-wgt-ansi-textzng-wgt-tooltipzng-wgt-markdownzng-wgt-progresszng-wgt-sliderzng-wgt-material-iconszng-wgt-webrender-debugzng-wgt-wizard
Miscellaneous crates that provide APIs as both [build-dependencies] and [dependencies].
zng-tp-licenses
Tools that can be installed by cargo for use in Zng apps.
cargo-zngzng-l10n-translator-geminizng-l10n-translator-local
The Zng project publishes a fork of servo/webrender called zng-ui/zng-webrender. The fork code has minimal
modification, the crates uses by the Zng project are renamed with the zng- prefix and some small patches applied.