---
title: "DropletHUDAction, DroppyKit"
description: "One button on a DropletHUDCard, drawn by Droppy as the pill buttons of its own No Internet card (1.23.0)."
canonical: "https://getdroppy.app/docs/droppykit/api/droplet-hudaction"
last-updated: "2026-09-09"
---

# DropletHUDAction

One button on a DropletHUDCard, drawn by Droppy as the pill buttons of its own No Internet card (1.23.0).

`struct DropletHUDAction`

Available from DroppyKit 1.23.0.

## Initializers

### init(id:title:isPrimary:perform:)

`init(id: String? = nil, title: String, isPrimary: Bool = false, perform: @escaping @MainActor @Sendable () -> Void)`

Creates an action. `id` defaults to the title.

## Properties

### id

`let id: String`

Stable id, unique within the card.

### isPrimary

`let isPrimary: Bool`

Whether this is the action the card is for. Droppy draws it in the blue of Apple's pop-up buttons and the other one in their grey, as on its own No Internet card. At most one per card.

### perform

`let perform: @MainActor @Sendable () -> Void`

Runs when the user clicks the button. Droppy counts the click as a user action addressed to your droplet, so a HUD or a shelf open you make from here is honoured at once.

### title

`let title: String`

The button's title, sentence case, a word or two.
