Components

All Components

Browse all 101 SwiftDS components. Filter by category or search by name to find exactly what you need. Each component is production-ready with full accessibility support.

101 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.

v1.0·iOS 17+
I

DSIconButton

Actions

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

v1.0·iOS 17+
T

DSTextField

Inputs

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

v1.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.

v1.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.

v1.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.

v1.0·iOS 17+
C

DSCommandPalette

NewScreens

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

v2.0·iOS 17+
M

DSMetricCard

NewData Visualization

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

v2.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.

v2.0·iOS 17+
O

DSOnboardingFlow

NewScreens

Multi-step onboarding flow with a step indicator, transition animations between screens, forward/back buttons, and a skip option.

v2.0·iOS 17+
S

DSSecureField

Inputs

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

v1.0·iOS 17+
S

DSSearchBar

Inputs

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

v1.0·iOS 17+
T

DSTextArea

Inputs

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

v1.0·iOS 17+
T

DSToggle

Selection

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

v1.0·iOS 17+
C

DSCheckbox

Selection

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

v1.0·iOS 17+
R

DSRadioGroup

Selection

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

v1.0·iOS 17+
S

DSSlider

Selection

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

v1.0·iOS 17+
A

DSAvatarGroup

Data Display

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

v1.0·iOS 17+
B

DSBadge

Data Display

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

v1.0·iOS 17+
T

DSTag

Data Display

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

v1.0·iOS 17+
L

DSListRow

Data Display

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

v1.0·iOS 17+
T

DSTable

Data Display

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

v1.0·iOS 17+
E

DSEmptyState

Data Display

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

v1.0·iOS 17+
A

DSAlert

Feedback

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

v1.0·iOS 17+
M

DSModal

Feedback

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

v1.0·iOS 17+
B

DSBottomSheet

Feedback

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

v1.0·iOS 17+
P

DSProgressBar

Feedback

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

v1.0·iOS 17+
S

DSSpinner

Feedback

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

v1.0·iOS 17+
S

DSSkeleton

Feedback

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

v1.0·iOS 17+
T

DSTabs

Navigation

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

v1.0·iOS 17+
S

DSSegmentedControl

Navigation

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

v1.0·iOS 17+
F

DSFloatingTabBar

NewNavigation

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

v1.2·iOS 17+
N

DSNavigationBar

Navigation

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

v1.0·iOS 17+
S

DSSidebar

Navigation

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

v1.0·macOS 14+
S

DSStack

Layout

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

v1.0·iOS 17+
G

DSGrid

Layout

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

v1.0·iOS 17+
C

DSContainer

Layout

Max-width content wrapper with automatic horizontal padding.

v1.0·iOS 17+
S

DSSection

Layout

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

v1.0·iOS 17+
D

DSDivider

Layout

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

v1.0·iOS 17+
F

DSFlowLayout

Layout

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

v1.0·iOS 17+
F

DSFeatureCard

NewMarketing

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

v2.0·iOS 17+
L

DSLineChart

NewData Visualization

Animated line chart with a gradient fill, interactive tooltip on long-press, and configurable axes.

v2.0·iOS 17+
B

DSBarChart

NewData Visualization

Vertical bar chart with entry animation, value labels on each bar, and configurable axis labels.

v2.0·iOS 17+
A

DSActivityFeed

NewScreens

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

v2.0·iOS 17+
N

DSNotificationCenter

NewScreens

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

v2.0·iOS 17+
U

DSUserProfileCard

NewScreens

Full user profile card with avatar, name, bio, stats row, and action buttons.

v2.0·iOS 17+
S

DSSettingsRow

NewScreens

Settings row with a coloured icon square, title, optional subtitle, and a right-side control (chevron, toggle, or custom view).

v2.0·iOS 17+
H

DSHeroSection

NewMarketing

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

v2.0·iOS 17+
O

DSOTPField

Inputs

6-digit one-time password input with individual digit boxes, auto-advance, and paste support.

v2.0·iOS 17+
P

DSPhoneField

Inputs

Phone number input with a country code picker, flag icon, and automatic formatting.

v2.0·iOS 17+
S

DSStepper

Selection

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

v2.0·iOS 17+
F

DSFilterChip

Selection

Selectable pill chip with a checkmark on active state. Can be used standalone or in a multi-select group.

v2.0·iOS 17+
R

DSRatingStars

Selection

5-star rating component with tap-to-rate, half-star display, and read-only mode.

v2.0·iOS 17+
D

DSDatePicker

Inputs

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

v2.0·iOS 17+
C

DSColorPicker

Inputs

Colour swatch grid with a custom-colour option via the system colour picker. Supports a predefined palette.

v2.0·iOS 17+
T

DSTooltip

Feedback

Small informational popover that appears on long-press (iOS) or hover (macOS). Disappears automatically after a timeout.

v2.0·iOS 17+
B

DSBreadcrumb

Navigation

Hierarchical path display with chevron separators and tappable ancestor links.

v2.0·iOS 17+
P

DSPagination

Navigation

Page control with previous/next buttons and numbered page indicators. Supports compact (dots) and full (numbers) modes.

v2.0·iOS 17+
A

DSAccordion

Layout

Expandable/collapsible content section with a header and animated disclosure.

v2.0·iOS 17+
P

DSPopover

Overlays

Anchored floating panel with an arrow pointing to its trigger. Contains rich content — not just text.

v2.0·iOS 17+
C

DSContextMenu

Overlays

Long-press context menu with icon-labelled actions. Wraps the native contextMenu with DS token styling.

v2.0·iOS 17+
F

DSFileUpload

Media

Drag-and-drop / tap-to-browse file input with allowed type filtering, size limit, and progress overlay.

v2.0·iOS 17+
I

DSImagePicker

Media

Photo library and camera source picker that returns a UIImage/SwiftUI Image. Shows a preview thumbnail after selection.

v2.0·iOS 17+
M

DSMapView

Media

MapKit wrapper with a pin annotation, user location dot, and a rounded-corner container style matching the DS.

v2.0·iOS 17+
C

DSCheckoutForm

NewScreens

Complete payment form with card number, expiry, CVV, billing address, and an order summary sidebar. Includes real-time card brand detection.

v2.0·iOS 17+
M

DSMediaGallery

NewScreens

Responsive photo/video grid with a full-screen viewer, pinch-to-zoom, and swipe-to-dismiss. Supports lazy loading.

v2.0·iOS 17+
C

DSChatBubble

NewScreens

Message bubble with sent/received alignment, timestamp, delivery status indicators, and support for text, image, and audio messages.

v2.0·iOS 17+
C

DSConversationList

NewScreens

Messages inbox row list with avatar, sender name, message preview, timestamp, and unread count badge.

v2.0·iOS 17+
T

DSTaskCard

NewScreens

Task item card with a completion checkbox, priority badge, due date, assignee avatars, and a label/tag row.

v2.0·iOS 17+
K

DSKanbanBoard

NewScreens

Horizontally scrolling kanban board with draggable cards between columns. Each column shows a card count and colour-coded header.

v2.0·iOS 17+
C

DSCalendarView

NewScreens

Monthly calendar grid with event dots, selected date highlight, and swipe-to-navigate months.

v2.0·iOS 17+
S

DSSearchResultsScreen

NewScreens

Full search screen with a sticky search bar, category filter chips, recent searches, and a results list with skeleton loading.

v2.0·iOS 17+
P

DSProfileEditScreen

NewScreens

Full profile editing screen with avatar picker, name/bio fields, social links section, and a save button with loading state.

v2.0·iOS 17+
D

DSDashboardScreen

NewScreens

Composable dashboard screen with a greeting header, KPI metric row, line/bar chart, activity feed, and quick-action buttons.

v2.0·iOS 17+
C

DSChip

NewSelection

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

1.2.0·iOS
C

DSChipToggle

NewSelection

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

1.2.0·iOS
C

DSChipGroup

NewLayout

Horizontal container for chips with consistent spacing.

1.2.0·iOS
S

DSSelectField

NewInputs

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

1.2.0·iOS
C

DSColorSelector

NewInputs

Grid of tappable color circles that updates selection on tap.

1.2.0·iOS
T

DSTabBar

NewNavigation

Horizontal scrollable tabs with animated underline indicator.

1.2.0·iOS
S

DSSubnavigation

NewNavigation

Horizontal bar of selectable items for secondary navigation.

1.2.0·iOS
B

DSButtonGroup

NewActions

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

1.2.0·iOS
L

DSLink

NewActions

Text link with primary color and optional underline.

1.2.0·iOS
M

DSMenuButton

NewActions

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

1.2.0·iOS
P

DSProgressRing

NewFeedback

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

v1.2·iOS 17+
C

DSCircularProgress

NewFeedback

Circular ring with animated fill showing progress percentage.

1.2.0·iOS
S

DSStatusLabel

NewData Display

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

1.2.0·iOS
P

DSPromoLabel

NewData Display

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

1.2.0·iOS
I

DSImageGallery

NewMedia

Horizontal scrolling image gallery with page indicators.

1.2.0·iOS
C

DSCardCarousel

NewLayout

Horizontal scrolling carousel of cards with spacing and peek effect.

1.2.0·iOS
S

DSStarRating

NewFeedback

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

1.2.0·iOS
S

DSStarRatingControl

NewFeedback

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

1.2.0·iOS
S

DSStepIndicator

NewFeedback

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

1.2.0·iOS
N

DSNoticeBar

NewFeedback

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

1.2.0·iOS
P

DSPageLoader

NewFeedback

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

1.2.0·iOS
T

DSTidbit

NewFeedback

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

1.2.0·iOS
F

DSFullPageInterruption

NewFeedback

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

1.2.0·iOS
P

DSProfileHeroCard

NewScreens

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

1.2.0·iOS
S

DSSkeletonCard

NewFeedback

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

1.2.0·iOS
M

DSMessageBubble

NewMessaging

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

v1.2·iOS 17+
C

DSChatInputBar

NewMessaging

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

v1.2·iOS 17+