Skip to content
pospi edited this page Sep 14, 2022 · 1 revision

Terminology

  • People using our apps are equal participants within a system, not users of a system.
  • Module: in the context of this discussion, a 'module' refers to a logically discrete component of ValueFlows functionality and is delivered as a framework DNA.
  • Framework DNA: a Holochain app DNA built as part of the hREA framework. Includes both backend DNA code and one or more 'default' UI apps. Every framework DNA is a separate, isolated, one-click installable Holochain network.
    • Framework DNAs have Apache-style licenses.
    • Framework DNAs can be built and contributed to by any external contributors.
    • Ongoing effort is made to reward contributors (technical and non-technical) for their contributions to this digital commons.
  • Third-party DNA: a Holochain app developed by an external developer for another organisation or company's purposes which aims to consume the functionality of hREA DNA modules.
  • Dependent DNA: a Holochain app DNA provided by an unrelated project team which can be deployed into a network and integrated with framework DNA components.
    • Our goal in the recommendations presented in Modules in the hREA framework is to aim for Apache-compatible licensing, but your individual use-case may allow for mixing other license styles. Decomposable, pluggable, highly configurable options will take priority over less flexible or less easily integrated modules.
  • Framework zome: a Holochain app zome module bundled as a Rust crate. Like a DNA, it includes both 'backend' DNA code and one or more apps. The difference is that it provides functionality relative to a framework DNA, not independently of a framework DNA. In other words, its data is stored once for every module it is paired with, rather than in one single network-global store.