Skip to content

Latest commit

 

History

History
21 lines (14 loc) · 1.58 KB

ARCHITECTURE.md

File metadata and controls

21 lines (14 loc) · 1.58 KB

Architecture

This repo's source code builds a static React app to be served on https://cloud.redhat.com.

The React app bundled using Webpack includes:

  • @patternfly/react-core as the component library
  • A react-router-dom BrowserRouter for routing pages
    • Uses the HTML5 history API (pushState, replaceState and the popstate event) to keep UI in sync with the URL
  • React-redux for managing global state (usually for API calls)
    • There is helper function used to create store with option to plug reducers on the fly called getRegistry
    • @redhat-cloud-services/frontend-components-notifications/redux is provided for chromed notifications
  • React.lazy and React.Suspense for asynchronously loading components

These assets are loaded via Insights chrome which provides user auth, top and side nav (aka chroming), and a <main id="root"> to inject into.

Webpack

This repo uses a shared common config with sensible defaults to build and run your application.

This repo uses federated modules to seamlessly load multiple applications at runtime.