Components

All Components

Browse all 79 SwiftDS components. Filter by category or search by name to find exactly what you need. Each component ships with accessibility support built in.

79 components found

B

DSButton

Actions

Universal button component with 5 visual variants, 3 sizes, icon support, loading and disabled states. Uses spring animations for micro-interactions.

0.1.0·iOS 17+
I

DSIconButton

Actions

Compact button containing only an SF Symbol. Ideal for toolbars, navigation bars, and contextual actions in lists.

0.1.0·iOS 17+
T

DSTextField

Inputs

Text field with support for label, placeholder, leading/trailing icons, hint, error message, focus and disabled states.

0.1.0·iOS 17+
C

DSCard

Data Display

Content container with 4 visual variants, large border radius, and interactive hover support. Generic over any View as content.

0.1.0·iOS 17+
T

DSToast

Feedback

Non-intrusive notification that appears at the top of the screen. Available as both a standalone component and a .dsToast() view modifier.

0.1.0·iOS 17+
A

DSAvatar

Data Display

Represents a user with initials or an image. Supports 5 sizes and an online/offline/busy/away status indicator.

0.1.0·iOS 17+
C

DSCommandPalette

NewScreens

Command palette activated by ⌘K. Real-time filtering, section grouping, keyboard shortcuts, and arrow-key navigation.

0.1.0·iOS 17+
M

DSMetricCard

NewData Visualization

Dashboard widget with a primary metric, percentage change, animated sparkline, and label. Supports trending up/down/neutral.

0.1.0·iOS 17+
P

DSPricingCard

NewMarketing

Subscription plan card with name, price, billing period, feature list with checkmarks, CTA, and highlighted state for the recommended plan.

0.1.0·iOS 17+
O

DSOnboardingCarousel

NewScreens

Paged onboarding with an icon, title and subtitle per step, page dots, and Skip / Next / Get started buttons.

0.1.0·iOS 17+
S

DSSecureField

Inputs

Password input with a show/hide toggle. Shares the same visual language as DSTextField.

0.1.0·iOS 17+
S

DSSearchBar

Inputs

Dedicated search input with a magnifying glass icon, clear button, and optional cancel button.

0.1.0·iOS 17+
T

DSTextArea

Inputs

Multi-line text input that expands as the user types, with an optional character counter.

0.1.0·iOS 17+
T

DSToggle

Selection

On/off switch with an optional label and description. Wraps the native SwiftUI Toggle with design-token styling.

0.1.0·iOS 17+
C

DSCheckbox

Selection

Multi-select checkbox with a checkmark animation. Supports indeterminate state for parent checkboxes.

0.1.0·iOS 17+
R

DSRadioGroup

Selection

Single-select radio button group. Generic over any Hashable value type.

0.1.0·iOS 17+
S

DSSlider

Selection

Range slider with min/max labels and an optional live value formatter.

0.1.0·iOS 17+
A

DSAvatarGroup

Data Display

Overlapping stack of avatars with a '+N' overflow indicator when the list exceeds the max.

0.1.0·iOS 17+
B

DSBadge

Data Display

Compact label with 3 visual variants (filled, soft, outline), gradient support, and 3 size options.

0.1.0·iOS 17+
T

DSTag

Data Display

Removable label with a custom colour, used for categorisation and filtering.

0.1.0·iOS 17+
L

DSListRow

Data Display

Standard list row with leading icon, title, optional subtitle, badge, and a trailing action.

0.1.0·iOS 17+
T

DSTable

Data Display

Generic data table with column headers, alternating row tint, hover effect, and row selection support.

0.1.0·iOS 17+
E

DSEmptyState

Data Display

Placeholder view with an SF Symbol, title, description, and optional CTA button.

0.1.0·iOS 17+
A

DSAlert

Feedback

Inline alert banner with an icon, title, optional message, and a dismiss button. Non-modal.

0.1.0·iOS 17+
M

DSModal

Feedback

Centered overlay dialog with a header, scrollable content area, and footer actions. Blocks background interaction.

0.1.0·iOS 17+
B

DSBottomSheet

Feedback

iOS-native bottom sheet using presentationDetents, with a drag handle and configurable snap points.

0.1.0·iOS 17+
P

DSProgressBar

Feedback

Linear progress indicator with an optional label and percentage display. Supports indeterminate (loading) mode.

0.1.0·iOS 17+
S

DSSpinner

Feedback

Circular indeterminate loading indicator with 3 sizes and a colour token.

0.1.0·iOS 17+
S

DSSkeleton

Feedback

Pulsing placeholder shapes that mimic the layout of content while it loads.

0.1.0·iOS 17+
T

DSTabs

Navigation

Tab bar with icon, label, and badge support. Uses spring animations for the active indicator.

0.1.0·iOS 17+
S

DSSegmentedControl

Navigation

Horizontal row of mutually exclusive segments with a sliding active indicator.

0.1.0·iOS 17+
F

DSFloatingTabBar

NewNavigation

Floating tab bar with capsule, rounded, or standard styles. Features smooth spring animations and matched geometry transitions.

0.1.0·iOS 17+
N

DSNavigationBar

Navigation

App navigation bar with a title, optional back button, and leading/trailing icon button slots.

0.1.0·iOS 17+
S

DSSidebar

Navigation

Collapsible navigation sidebar for macOS and iPad with section grouping and active-state indicator.

0.1.0·iOS 17+
S

DSStack

Layout

Convenience wrapper around HStack/VStack with design-token spacing pre-applied.

0.1.0·iOS 17+
G

DSGrid

Layout

Responsive CSS-style grid wrapper with configurable columns and gap from the spacing token scale.

0.1.0·iOS 17+
C

DSContainer

Layout

Max-width content wrapper with automatic horizontal padding.

0.1.0·iOS 17+
S

DSSection

Layout

Named content group with an optional header, footer note, and inset background.

0.1.0·iOS 17+
D

DSDivider

Layout

Horizontal or vertical rule using DSColor.border, with optional label.

0.1.0·iOS 17+
F

DSFlowLayout

Layout

Wrapping layout that automatically flows children onto new lines when horizontal space is exhausted.

0.1.0·iOS 17+
F

DSFeatureCard

NewMarketing

Marketing card with an icon, headline, and body text. Designed for feature grids on landing pages.

0.1.0·iOS 17+
L

DSLineChartWidget

NewData Visualization

Card with a title and one or more line series drawn over shared x-axis labels.

0.1.0·iOS 17+
B

DSBarChartWidget

NewData Visualization

Card with a title and a set of labeled vertical bars.

0.1.0·iOS 17+
A

DSActivityFeed

NewScreens

Vertical event feed with avatar, event type icon, description, and timestamp. Supports grouping by date.

0.1.0·iOS 17+
N

DSNotificationCenter

NewScreens

Full notification centre with grouping by type, mark-all-read, per-notification actions, and empty state.

0.1.0·iOS 17+
H

DSHeroSection

NewMarketing

Full-width landing page hero with an announcement badge, headline, subheadline, CTA buttons, and a social proof row.

0.1.0·iOS 17+
S

DSStepper

Selection

Numeric input with − and + buttons. Respects min/max bounds and disables the buttons at limits.

0.1.0·iOS 17+
F

DSFilterBar

Selection

Horizontally scrolling row of single-select filter chips.

0.1.0·iOS 17+
D

DSDatePicker

Inputs

Date (and optional time) picker with a calendar grid popover. Wraps the native DatePicker with DS token styling.

0.1.0·iOS 17+
D

dsTooltip

Feedback

View modifier that shows a short label next to a view while the pointer hovers it (macOS, iPadOS with a pointer, visionOS).

0.1.0·iOS 17+
T

TaskCard

NewScreens

Pattern: a task card composed from DSCard, DSCheckbox, DSStatusLabel and DSAvatarGroup. There is no DSTaskCard type.

0.1.0·iOS 17+
D

DashboardScreen

NewScreens

Pattern: an analytics dashboard composed from DSDashboardGrid, DSMetricCard, DSLineChartWidget and DSBarChartWidget. There is no DSDashboardScreen type.

0.1.0·iOS 17+
C

DSChip

NewSelection

Action chip with title, optional icons, and variant-based styling for filters and tags.

0.1.0·iOS 17+
C

DSChipToggle

NewSelection

Selectable chip with on/off state that shows a checkmark when selected.

0.1.0·iOS 17+
C

DSChipGroup

NewLayout

Horizontal container for chips with consistent spacing.

0.1.0·iOS 17+
S

DSSelectField

NewInputs

Dropdown menu that shows options and updates a binding with the selected value.

0.1.0·iOS 17+
C

DSColorSelector

NewInputs

Grid of tappable color circles that updates selection on tap.

0.1.0·iOS 17+
T

DSTabBar

NewNavigation

Horizontal scrollable tabs with animated underline indicator.

0.1.0·iOS 17+
S

DSSubnavigation

NewNavigation

Horizontal bar of selectable items for secondary navigation.

0.1.0·iOS 17+
B

DSButtonGroup

NewActions

Horizontal pair of buttons for common action patterns like Cancel + Confirm.

0.1.0·iOS 17+
L

DSLink

NewActions

Text link with primary color and optional underline.

0.1.0·iOS 17+
M

DSMenuButton

NewActions

Button that opens a dropdown menu of actions with optional icons.

0.1.0·iOS 17+
P

DSProgressRing

NewFeedback

Generic circular progress ring with gradient support and customizable center content. Foundation for app-specific progress indicators.

0.1.0·iOS 17+
C

DSCircularProgress

NewFeedback

Circular ring with animated fill showing progress percentage.

0.1.0·iOS 17+
S

DSStatusLabel

NewData Display

Status label with icon indicating success, warning, error, info, or neutral state.

0.1.0·iOS 17+
P

DSPromoLabel

NewData Display

Promotional label for discounts, new items, or special badges.

0.1.0·iOS 17+
I

DSImageGallery

NewLayout

Horizontal scrolling image gallery with page indicators.

0.1.0·iOS 17+
C

DSCardCarousel

NewLayout

Horizontal scrolling carousel of cards with spacing and peek effect.

0.1.0·iOS 17+
S

DSStarRating

NewFeedback

Display-only star rating showing a value from 0 to 5 stars.

0.1.0·iOS 17+
S

DSStarRatingControl

NewFeedback

Interactive star rating control allowing users to input ratings from 0 to 5.

0.1.0·iOS 17+
S

DSStepIndicator

NewFeedback

Horizontal progress bar showing current step in a multi-step process.

0.1.0·iOS 17+
N

DSNoticeBar

NewFeedback

Banner notice with icon, title, optional message, link, and dismiss button.

0.1.0·iOS 17+
P

DSPageLoader

NewFeedback

Full-screen loading overlay with centered spinner and optional message.

0.1.0·iOS 17+
T

DSTidbit

NewFeedback

Inline callout card with icon, title, body text, optional button, and dismiss.

0.1.0·iOS 17+
F

DSFullPageInterruption

NewFeedback

Full-screen modal overlay for critical interruptions like session expiry.

0.1.0·iOS 17+
P

DSProfileHeroCard

NewScreens

Profile header card with avatar, name, bio, and stats.

0.1.0·iOS 17+
S

DSSkeletonCard

NewFeedback

Card-shaped skeleton placeholder with pulsing animation for loading states.

0.1.0·iOS 17+
M

DSMessageBubble

NewMessaging

Chat message bubble with support for custom content, loading states, avatars, and asymmetric styling for user vs. other messages.

0.1.0·iOS 17+
C

DSChatInputBar

NewMessaging

Chat input field with send button, optional attachment button, and support for single-line or multi-line input.

0.1.0·iOS 17+