@3dsource/source-ui-native
v3.9.0
Published
A bunch of native ui elements
Readme
@3dsource/source-ui-native
A design system foundation for 3D Source applications: standalone Angular components plus a self-contained SCSS style kit that works with any framework.
Overview
The library ships two things:
- Angular components -- standalone, signal-based,
OnPush— ready to drop into any Angular project. - SCSS styles & design tokens -- can be imported into React, Vue, plain HTML, or any other stack. You write or copy the markup yourself (snippets available in the demo app), and the styles take care of the rest.
Installation
npm i @3dsource/source-ui-nativeUsage
Importing Styles
Add the following import to your main styles file:
@use '../node_modules/@3dsource/source-ui-native/styles/source.ui.native.scss';Using Components
Import the desired component and add it to your component's imports:
import { ChangeDetectionStrategy, Component } from '@angular/core';
import { SourceButtonComponent } from '@3dsource/source-ui-native';
@Component({
selector: 'app-example',
imports: [SourceButtonComponent],
template: `<src-button weight="primary" size="md">Click Me</src-button>`,
changeDetection: ChangeDetectionStrategy.OnPush,
})
export class ExampleComponent {}Available Components
UI Elements
- src-badge - Display badges and tags
- src-banner - Show notification banners
- src-button - Customizable button component
- src-copyright - Display copyright information
- src-divider - Horizontal divider for lists
- src-hint - Show hints or error messages
- src-icon-button - Display icon button
- src-loading - Loading indicator
- src-logo-loading - Loading indicator with logo
- src-modal - Modal element for simple modals
- src-slider - Simple slider component
- src-tile - Image thumbnail tile for previews, presets, and option selectors
- src-toolbar - CSS-only inline container for grouping buttons
- Basic styles for lists, form elements, overlays
Component Examples
Button Component
<src-button weight="primary" size="md">Click Me</src-button>Badge Component
<src-badge context="info">Info</src-badge>Loading Component
import { SourceLoadingComponent } from '@3dsource/source-ui-native';<src-loading [size]="64" backgroundStrokeColor="#e0f8ee" progressStrokeColor="#007a5c" />Customization
Components can be customized by overriding global CSS variables or by setting values for particular components variables. Whole table of CSS custom properties is available in the documentation site
:root {
--src-color-primary-500: #3f51b5;
--src-text-body-main: #fff;
}.src-button {
--srcButtonBgColor: #3f51b5;
--srcButtonBorderRadius: 6px;
--srcButtonFontColor: #fff;
--srcButtonPaddings: 8px 16px;
}You can see all available options and examples in documentation
Browser Support
- Chrome (latest)
- Firefox (latest)
- Safari (latest)
- Edge (latest)
