diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c4ba88071..75ea61dc7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -139,7 +139,7 @@ To deploy the sample application, open a terminal at the root of the repository deploy-basic ``` -A prompt with a few questions will appear and then the sits will automatically be deployed to production. +A prompt with a few questions will appear and then the site will automatically be deployed to production. ### The sample application with "endpoints" diff --git a/README.md b/README.md index a2ff17f04..e849c1b47 100644 --- a/README.md +++ b/README.md @@ -5,6 +5,8 @@ A modular web application shell built on top of [Module Federation](https://mod [![License](https://img.shields.io/badge/License-Apache_2.0-blue.svg)](./LICENSE) [![CI](https://github.com/gsoft-inc/wl-squide/actions/workflows/ci.yml/badge.svg)](https://github.com/gsoft-inc/wl-squide/actions/workflows/ci.yml) +### Packages + | Name | NPM | | --- | --- | | [@squide/core](packages/core/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/core)](https://www.npmjs.com/package/@squide/core) | diff --git a/docs/guides/setup-honeycomb.md b/docs/guides/setup-honeycomb.md index 5048a82c4..460ec5d58 100644 --- a/docs/guides/setup-honeycomb.md +++ b/docs/guides/setup-honeycomb.md @@ -123,6 +123,20 @@ When an unmanaged error occurs, it's automatically recorded: ![Recorded error](../static/honeycomb-failing-http-request.png) ::: +### Real User Monitoring (RUM) + +The default instrumentation will automatically track the appropriate metrics to display RUM information: + +:::align-image-left +![Largest Contentful Paint](../static/honeycomb-lcp.png){width=536 height=378} +::: +:::align-image-left +![Cumulative Layout Shift](../static/honeycomb-cls.png){width=536 height=378} +::: +:::align-image-left +![Interaction to Next Paint](../static/honeycomb-inp.png){width=532 height=358} +::: + ## Set custom user attributes Most application needs to set custom attributes on traces about the current user environment. To help with that, Squide expose the [setGlobalSpanAttributes](../reference/honeycomb/setGlobalSpanAttributes.md) function. diff --git a/docs/static/honeycomb-cls.png b/docs/static/honeycomb-cls.png new file mode 100644 index 000000000..73b7ff9f4 Binary files /dev/null and b/docs/static/honeycomb-cls.png differ diff --git a/docs/static/honeycomb-inp.png b/docs/static/honeycomb-inp.png new file mode 100644 index 000000000..23fb61621 Binary files /dev/null and b/docs/static/honeycomb-inp.png differ diff --git a/docs/static/honeycomb-lcp.png b/docs/static/honeycomb-lcp.png new file mode 100644 index 000000000..cd42e5eb8 Binary files /dev/null and b/docs/static/honeycomb-lcp.png differ diff --git a/packages/core/package.json b/packages/core/package.json index 7a2a6fd87..e670b0da1 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -54,6 +54,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/env-vars/package.json b/packages/env-vars/package.json index b6aefd025..2b26fe24f 100644 --- a/packages/env-vars/package.json +++ b/packages/env-vars/package.json @@ -53,6 +53,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/fakes/package.json b/packages/fakes/package.json index 632d2948f..dcecaa362 100644 --- a/packages/fakes/package.json +++ b/packages/fakes/package.json @@ -43,6 +43,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/firefly-honeycomb/README.md b/packages/firefly-honeycomb/README.md new file mode 100644 index 000000000..ecdad952f --- /dev/null +++ b/packages/firefly-honeycomb/README.md @@ -0,0 +1,13 @@ +# @squide/firefly-honeycomb + +## Usage + +View the [user's documentation](https://gsoft-inc.github.io/wl-squide/). + +## 🤝 Contributing + +View the [contributor's documentation](../../CONTRIBUTING.md). + +## License + +Copyright © 2024, Workleap. This code is licensed under the Apache License, Version 2.0. You may obtain a copy of this license at https://github.com/gsoft-inc/workleap-license/blob/master/LICENSE. diff --git a/packages/firefly-honeycomb/package.json b/packages/firefly-honeycomb/package.json index 5832394b2..27247b709 100644 --- a/packages/firefly-honeycomb/package.json +++ b/packages/firefly-honeycomb/package.json @@ -63,6 +63,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/firefly-webpack-configs/package.json b/packages/firefly-webpack-configs/package.json index 6faded405..fa7e22391 100644 --- a/packages/firefly-webpack-configs/package.json +++ b/packages/firefly-webpack-configs/package.json @@ -61,6 +61,6 @@ "@workleap/webpack-configs": "1.5.1" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/firefly/package.json b/packages/firefly/package.json index e0a8b16b6..121fa7d35 100644 --- a/packages/firefly/package.json +++ b/packages/firefly/package.json @@ -68,6 +68,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/i18next/package.json b/packages/i18next/package.json index 860439a62..a0aeddb73 100644 --- a/packages/i18next/package.json +++ b/packages/i18next/package.json @@ -65,6 +65,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/module-federation/package.json b/packages/module-federation/package.json index 5568dcd37..1fe11c725 100644 --- a/packages/module-federation/package.json +++ b/packages/module-federation/package.json @@ -60,6 +60,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/msw/package.json b/packages/msw/package.json index 16775221c..1df95bcff 100644 --- a/packages/msw/package.json +++ b/packages/msw/package.json @@ -58,6 +58,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/react-router/package.json b/packages/react-router/package.json index ab5e18fd6..6c371109d 100644 --- a/packages/react-router/package.json +++ b/packages/react-router/package.json @@ -64,6 +64,6 @@ }, "sideEffects": false, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/packages/webpack-configs/package.json b/packages/webpack-configs/package.json index 5ab01877b..2b4d40164 100644 --- a/packages/webpack-configs/package.json +++ b/packages/webpack-configs/package.json @@ -64,6 +64,6 @@ "semver": "7.6.3" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/basic/another-remote-module/package.json b/samples/basic/another-remote-module/package.json index 4726f697d..38c8b193b 100644 --- a/samples/basic/another-remote-module/package.json +++ b/samples/basic/another-remote-module/package.json @@ -47,6 +47,6 @@ "useless-lib": "3.0.0" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/basic/host/package.json b/samples/basic/host/package.json index 77beee2ad..4321c27c5 100644 --- a/samples/basic/host/package.json +++ b/samples/basic/host/package.json @@ -51,6 +51,6 @@ "useless-lib": "^2.0.0" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/basic/local-module/package.json b/samples/basic/local-module/package.json index 8dd64cf8f..cfbb51563 100644 --- a/samples/basic/local-module/package.json +++ b/samples/basic/local-module/package.json @@ -60,6 +60,6 @@ "react-router-dom": "6.27.0" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/basic/remote-module/package.json b/samples/basic/remote-module/package.json index f2083c26d..8f7a1c359 100644 --- a/samples/basic/remote-module/package.json +++ b/samples/basic/remote-module/package.json @@ -47,6 +47,6 @@ "useless-lib": "^2.1.0" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/basic/shared/package.json b/samples/basic/shared/package.json index 5947a3fe3..a8694787b 100644 --- a/samples/basic/shared/package.json +++ b/samples/basic/shared/package.json @@ -37,6 +37,6 @@ "typescript": "5.5.4" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/basic/shell/package.json b/samples/basic/shell/package.json index d3da6d2aa..0baf9f47d 100644 --- a/samples/basic/shell/package.json +++ b/samples/basic/shell/package.json @@ -43,6 +43,6 @@ "typescript": "5.5.4" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/express-server/package.json b/samples/endpoints/express-server/package.json index e72170b26..23c6b9913 100644 --- a/samples/endpoints/express-server/package.json +++ b/samples/endpoints/express-server/package.json @@ -31,6 +31,6 @@ "typescript": "5.5.4" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/host/package.json b/samples/endpoints/host/package.json index 5c3e3d38a..e3c08b8e3 100644 --- a/samples/endpoints/host/package.json +++ b/samples/endpoints/host/package.json @@ -67,6 +67,6 @@ "workerDirectory": "public" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/i18next/package.json b/samples/endpoints/i18next/package.json index b4479ae76..ce83e4ae5 100644 --- a/samples/endpoints/i18next/package.json +++ b/samples/endpoints/i18next/package.json @@ -40,6 +40,6 @@ "typescript": "5.5.4" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/layouts/package.json b/samples/endpoints/layouts/package.json index 08bb5bda8..397cb5f35 100644 --- a/samples/endpoints/layouts/package.json +++ b/samples/endpoints/layouts/package.json @@ -46,6 +46,6 @@ "typescript": "5.5.4" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/local-module/package.json b/samples/endpoints/local-module/package.json index f823be1d6..279a9ef25 100644 --- a/samples/endpoints/local-module/package.json +++ b/samples/endpoints/local-module/package.json @@ -79,6 +79,6 @@ "workerDirectory": "public" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/remote-module/package.json b/samples/endpoints/remote-module/package.json index cb749739c..ccc50c16d 100644 --- a/samples/endpoints/remote-module/package.json +++ b/samples/endpoints/remote-module/package.json @@ -66,6 +66,6 @@ "workerDirectory": "public" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/shared/package.json b/samples/endpoints/shared/package.json index 4c0c777e1..24552a331 100644 --- a/samples/endpoints/shared/package.json +++ b/samples/endpoints/shared/package.json @@ -41,6 +41,6 @@ "uuid": "11.0.2" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/samples/endpoints/shell/package.json b/samples/endpoints/shell/package.json index c35339d38..5798465d1 100644 --- a/samples/endpoints/shell/package.json +++ b/samples/endpoints/shell/package.json @@ -57,6 +57,6 @@ "typescript": "5.5.4" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/templates/getting-started/apps/host/package.json b/templates/getting-started/apps/host/package.json index e752b13f9..968ee939b 100644 --- a/templates/getting-started/apps/host/package.json +++ b/templates/getting-started/apps/host/package.json @@ -35,6 +35,6 @@ "react-router-dom": "6.26.1" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/templates/getting-started/apps/local-module/package.json b/templates/getting-started/apps/local-module/package.json index 4c94f2c2a..19caaea47 100644 --- a/templates/getting-started/apps/local-module/package.json +++ b/templates/getting-started/apps/local-module/package.json @@ -32,6 +32,6 @@ "react-router-dom": "6.26.1" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } } diff --git a/templates/getting-started/apps/remote-module/package.json b/templates/getting-started/apps/remote-module/package.json index a7c428715..801a730d9 100644 --- a/templates/getting-started/apps/remote-module/package.json +++ b/templates/getting-started/apps/remote-module/package.json @@ -34,6 +34,6 @@ "react-router-dom": "6.26.1" }, "engines": { - "node": ">=20.0.0" + "node": ">=21.1.0" } }