Comprehensive Angular dashboard components for MemberJunction Explorer, providing administrative interfaces for AI operations, entity management, actions, communication, testing, scheduling, credentials, API keys, version history, MCP servers, and more.
This package provides a rich collection of dashboard components registered as BaseResourceComponent subclasses. Each dashboard is loaded dynamically within the Explorer shell based on application navigation configuration. Dashboards follow MemberJunction's engine-class pattern for data access (no Angular services for data) and use getter/setter state management for reactivity.
graph TD
BRC["BaseResourceComponent"] --> AID["AI Dashboard"]
BRC --> EAD["Entity Admin Dashboard"]
BRC --> ACT["Actions Dashboard"]
BRC --> COM["Communication Dashboard"]
BRC --> TST["Testing Dashboard"]
BRC --> SCH["Scheduling Dashboard"]
BRC --> CRD["Credentials Dashboard"]
BRC --> AK["API Keys Dashboard"]
BRC --> MCP["MCP Dashboard"]
BRC --> CS["Component Studio"]
BRC --> DE["Data Explorer"]
BRC --> VH["Version History"]
BRC --> QB["Query Browser"]
BRC --> DB["Dashboard Browser"]
BRC --> HD["Home Dashboard"]
BRC --> LST["Lists Dashboard"]
BRC --> KH["Knowledge Hub"]
KH --> VS["Vector Search"]
KH --> DD["Duplicate Detection"]
KH --> CL["Clustering"]
KH --> AT["Content Autotagging"]
KH --> KC["Knowledge Config"]
style BRC fill:#7c5295,stroke:#563a6b,color:#fff
style KH fill:#2d8659,stroke:#1a5c3a,color:#fff
style VS fill:#2d8659,stroke:#1a5c3a,color:#fff
style DD fill:#2d8659,stroke:#1a5c3a,color:#fff
style CL fill:#2d8659,stroke:#1a5c3a,color:#fff
style AT fill:#2d8659,stroke:#1a5c3a,color:#fff
style KC fill:#2d8659,stroke:#1a5c3a,color:#fff
style AID fill:#2d6a9f,stroke:#1a4971,color:#fff
style EAD fill:#2d6a9f,stroke:#1a4971,color:#fff
style ACT fill:#2d6a9f,stroke:#1a4971,color:#fff
style COM fill:#2d8659,stroke:#1a5c3a,color:#fff
style TST fill:#2d8659,stroke:#1a5c3a,color:#fff
style SCH fill:#2d8659,stroke:#1a5c3a,color:#fff
style CRD fill:#b8762f,stroke:#8a5722,color:#fff
style AK fill:#b8762f,stroke:#8a5722,color:#fff
style MCP fill:#b8762f,stroke:#8a5722,color:#fff
style CS fill:#b8762f,stroke:#8a5722,color:#fff
style DE fill:#2d6a9f,stroke:#1a4971,color:#fff
style VH fill:#2d8659,stroke:#1a5c3a,color:#fff
style QB fill:#b8762f,stroke:#8a5722,color:#fff
style DB fill:#b8762f,stroke:#8a5722,color:#fff
style HD fill:#7c5295,stroke:#563a6b,color:#fff
style LST fill:#2d6a9f,stroke:#1a4971,color:#fff
The Knowledge Hub application provides a suite of dashboards for managing vector infrastructure, content processing, and AI-powered data exploration.
@memberjunction/ng-clusteringFetchEntityVectors GraphQL query to retrieve vectors from Pinecone with entity metadata filteringThe Classify sub-app (driver class AutotaggingPipelineResource) is a thin host shell that delegates each tab to a self-contained sub-page component. See the Classify architecture README for the full component map, data layer, and feature details.
Left-navigation tabs:
Architecture: the former 5,147-line monolith was decomposed into 6 tab components (tabs/) + 4 dialog components (dialogs/) + a shared pure layer (shared/: types, formatters, dry-run disposition logic). Cacheable metadata is read from existing engines (KnowledgeHubMetadataEngine, TagEngineBase, AIEngineBase); high-volume rows use RunView (never cached).
The Predictive Studio app (src/PredictiveStudio/) is a multi-section, lazy-loaded surface for training, comparing, deploying, and monitoring ML models (see the Predictive Studio Guide). Its sections include Home, Algorithm Catalog, Pipeline Builder, Experiments, Model Registry, Compare Runs, and Models in Production (PSProductionResourceComponent — deployed models, what each writes, schedule, last run, and a generic prediction-distribution mini-viz, all driven by MJ: ML Model Scoring Bindings + MJ: Process Runs). The panels read live engine data via PredictiveStudioEngine; Promote/Validate/Archive and experiment Pause/Resume/Cancel are wired to Remote Operations behind a confirm modal, and Home's "Ask the agent" CTA opens a docked, seeded Model-Dev-Agent chat. See src/PredictiveStudio/ and the guide's Business-User Experience section.
npm install @memberjunction/ng-dashboards
| Dependency | Purpose |
|---|---|
@memberjunction/core, @memberjunction/core-entities |
Entity metadata and data access |
@memberjunction/ng-base-application |
BaseResourceComponent base |
@memberjunction/ng-shared, @memberjunction/ng-shared-generic |
Shared services, loading indicators |
@memberjunction/ng-dashboard-viewer |
Dashboard rendering |
@memberjunction/ng-query-viewer |
Query execution and display |
@progress/kendo-angular-* |
Kendo UI components |
d3 |
Data visualization |
codemirror |
Code editing |
import { DashboardsModule } from '@memberjunction/ng-dashboards';
@NgModule({
imports: [DashboardsModule]
})
export class AppModule {}
All dashboard components are registered via @RegisterClass(BaseResourceComponent, 'ClassName') and are loaded dynamically based on application navigation configuration. They do not need to be referenced directly in templates.
FormBuilderResourceComponent (under src/FormBuilder/) is the
standalone Form Studio surface — reachable from the app rail. Cockpit
layout:
joinVersionsWithOverrides).
Row-level "Activate" / "Restore" buttons disambiguated by status.<mj-interactive-form> mount bound to a real
Top-1 record from the target entity (ORDER BY name field). Spec
merges live EditableCode over the saved spec so
dataRequirements / charts continue to work.ConversationBridgeService.RequestExpandOverlay() and re-registers
ActiveForm context.New-form flow seeds the canvas + code from
buildDefaultFormScaffold(entityName, provider) (in
@memberjunction/interactive-component-types/forms). Manual create
starts at the same baseline as the AI agent path.
EntityFormOverrideService (under ComponentStudio/services/) holds
activateVersion() and revertToComponent() — client-side mirrors of
the server actions used by the cockpit's version-rail rows.
See /plans/interactive-forms/phase-2-runtime-loop.md for the full architecture.
cd packages/Angular/Explorer/dashboards && npm run build
ISC