Arcane Jaspr

A Flutter-like UI component library for Jaspr web applications. Write familiar Dart code, get semantic HTML + CSS.

Works everywhere: Full interactivity on both hydrated Jaspr apps and static sites.

The Problem: Web Development in Dart

Building web UIs in Dart traditionally means wrestling with raw HTML and CSS strings:

Raw HTML + CSS (The Pain)

<div style="display: flex; flex-direction: column; gap: 8px; width: 100%;">
  <label style="font-size: 0.875rem; font-weight: 500; color: var(--text-secondary);">
    Username
  </label>
  <input
    type="text"
    placeholder="Enter username"
    style="
      padding: 10px 14px;
      font-size: 0.875rem;
      border: 1px solid var(--border-color);
      border-radius: 8px;
      background: var(--surface);
      color: var(--text-primary);
      outline: none;
      transition: border-color 0.15s ease, box-shadow 0.15s ease;
    "
  />
  <span style="font-size: 0.75rem; color: var(--text-muted);">
    Choose a unique username
  </span>
</div>

Problems:

  • No autocomplete for CSS properties
  • Typos become runtime bugs
  • Copy-paste styling everywhere
  • No type safety

Jaspr (Better, but...)

div(
  styles: Styles(raw: {
    'display': 'flex',
    'flex-direction': 'column',
    'gap': '8px',
    'width': '100%',
  }),
  [
    label(
      styles: Styles(raw: {
        'font-size': '0.875rem',
        'font-weight': '500',
        'color': 'var(--text-secondary)',
      }),
      [text('Username')],
    ),
    input(
      type: InputType.text,
      attributes: {'placeholder': 'Enter username'},
      styles: Styles(raw: {
        'padding': '10px 14px',
        'font-size': '0.875rem',
        'border': '1px solid var(--border-color)',
        'border-radius': '8px',
        'background': 'var(--surface)',
        'color': 'var(--text-primary)',
        // ... more CSS strings
      }),
      [],
    ),
    span(
      styles: Styles(raw: {'font-size': '0.75rem', 'color': 'var(--text-muted)'}),
      [text('Choose a unique username')],
    ),
  ],
)

Still requires:

  • Memorizing CSS property names
  • String-based values with no validation
  • Manual theming integration

Arcane Jaspr (The Solution)

ArcaneTextInput(
  label: 'Username',
  placeholder: 'Enter username',
  helperText: 'Choose a unique username',
  onChanged: (value) => print(value),
)

That's it. One component, type-safe, themed, accessible.

Flutter Developers Feel at Home

If you know Flutter, you already know Arcane Jaspr:

Flutter Arcane Jaspr
TextField(decoration: InputDecoration(...)) ArcaneTextInput(label: ..., placeholder: ...)
DropdownButton(items: [...]) ArcaneSelector(options: [...])
Column(children: [...]) ArcaneColumn(children: [...])
Container(padding: ..., child: ...) ArcaneDiv(styles: ArcaneStyleData(...), children: [...])
ElevatedButton(onPressed: ...) ArcaneButton.primary(onPressed: ...)

Type-Safe Styling with Enums

No more magic strings. Every CSS property is an enum:

// Flutter
Container(
  padding: EdgeInsets.all(16),
  decoration: BoxDecoration(
    color: Colors.surface,
    borderRadius: BorderRadius.circular(8),
    boxShadow: [BoxShadow(...)],
  ),
  child: child,
)

// Arcane Jaspr
ArcaneDiv(
  styles: const ArcaneStyleData(
    padding: PaddingPreset.lg,          // Not 'padding': '16px'
    background: Background.surface,     // Not 'background': 'var(--surface)'
    borderRadius: Radius.md,            // Not 'border-radius': '8px'
    shadow: Shadow.md,                  // Not 'box-shadow': '0 4px 6px...'
  ),
  children: [child],
)

Real-World Examples

Searchable Dropdown (ArcaneSelector)

Raw HTML approach - ~150 lines of HTML, CSS, and JavaScript

Arcane Jaspr approach:

ArcaneSelector<String>(
  label: 'Country',
  options: [
    ArcaneSelectorOption(value: 'us', label: 'United States', icon: flagUs),
    ArcaneSelectorOption(value: 'uk', label: 'United Kingdom', icon: flagUk),
    ArcaneSelectorOption(value: 'ca', label: 'Canada', icon: flagCa),
  ],
  value: selectedCountry,
  onChanged: (value) => setState(() => selectedCountry = value),
  searchable: true,              // Built-in search
  clearable: true,               // Built-in clear button
  size: SelectorSize.md,         // Enum, not 'height': '40px'
  dropdownDirection: DropdownDirection.down,  // Type-safe positioning
)

Inline Editable Text (ArcaneMutableText)

The old way: Build a text display, build an input, manage edit state, handle keyboard events, style both states...

Arcane Jaspr:

ArcaneMutableText(
  value: documentTitle,
  placeholder: 'Untitled Document',
  onSave: (newTitle) => updateTitle(newTitle),
  trigger: MutableTextTrigger.click,       // or .doubleClick, .icon
  inputType: MutableTextInputType.text,    // or .multiline, .number
  displayStyle: MutableTextStyle.subtle,   // or .prominent, .minimal
  selectAllOnEdit: true,
)

Features

  • 75+ Components - Buttons, inputs, dialogs, navigation, data display, and more
  • One-Line Theming - 20+ built-in themes with full customization
  • Static Site Support - Automatic JavaScript fallbacks when hydration is unavailable
  • Type-Safe Styling - ArcaneStyleData with enum-based CSS properties
  • Firebase Auth - Built-in authentication UI with OAuth support
  • Accessible - ARIA attributes, keyboard navigation, semantic HTML

Installation

dependencies:
  arcane_jaspr: ^2.5.0

Quick Start

import 'package:arcane_jaspr/arcane_jaspr.dart';

class App extends StatelessComponent {
  @override
  Component build(BuildContext context) {
    return ArcaneApp(
      theme: ArcaneTheme.green,
      child: ArcaneScreen(
        header: const ArcaneBar(titleText: 'My App'),
        child: ArcaneContainer(
          child: ArcaneColumn(
            children: [
              const ArcaneHeadline('Welcome'),
              ArcaneButton.primary(
                label: 'Get Started',
                onPressed: () {},
              ),
            ],
          ),
        ),
      ),
    );
  }
}

Theming

Change your entire app's look with one line:

ArcaneApp(
  theme: ArcaneTheme.blue,  // or .green, .purple, .orange, etc.
  child: MyApp(),
)

Available Themes

Category Themes
Primary red, orange, yellow, green, blue, indigo, purple, pink
Neutral darkGrey, grey, lightGrey, white, black
OLED oledRed, oledGreen, oledBlue, oledPurple, oledWhite

Theme Customization

ArcaneApp(
  theme: ArcaneTheme.blue.copyWith(
    themeMode: ThemeMode.dark,
    radius: 0.75,           // Corner roundness
    surfaceOpacity: 0.9,    // Glass effect
  ),
  child: MyApp(),
)

Components at a Glance

Inputs

ArcaneTextInput(label: 'Email', placeholder: 'you@example.com')
ArcaneSelector(options: [...], value: selected, searchable: true)
ArcaneCheckbox(checked: true, onChanged: (_) {})
ArcaneSlider(value: 50, min: 0, max: 100)
ArcaneMutableText(value: 'Click to edit', onSave: (v) {})

Layout

ArcaneRow(children: [...])
ArcaneColumn(children: [...])
ArcaneCard(child: ...)
ArcaneContainer(maxWidth: MaxWidth.lg, child: ...)
ArcaneBar(titleText: 'App', trailing: [...])
ArcaneSidebar(children: [...])
ArcaneTabs(tabs: [...])
ArcaneDropdownMenu(trigger: ..., items: [...])

Display

ArcaneAvatar(imageUrl: '...', size: 48)
ArcaneBadge(label: 'New', variant: BadgeVariant.success)
ArcaneProgressBar(value: 0.75)
ArcaneDataTable(columns: [...], rows: [...])

Feedback

ArcaneDialog(title: 'Confirm', child: ...)
ArcaneToast(message: 'Saved!')
ArcaneAlertBanner(message: 'Success!', variant: AlertVariant.success)

Static Site Support

ArcaneApp automatically injects JavaScript fallbacks for static sites built with jaspr build. All interactive components work without hydration:

ArcaneApp(
  theme: ArcaneTheme.green,
  child: MyContent(),  // Works on static sites!
)

Documentation

Full documentation with live examples: arcanearts.github.io/arcane_jaspr

License

GNU Public

Libraries

aliases
Shorthand A* aliases for all Arcane* components.
arcane_jaspr
component/auth/forgot_password_card
component/auth/login_card
component/auth/signup_card
component/button/social_button
component/card/author_card
component/card/card
component/card/card_section
component/card/feature_card
component/card/flexi_cards
component/card/integration_card
component/card/pricing_card
component/card/stat_card
component/card/surface_card
component/card/testimonial_card
component/collection/collection
component/data/data_table
component/data/static_table
component/data/timeline
component/data/tracker
component/data/tree_view
component/dialog/command
component/dialog/confirm
component/dialog/dialog
component/dialog/input
component/dialog/item_picker
component/dialog/time
component/dialog/toast
component/dialog/toast_manager
component/dialog/toast_types
component/feedback/alert_banner
component/feedback/loader
component/feedback/status_badge
component/feedback/tooltip
component/form/auth/auth_button
component/form/auth/auth_divider
component/form/auth/auth_form_card
component/form/auth/auth_input
component/form/auth/auth_social_row
component/form/field
component/form/field_wrapper
component/form/newsletter_form
component/form/provider
component/html/arcane_button
component/html/arcane_cat_image
component/html/arcane_image
component/html/arcane_input
component/html/arcane_label
component/html/arcane_span
component/html/arcane_text
component/html/code_block
component/html/div
component/html/heading
component/html/index
component/html/lists
component/html/main
component/html/main_element
component/html/paragraph
component/html/quote
component/html/section
component/html/side_content
component/html/svg
component/html/table
component/input/button
component/input/calendar
component/input/checkbox
component/input/color_input
component/input/combobox
component/input/cycle_button
component/input/date_picker
component/input/datetime_picker
component/input/fab
component/input/file_upload
component/input/formatted_input
component/input/icon_button
component/input/mutable_text
component/input/mutable_text_types
component/input/number_input
component/input/otp_input
component/input/radio_group
component/input/selector
component/input/selector_types
component/input/slider
component/input/slider_types
component/input/tag_input
component/input/text_input
component/input/time_picker
component/input/toggle_group
component/input/toggle_switch
component/interactive/accordion
component/interactive/back_to_top
component/interactive/disclosure
component/interactive/expander
component/layout/aspect_ratio
component/layout/auth_layout
component/layout/auth_split_layout
component/layout/button_panel
component/layout/carpet
component/layout/cta_banner
component/layout/dashboard_layout
component/layout/drawer
component/layout/feature_showcase
component/layout/flow
component/layout/gutter
component/layout/hero_section
component/layout/radio_cards
component/layout/resizable
component/layout/scroll_area
component/layout/scroll_rail
component/layout/section
component/layout/section_header
component/layout/sheet
component/layout/sheet_types
component/layout/tabs
component/menu/context_menu
component/navigation/bottom_navigation_bar
component/navigation/dot_indicator
component/navigation/mobile_menu
component/navigation/pagination
component/screen/chat_screen
component/screen/fill_screen
component/screen/screen
component/support/app
component/typography/headline
component/typography/text
component/view/alert
component/view/animated_counter
component/view/auth_branding_panel
component/view/avatar
component/view/badge
component/view/bar
component/view/callout
component/view/center_body
component/view/check_list
component/view/chip
component/view/code_snippet
component/view/code_window
component/view/divider
component/view/empty_state
component/view/fade_edge
component/view/game_tile
component/view/glass
component/view/gradient_text
component/view/hovercard
component/view/icon
component/view/kbd
component/view/map/arcane_map
component/view/map/map_data
component/view/map/map_projection
component/view/map/map_style
component/view/map/paths/usa_paths
component/view/map/paths/world_paths
component/view/marquee
component/view/meter
component/view/popover
component/view/progress_bar
component/view/rating_stars
component/view/separator
component/view/settings_section
component/view/skeleton
component/view/slot_counter
component/view/social_icons
component/view/stat_display
component/view/status_indicator
component/view/stepper
component/view/switcher
component/view/tile
core/props/accordion_props
core/props/alert_banner_props
core/props/alert_props
core/props/animated_counter_props
core/props/aspect_ratio_props
core/props/auth_branding_panel_props
core/props/auth_layout_props
core/props/auth_split_layout_props
core/props/author_card_props
core/props/avatar_props
core/props/badge_props
core/props/bar_props
core/props/bottom_navigation_props
core/props/button_panel_props
core/props/button_props
core/props/calendar_props
core/props/callout_props
core/props/card_props
core/props/card_section_props
core/props/carpet_props
core/props/center_body_props
core/props/check_list_props
core/props/checkbox_props
core/props/chip_props
core/props/code_snippet_props
core/props/code_window_props
core/props/color_input_props
core/props/command_props
core/props/confirm_dialog_props
core/props/context_menu_props
core/props/cta_banner_props
core/props/cycle_button_props
core/props/dashboard_layout_props
core/props/data_table_props
core/props/date_picker_props
core/props/dialog_props
core/props/disclosure_props
core/props/divider_props
core/props/dot_indicator_props
core/props/drawer_props
core/props/empty_state_props
core/props/expander_props
core/props/fab_props
core/props/fade_edge_props
core/props/feature_card_props
core/props/feature_showcase_props
core/props/field_wrapper_props
core/props/file_upload_props
core/props/flexi_cards_props
core/props/flow_props
core/props/game_tile_props
core/props/glass_props
core/props/gradient_text_props
core/props/gutter_props
core/props/header_props
core/props/hero_section_props
core/props/hovercard_props
core/props/icon_button_props
core/props/input_dialog_props
core/props/integration_card_props
core/props/item_picker_props
core/props/kbd_props
core/props/loader_props
core/props/marquee_props
core/props/meter_props
core/props/mobile_menu_props
core/props/newsletter_form_props
core/props/number_input_props
core/props/otp_input_props
core/props/pagination_props
core/props/popover_props
core/props/pricing_card_props
core/props/progress_props
core/props/radio_cards_props
core/props/radio_group_props
core/props/rating_stars_props
core/props/resizable_props
core/props/scroll_area_props
core/props/scroll_rail_props
core/props/search_props
core/props/section_header_props
core/props/section_props
core/props/select_props
core/props/separator_props
core/props/settings_section_props
core/props/skeleton_props
core/props/slider_props
core/props/slot_counter_props
core/props/social_icons_props
core/props/stat_card_props
core/props/stat_display_props
core/props/static_table_props
core/props/status_badge_props
core/props/status_indicator_props
core/props/stepper_props
core/props/surface_card_props
core/props/switcher_props
core/props/tabs_props
core/props/tag_input_props
core/props/testimonial_card_props
core/props/text_input_props
core/props/tile_props
core/props/time_dialog_props
core/props/time_picker_props
core/props/timeline_props
core/props/toast_props
core/props/toggle_group_props
core/props/toggle_switch_props
core/props/tooltip_props
core/props/tracker_props
core/props/tree_view_props
core/renderers
core/theme_provider
provider/auth_guard
provider/auth_guard_export
provider/auth_guard_stub
provider/auth_provider
provider/auth_provider_export
provider/auth_provider_stub
service/auth_service
service/auth_service_export
service/auth_service_stub
service/auth_state
stylesheets/codex/codex_stylesheet
stylesheets/codex/renderers/accordion
stylesheets/codex/renderers/alert
stylesheets/codex/renderers/alert_banner
stylesheets/codex/renderers/animated_counter
stylesheets/codex/renderers/aspect_ratio
stylesheets/codex/renderers/auth_branding_panel
stylesheets/codex/renderers/auth_layout
stylesheets/codex/renderers/auth_split_layout
stylesheets/codex/renderers/author_card
stylesheets/codex/renderers/avatar
stylesheets/codex/renderers/badge
stylesheets/codex/renderers/bar
stylesheets/codex/renderers/bottom_navigation
stylesheets/codex/renderers/button
stylesheets/codex/renderers/button_panel
stylesheets/codex/renderers/calendar
stylesheets/codex/renderers/callout
stylesheets/codex/renderers/card
stylesheets/codex/renderers/card_section
stylesheets/codex/renderers/carpet
stylesheets/codex/renderers/center_body
stylesheets/codex/renderers/check_list
stylesheets/codex/renderers/checkbox
stylesheets/codex/renderers/chip
stylesheets/codex/renderers/code_snippet
stylesheets/codex/renderers/code_window
stylesheets/codex/renderers/codex_renderers
stylesheets/codex/renderers/color_input
stylesheets/codex/renderers/command
stylesheets/codex/renderers/confirm_dialog
stylesheets/codex/renderers/context_menu
stylesheets/codex/renderers/cta_banner
stylesheets/codex/renderers/cycle_button
stylesheets/codex/renderers/dashboard_layout
stylesheets/codex/renderers/data_table
stylesheets/codex/renderers/date_picker
stylesheets/codex/renderers/dialog
stylesheets/codex/renderers/disclosure
stylesheets/codex/renderers/divider
stylesheets/codex/renderers/dot_indicator
stylesheets/codex/renderers/drawer
stylesheets/codex/renderers/empty_state
stylesheets/codex/renderers/expander
stylesheets/codex/renderers/fab
stylesheets/codex/renderers/fade_edge
stylesheets/codex/renderers/feature_card
stylesheets/codex/renderers/feature_showcase
stylesheets/codex/renderers/field_wrapper
stylesheets/codex/renderers/file_upload
stylesheets/codex/renderers/flexi_cards
stylesheets/codex/renderers/flow
stylesheets/codex/renderers/form
stylesheets/codex/renderers/game_tile
stylesheets/codex/renderers/glass
stylesheets/codex/renderers/gradient_text
stylesheets/codex/renderers/gutter
stylesheets/codex/renderers/hero_section
stylesheets/codex/renderers/hovercard
stylesheets/codex/renderers/icon_button
stylesheets/codex/renderers/input_dialog
stylesheets/codex/renderers/integration_card
stylesheets/codex/renderers/item_picker
stylesheets/codex/renderers/kbd
stylesheets/codex/renderers/loader
stylesheets/codex/renderers/marquee
stylesheets/codex/renderers/meter
stylesheets/codex/renderers/mobile_menu
stylesheets/codex/renderers/newsletter_form
stylesheets/codex/renderers/number_input
stylesheets/codex/renderers/otp_input
stylesheets/codex/renderers/pagination
stylesheets/codex/renderers/popover
stylesheets/codex/renderers/pricing_card
stylesheets/codex/renderers/progress
stylesheets/codex/renderers/radio_cards
stylesheets/codex/renderers/radio_group
stylesheets/codex/renderers/rating_stars
stylesheets/codex/renderers/resizable
stylesheets/codex/renderers/scroll_area
stylesheets/codex/renderers/scroll_rail
stylesheets/codex/renderers/section
stylesheets/codex/renderers/section_header
stylesheets/codex/renderers/select
stylesheets/codex/renderers/separator
stylesheets/codex/renderers/settings_section
stylesheets/codex/renderers/skeleton
stylesheets/codex/renderers/slider
stylesheets/codex/renderers/slot_counter
stylesheets/codex/renderers/social_icons
stylesheets/codex/renderers/stat_card
stylesheets/codex/renderers/stat_display
stylesheets/codex/renderers/static_table
stylesheets/codex/renderers/status_badge
stylesheets/codex/renderers/status_indicator
stylesheets/codex/renderers/stepper
stylesheets/codex/renderers/surface_card
stylesheets/codex/renderers/switcher
stylesheets/codex/renderers/tabs
stylesheets/codex/renderers/tag_input
stylesheets/codex/renderers/testimonial_card
stylesheets/codex/renderers/text_input
stylesheets/codex/renderers/tile
stylesheets/codex/renderers/time_dialog
stylesheets/codex/renderers/time_picker
stylesheets/codex/renderers/timeline
stylesheets/codex/renderers/toast
stylesheets/codex/renderers/toggle_group
stylesheets/codex/renderers/toggle_switch
stylesheets/codex/renderers/tooltip
stylesheets/codex/renderers/tracker
stylesheets/codex/renderers/tree_view
stylesheets/shadcn/renderers/accordion
stylesheets/shadcn/renderers/alert
stylesheets/shadcn/renderers/alert_banner
stylesheets/shadcn/renderers/animated_counter
stylesheets/shadcn/renderers/aspect_ratio
stylesheets/shadcn/renderers/auth_branding_panel
stylesheets/shadcn/renderers/auth_layout
stylesheets/shadcn/renderers/auth_split_layout
stylesheets/shadcn/renderers/author_card
stylesheets/shadcn/renderers/avatar
stylesheets/shadcn/renderers/badge
stylesheets/shadcn/renderers/bar
stylesheets/shadcn/renderers/bottom_navigation
stylesheets/shadcn/renderers/button
stylesheets/shadcn/renderers/button_panel
stylesheets/shadcn/renderers/calendar
stylesheets/shadcn/renderers/callout
stylesheets/shadcn/renderers/card
stylesheets/shadcn/renderers/card_section
stylesheets/shadcn/renderers/carpet
stylesheets/shadcn/renderers/center_body
stylesheets/shadcn/renderers/check_list
stylesheets/shadcn/renderers/checkbox
stylesheets/shadcn/renderers/chip
stylesheets/shadcn/renderers/code_snippet
stylesheets/shadcn/renderers/code_window
stylesheets/shadcn/renderers/color_input
stylesheets/shadcn/renderers/command
stylesheets/shadcn/renderers/confirm_dialog
stylesheets/shadcn/renderers/context_menu
stylesheets/shadcn/renderers/cta_banner
stylesheets/shadcn/renderers/cycle_button
stylesheets/shadcn/renderers/dashboard_layout
stylesheets/shadcn/renderers/data_table
stylesheets/shadcn/renderers/date_picker
stylesheets/shadcn/renderers/dialog
stylesheets/shadcn/renderers/disclosure
stylesheets/shadcn/renderers/divider
stylesheets/shadcn/renderers/dot_indicator
stylesheets/shadcn/renderers/drawer
stylesheets/shadcn/renderers/empty_state
stylesheets/shadcn/renderers/expander
stylesheets/shadcn/renderers/fab
stylesheets/shadcn/renderers/fade_edge
stylesheets/shadcn/renderers/feature_card
stylesheets/shadcn/renderers/feature_showcase
stylesheets/shadcn/renderers/field_wrapper
stylesheets/shadcn/renderers/file_upload
stylesheets/shadcn/renderers/flexi_cards
stylesheets/shadcn/renderers/flow
stylesheets/shadcn/renderers/form
stylesheets/shadcn/renderers/game_tile
stylesheets/shadcn/renderers/glass
stylesheets/shadcn/renderers/gradient_text
stylesheets/shadcn/renderers/gutter
stylesheets/shadcn/renderers/hero_section
stylesheets/shadcn/renderers/hovercard
stylesheets/shadcn/renderers/icon_button
stylesheets/shadcn/renderers/input_dialog
stylesheets/shadcn/renderers/integration_card
stylesheets/shadcn/renderers/item_picker
stylesheets/shadcn/renderers/kbd
stylesheets/shadcn/renderers/loader
stylesheets/shadcn/renderers/marquee
stylesheets/shadcn/renderers/meter
stylesheets/shadcn/renderers/mobile_menu
stylesheets/shadcn/renderers/newsletter_form
stylesheets/shadcn/renderers/number_input
stylesheets/shadcn/renderers/otp_input
stylesheets/shadcn/renderers/pagination
stylesheets/shadcn/renderers/popover
stylesheets/shadcn/renderers/pricing_card
stylesheets/shadcn/renderers/progress
stylesheets/shadcn/renderers/radio_cards
stylesheets/shadcn/renderers/radio_group
stylesheets/shadcn/renderers/rating_stars
stylesheets/shadcn/renderers/resizable
stylesheets/shadcn/renderers/scroll_area
stylesheets/shadcn/renderers/scroll_rail
stylesheets/shadcn/renderers/section
stylesheets/shadcn/renderers/section_header
stylesheets/shadcn/renderers/select
stylesheets/shadcn/renderers/separator
stylesheets/shadcn/renderers/settings_section
stylesheets/shadcn/renderers/shadcn_renderers
stylesheets/shadcn/renderers/skeleton
stylesheets/shadcn/renderers/slider
stylesheets/shadcn/renderers/slot_counter
stylesheets/shadcn/renderers/social_icons
stylesheets/shadcn/renderers/stat_card
stylesheets/shadcn/renderers/stat_display
stylesheets/shadcn/renderers/static_table
stylesheets/shadcn/renderers/status_badge
stylesheets/shadcn/renderers/status_indicator
stylesheets/shadcn/renderers/stepper
stylesheets/shadcn/renderers/surface_card
stylesheets/shadcn/renderers/switcher
stylesheets/shadcn/renderers/tabs
stylesheets/shadcn/renderers/tag_input
stylesheets/shadcn/renderers/testimonial_card
stylesheets/shadcn/renderers/text_input
stylesheets/shadcn/renderers/tile
stylesheets/shadcn/renderers/time_dialog
stylesheets/shadcn/renderers/time_picker
stylesheets/shadcn/renderers/timeline
stylesheets/shadcn/renderers/toast
stylesheets/shadcn/renderers/toggle_group
stylesheets/shadcn/renderers/toggle_switch
stylesheets/shadcn/renderers/tooltip
stylesheets/shadcn/renderers/tracker
stylesheets/shadcn/renderers/tree_view
stylesheets/shadcn/shadcn_stylesheet
stylesheets/stylesheet
theme/color_seed
theme/css_generator
theme/font_config
theme/index
Theme generation system for Arcane Jaspr.
theme/palette
theme/palette_generator
theme/radius_config
util/appearance/colors
util/arcane
util/auth/password_policy
util/design_tokens
util/interactivity/arcane_scripts
util/interactivity/scripts/button/button_feedback_scripts
util/interactivity/scripts/button/button_scripts
util/interactivity/scripts/button/copy_button_scripts
Copy button interactivity scripts.
util/interactivity/scripts/button/cycle_button_scripts
util/interactivity/scripts/button/toggle_button_group_scripts
util/interactivity/scripts/button/toggle_button_scripts
util/interactivity/scripts/dialog/chat_scripts
util/interactivity/scripts/dialog/dialog_scripts
util/interactivity/scripts/dialog/drawer_scripts
util/interactivity/scripts/dialog/email_dialog_scripts
util/interactivity/scripts/dialog/item_picker_scripts
util/interactivity/scripts/dialog/mobile_menu_scripts
util/interactivity/scripts/dialog/popover_scripts
util/interactivity/scripts/dialog/sheet_scripts
util/interactivity/scripts/dialog/time_dialog_scripts
util/interactivity/scripts/dialog/toast_scripts
util/interactivity/scripts/dialog/tooltip_scripts
util/interactivity/scripts/input/calendar_scripts
util/interactivity/scripts/input/checkbox_scripts
util/interactivity/scripts/input/color_input_scripts
util/interactivity/scripts/input/combobox_scripts
util/interactivity/scripts/input/date_picker_scripts
util/interactivity/scripts/input/file_upload_scripts
util/interactivity/scripts/input/formatted_input_scripts
util/interactivity/scripts/input/input_scripts
util/interactivity/scripts/input/mutable_text_scripts
util/interactivity/scripts/input/number_input_scripts
util/interactivity/scripts/input/otp_input_scripts
util/interactivity/scripts/input/radio_scripts
util/interactivity/scripts/input/tag_input_scripts
util/interactivity/scripts/input/time_picker_scripts
util/interactivity/scripts/input/toggle_switch_scripts
util/interactivity/scripts/navigation/accordion_scripts
util/interactivity/scripts/navigation/back_to_top_scripts
util/interactivity/scripts/navigation/chip_scripts
util/interactivity/scripts/navigation/command_palette_scripts
util/interactivity/scripts/navigation/context_menu_scripts
util/interactivity/scripts/navigation/dot_indicator_scripts
util/interactivity/scripts/navigation/pagination_scripts
util/interactivity/scripts/navigation/resizable_scripts
util/interactivity/scripts/navigation/selector_scripts
util/interactivity/scripts/navigation/steps_scripts
util/interactivity/scripts/navigation/tabs_scripts
util/interactivity/scripts/navigation/timeline_scripts
util/interactivity/scripts/navigation/tracker_scripts
util/interactivity/scripts/navigation/tree_view_scripts
util/interactivity/scripts/scripts
util/interactivity/scripts/slider_scripts
util/interactivity/scripts/theme/rainbow_scripts
util/interactivity/scripts/view/map_scripts
util/interactivity/scripts/view/view_scripts
util/style_types/arcane_color
util/style_types/arcane_style_data
util/style_types/borders
util/style_types/colors
util/style_types/effects
util/style_types/index
Barrel export for all style types
util/style_types/layout
util/style_types/spacing
util/style_types/style_presets
util/style_types/typography