Skip to content

Overview of URSYS WebApps

DSri Seah edited this page Jun 24, 2024 · 2 revisions

WIP - Architecture is being revised

URSYS WebApps are roughly based on the Model-View-ViewModel paradigm (MVVM) with the additional requirement to be framework agnostic. This requires a style of coding that is stricter than "The Front End is the Application" approach.

1. Application features are self-contained modules that can co-exist.

For example, a "comment manager" manages data, data transformations, and operations related to implementing a comment system.

2. An application is a composition of feature modules unified through the URSYS core functions.

An URSYS application is implemented so importing a feature module initializes it and exposes its API methods

3. A feature module is made of data, operation, and view transformation submodules that maintain their own state separate from each other.

The three module types are:

  • DATACORE - pure and derived data, with persistence and notification services
  • APPCORE - app operations, transactions, and feature-wide state management
  • VIEWCORE - data transformation to and from user-interface compatible data structures