Implementation:Microsoft Semantic kernel ProcessFramework SignalR PackageLock
| Knowledge Sources | |
|---|---|
| Domains | NPM_Dependencies, Process_Framework |
| Last Updated | 2026-02-11 00:00 GMT |
Overview
Concrete npm package-lock.json manifest for the React frontend of the Process Framework SignalR demo, provided by the Semantic Kernel repository's demo samples.
Description
This file is an npm lockfile (version 3) for the processwithcloudevents-client React frontend application. It is a very large file (6,849 lines) that pins the exact versions and resolved URLs of all direct and transitive npm dependencies used by the SignalR-based Process Framework demo frontend.
The application's direct dependencies include:
- @fluentui-contrib/react-chat (^0.2.2) -- Fluent UI chat components for the messaging interface.
- @fluentui/react-components (^9.72.7) -- Microsoft Fluent UI React component library.
- @microsoft/signalr (^8.0.7) -- Microsoft SignalR client for real-time communication with the .NET backend.
- @protobuf-ts/grpcweb-transport (^2.9.6), @protobuf-ts/runtime (^2.9.6), @protobuf-ts/runtime-rpc (^2.9.6) -- Protocol Buffers and gRPC-Web support.
- axios (^1.7.9) -- HTTP client for API requests.
- react (^19.2.1) and react-dom (^19.2.1) -- React 19 framework.
- react-markdown (^10.1.0) -- Markdown rendering component.
- uuid (^11.1.0) -- UUID generation utility.
The devDependencies include:
- @eslint/js (^9.21.0) and eslint (^9.21.0) -- Linting.
- @protobuf-ts/plugin (^2.9.6) -- Protobuf TypeScript code generator.
- @types/react (^19.2.7) and @types/react-dom (^19.2.3) -- TypeScript type definitions.
- @vitejs/plugin-react (^4.3.4) -- Vite React plugin for development server and builds.
- eslint-plugin-react-hooks (^5.1.0) -- React hooks linting rules.
Note: This is a very large auto-generated lockfile (6,849 lines). It is managed by npm and should not be manually edited.
Usage
This file is used automatically by npm when running npm install or npm ci in the React frontend directory. It ensures deterministic, reproducible builds by locking every dependency to an exact version. Developers working on the Process Framework SignalR demo use this file to set up the frontend development environment.
Code Reference
Source Location
- Repository: Microsoft_Semantic_kernel
- File: dotnet/samples/Demos/ProcessFrameworkWithSignalR/src/ProcessFramework.Aspire.SignalR.ReactFrontend/package-lock.json
- Lines: 1-6849
Signature
{
"name": "processwithcloudevents-client",
"version": "0.0.0",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "processwithcloudevents-client",
"version": "0.0.0",
"dependencies": {
"@fluentui-contrib/react-chat": "^0.2.2",
"@fluentui/react-components": "^9.72.7",
"@microsoft/signalr": "^8.0.7",
"@protobuf-ts/grpcweb-transport": "^2.9.6",
"@protobuf-ts/runtime": "^2.9.6",
"@protobuf-ts/runtime-rpc": "^2.9.6",
"axios": "^1.7.9",
"react": "^19.2.1",
"react-dom": "^19.2.1",
"react-markdown": "^10.1.0",
"uuid": "^11.1.0"
}
}
}
}
Import
# Navigate to the React frontend directory and install dependencies:
cd dotnet/samples/Demos/ProcessFrameworkWithSignalR/src/ProcessFramework.Aspire.SignalR.ReactFrontend/
npm ci # Uses package-lock.json for deterministic installs
# or
npm install # Updates package-lock.json if needed
I/O Contract
Inputs
| Name | Type | Required | Description |
|---|---|---|---|
| package.json | JSON file | yes | The companion package.json that declares the intended dependency ranges. The lockfile pins these to exact versions. |
| npm registry | network | yes | The npm registry (registry.npmjs.org) from which packages are resolved and downloaded. |
Outputs
| Name | Type | Description |
|---|---|---|
| node_modules/ | directory | The installed dependency tree with all packages at their locked versions. |
| Deterministic build | guarantee | Ensures that all developers and CI environments install identical dependency versions. |
Usage Examples
Installing Dependencies for the React Frontend
# From the repository root:
cd dotnet/samples/Demos/ProcessFrameworkWithSignalR/src/ProcessFramework.Aspire.SignalR.ReactFrontend/
# Install exact locked versions (recommended for CI):
npm ci
# Start the development server:
npm run dev
Updating Dependencies
# Update a specific package:
npm update @microsoft/signalr
# Update all dependencies and regenerate the lockfile:
npm update
# The package-lock.json is automatically updated by npm.