Fyre

From Nasqueron Agora
Revision as of 16:43, 2 March 2020 by Dereckson (talk | contribs) (→‎Storage)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Goals

  • Track items (packages, books, music albums)
  • Store artifacts for those items (e.g. stuff ordered, invoices for those)
  • Flexible architecture to be composed as people wants in their own apps

Architecture

  • Storage back-ends: store locally tracked items, and artifacts for those items
  • Agents to perform tasks to see how the status of a tracked item evolves (e.g. for a delivery pending -> delivered)
  • Libraries to connect with external services and parse results: an API client or a web site automated client
  • Reactors ("if this then that") to generate a new event when an event is done (e.g. order -> delivery -> acceptance or returns)

Storage

  • Items can be grouped in collections by type, allowing to choose storage for each type
  • Index of items is another problem and can be solved whatever storage is used for items - e.g. ElasticSearch or Sonic
  • Artifacts can be described as classes, and this description can include how they can be stored