Skip to main content

Intro

About 1 minModulecore

Concept

react concept

Framework (Fusion)

GitHub package.json version (subfolder of monorepo)

The provider initiates the framework, which means it configures and initializes the framework.
When initializing sub modules (app) the framework is provided as an reference.

App

GitHub package.json version (subfolder of monorepo)

An app can configure the default modules, but also add and configure additional modules.

Modules

GitHub package.json version (subfolder of monorepo)

Configure

When adding a module for initialization, the module could (most cases) create a configurator.
A configurator is an instance of preset configuration that exposes interface which that initiator can configure.

Initialize

When all configuration is done, the initializer will initialize provided modules.
When the module has initialized it will return a provider interface for that module.

if a module requires another module, the initializer will provide an async hook which the module
can await, this might throw a ModuleNotProvidedError or TimeOutError.

React

GitHub package.json version (subfolder of monorepo)
GitHub package.json version (subfolder of monorepo)

Since the framework is async, these modules requires Suspenseopen in new window.
Only React 17 or higher works with these modules

Modules have thin inter-opt modules for making it easier for developers to get started with React.

You never know what your boss gonna ask for tomorrow

The framework is built on plain JavaScript (TypeScript), with the ideology that libraries are just flavours of the day.
No core logic should exist in 3rd party libraries