Skip to main content

Components Library

Component Library

Below is the complete list of available components in the SDK packages.

For CLI component availability, run npx primus-ui list in your project.

Package Components (React)

ComponentImportNotes
AICopilotimport { AICopilot } from "primus-react-ui"AI assistant panel.
PrimusLoginimport { PrimusLogin } from "primus-react-ui"Auth form with social providers.
UserProfileimport { UserProfile } from "primus-react-ui"User profile card.
Primus Authimport { PrimusProvider, usePrimusAuth } from "primus-react-ui"Auth provider + hook. See frontend/components/authentication/primus-auth.
PrimusNotificationCenterimport { PrimusNotificationCenter } from "primus-react-ui"Notification bell + panel.
NotificationFeedimport { NotificationFeed } from "primus-react-ui"Simple notification popover.
SecurityDashboardimport { SecurityDashboard } from "primus-react-ui"Security findings list.
PrimusRbacAdminimport { PrimusRbacAdmin } from "primus-react-ui"RBAC admin console.
DocumentViewerimport { DocumentViewer } from "primus-react-ui"Document preview panel.
CheckoutFormimport { CheckoutForm } from "primus-react-ui"Card checkout form.
FileUploaderimport { FileUploader } from "primus-react-ui"Drag and drop upload.
FeatureFlagToggleimport { FeatureFlagToggle } from "primus-react-ui"Feature flag control.
PrimusDataTableimport { PrimusDataTable } from "primus-react-ui"Sortable table.
PrimusModalimport { PrimusModal } from "primus-react-ui"Modal dialog.
PrimusDashboardimport { PrimusDashboard } from "primus-react-ui"Dashboard layout.
DashboardGridimport { DashboardGrid } from "primus-react-ui"Dashboard grid layout.
PrimusStatCardimport { PrimusStatCard } from "primus-react-ui"Stats card.
PrimusActivityFeedimport { PrimusActivityFeed } from "primus-react-ui"Activity timeline.
PrimusFilterBarimport { PrimusFilterBar } from "primus-react-ui"Dashboard filter bar.
PrimusExportMenuimport { PrimusExportMenu } from "primus-react-ui"Export menu.
PrimusSearchimport { PrimusSearch } from "primus-react-ui"Debounced search input.
PrimusDateRangePickerimport { PrimusDateRangePicker } from "primus-react-ui"Date range picker.
PrimusLineChartimport { PrimusLineChart } from "primus-react-ui"Line chart (Chart.js).
PrimusAreaChartimport { PrimusAreaChart } from "primus-react-ui"Area chart (Chart.js).
PrimusBarChartimport { PrimusBarChart } from "primus-react-ui"Bar chart (Chart.js).
PrimusPieChartimport { PrimusPieChart } from "primus-react-ui"Pie chart (Chart.js).
PrimusSparklineimport { PrimusSparkline } from "primus-react-ui"Sparkline chart.
PrimusHeaderimport { PrimusHeader } from "primus-react-ui"Header bar.
PrimusSidebarimport { PrimusSidebar } from "primus-react-ui"Sidebar navigation.
PrimusLayoutimport { PrimusLayout } from "primus-react-ui"App layout shell.
TransactionHistoryimport { TransactionHistory } from "primus-react-ui"Transactions list.
AccountDashboardimport { AccountDashboard } from "primus-react-ui"Account overview.
CreditScoreCardimport { CreditScoreCard } from "primus-react-ui"Credit score summary.
LoanCalculatorimport { LoanCalculator } from "primus-react-ui"Loan calculator.
KYCVerificationimport { KYCVerification } from "primus-react-ui"KYC status panel.
CreditCardVisualimport { CreditCardVisual } from "primus-react-ui"Card visual.
QuoteComparisonimport { QuoteComparison } from "primus-react-ui"Insurance quote compare.
PremiumCalculatorimport { PremiumCalculator } from "primus-react-ui"Premium estimator.
PolicyCardimport { PolicyCard } from "primus-react-ui"Policy card.
ClaimStatusTrackerimport { ClaimStatusTracker } from "primus-react-ui"Claim status timeline.
FraudDetectionDashboardimport { FraudDetectionDashboard } from "primus-react-ui"Fraud insights.
AgentDirectoryimport { AgentDirectory } from "primus-react-ui"Agent list.
LogViewerimport { LogViewer } from "primus-react-ui"Log list.
Buttonimport { Button } from "primus-react-ui"Shared button.
Inputimport { Input } from "primus-react-ui"Shared input.

Package Components (Angular)

ComponentSelectorNotes
Account Card<primus-account-card>Banking card.
Account Dashboard<primus-account-dashboard>Account overview.
Agent Directory<primus-agent-directory>Agent list.
AI Copilot<primus-ai-copilot>AI assistant panel.
Button<primus-button>UI button.
Checkout Form<primus-checkout-form>Card checkout form.
Claim Status Tracker<primus-claim-status-tracker>Claim status timeline.
Claim Tracker<primus-claim-tracker>Claim tracker view.
Credit Card<primus-credit-card>Card visual.
Credit Score Card<primus-credit-score-card>Credit score summary.
Dashboard<primus-dashboard>Dashboard layout.
Dashboard Grid<primus-dashboard-grid>Grid layout.
Grid Item<primus-grid-item>Grid span wrapper.
Activity Feed<primus-activity-feed>Activity timeline.
Filter Bar<primus-filter-bar>Dashboard filter bar.
Export Menu<primus-export-menu>Export menu.
Line Chart<primus-line-chart>Line chart (Chart.js).
Area Chart<primus-area-chart>Area chart (Chart.js).
Bar Chart<primus-bar-chart>Bar chart (Chart.js).
Pie Chart<primus-pie-chart>Pie chart (Chart.js).
Sparkline<primus-sparkline>Sparkline chart.
Data Table<primus-data-table>Sortable table.
Date Picker<primus-date-picker>Date input.
Date Range Picker<primus-date-range-picker>Date range input.
Document Viewer<primus-document-viewer>Document preview.
Feature Flag Toggle<primus-feature-flag-toggle>Feature flag control.
File Uploader<primus-file-uploader>Drag and drop upload.
Form Field<primus-form-field>Field wrapper.
Fraud Detection Dashboard<primus-fraud-detection-dashboard>Fraud insights.
Header<primus-header>Header bar.
Input<primus-input>Form input.
KYC Verification<primus-kyc-verification>KYC status.
Layout<primus-layout>App layout shell.
Loan Calculator<primus-loan-calculator>Loan calculator.
Log Viewer<primus-log-viewer>Log list.
Login<primus-login>Auth form.
Primus Auth-Auth services: PrimusAuthService, PrimusAuthStateService. See frontend/components/authentication/primus-auth.
Modal<primus-modal>Modal dialog.
Notification Center<primus-notification-center>Notification bell + panel.
Notification Feed<primus-notification-feed>Notification popover.
Policy Card<primus-policy-card>Policy card.
Premium Calculator<primus-premium-calculator>Premium estimator.
Quote Comparison<primus-quote-comparison>Quote compare.
Radio Group<primus-radio-group>Radio options.
RBAC Admin<primus-rbac-admin>RBAC admin console.
Section<primus-section>Section container.
Security Dashboard<primus-security-dashboard>Security findings.
Security Scan Panel<primus-security-scan-panel>Scan panel.
Select<primus-select>Select input.
Search<primus-search>Debounced search input.
Sidebar<primus-sidebar>Sidebar nav.
Stats Card<primus-stats-card>Metric card.
Step<primus-step>Stepper step.
Stepper<primus-stepper>Stepper UI.
Summary Card<primus-summary-card>Summary metric.
Textarea<primus-textarea>Textarea input.
Theme Toggle<primus-theme-toggle>Theme switch.
Toggle<primus-toggle>Toggle switch.
Transaction History<primus-transaction-history>Transactions list.
User Profile<primus-user-profile>User profile card.
Wizard<primus-wizard>Wizard container.
Wizard Nav<primus-wizard-nav>Wizard navigation.

RBAC UI

The RBAC admin console is a reusable UI for managing roles, permissions, groups, memberships, assignments, and access checks.

React

import { PrimusRbacAdmin } from "primus-react-ui";

export default function RbacAdminPage() {
return (
<PrimusRbacAdmin
apiUrl="https://api.yourdomain.com"
authToken={() => localStorage.getItem("access_token")}
defaultScope={{ applicationId: "app-core", tenantId: "tenant-001" }}
withCredentials
title="RBAC Admin"
subtitle="Roles, permissions, teams, and access checks"
/>
);
}

Angular

<primus-rbac-admin
[apiUrl]="'https://api.yourdomain.com'"
[withCredentials]="true"
title="RBAC Admin"
subtitle="Roles, permissions, teams, and access checks">
</primus-rbac-admin>

Notes

  1. withCredentials enables cookie-based auth and CSRF headers for the Primus BFF. Use this if your backend uses secure cookies.
  2. authToken can be a string or function returning a bearer token for secured APIs.
  3. defaultScope pre-fills application and tenant IDs for multi-tenant setups.
  4. showHero toggles the split hero layout that matches the Primus Authentication look.
  5. apiUrl should be the origin of your backend (without /api).
  6. The RBAC API surface is documented in the RBAC integration guide: /docs/modules/rbac/integration-guide.

Usage Examples

Installing a component

npx primus-ui add <component-name>

Using the component (React package)

import { AccountDashboard } from "primus-react-ui";

export default function Dashboard() {
return <AccountDashboard apiUrl="https://api.yourdomain.com" />;
}
Primus SaaS UI Components

@primus/ui-core is the zero-dependency base layer that powers all component styling. It provides design tokens, semantic HTML element styles, and Web Components (<primus-tabs>, <primus-dropdown>, toast API) that work in React, Angular, and plain HTML.

Add it once and all your HTML elements inherit the Primus purple brand palette automatically:

npm install @primus/ui-core

Full reference →