Skip to content

Tag ​

Tag component is used to categorize content.

Props ​

PropTypeDefaultDescription
sizestringsmSize of the tag. Options: sm, md and lg.

Example component with all props ​

html
<Tag size="md">Label</Tag>

Tag with Close (X) Icon ​

The example below demonstrates how to add a close (X) icon to the Tag component. This is commonly used for removable tags. You can place any icon or interactive element inside the Tag as a child element.

Label
html
  <Tag>
    Label
    <span class="cursor-pointer">
      <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none">
        <path d="M9.375 2.625L2.625 9.375" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
        <path d="M9.375 9.375L2.625 2.625" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
      </svg>
    </span>
  </Tag>

Tag with Counter or Badge ​

You can also add a counter, badge, or any custom content inside the Tag component. This is useful for showing counts, notifications, or additional information alongside the tag label.

Label 5
html
  <Tag>
    Label
    <span class="flex flex-col items-center justify-center bg-zinc-100 px-1 text-center font-inter text-xs font-medium leading-5 text-zinc-700">
      5
    </span>
  </Tag>

Tag with Checkbox ​

You can place interactive elements such as checkboxes inside the Tag component. This is useful for scenarios where you want to allow selection or toggling of tags.

Label
html
  <Tag>
    <Checkbox v-model="selected" value="option1" />
    Label
  </Tag>

Tag with Checkbox and Close (X) Icon ​

This example demonstrates a Tag component that combines a checkbox (for selection), a label, and a close (X) icon.
Such a pattern is useful for interactive tag lists where users can select/deselect tags and optionally remove them.

Label
html
  <Tag>
    <Checkbox v-model="selectedcheck" value="option1" />
    Label
    <span class="cursor-pointer">
      <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none">
        <path d="M9.375 2.625L2.625 9.375" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
        <path d="M9.375 9.375L2.625 2.625" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
      </svg>
    </span>
  </Tag>

Sizes ​

sm ​

The sm size is the default size and is used for most tags. Setting this property is not required.

Label
html
  <Tag size="sm">
    <Checkbox v-model="selected" value="option1" />
    Label
    <span class="cursor-pointer">
      <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none">
        <path d="M9.375 2.625L2.625 9.375" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
        <path d="M9.375 9.375L2.625 2.625" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
      </svg>
    </span>
  </Tag>

md ​

Label
html
  <Tag size="md">
    <Checkbox v-model="selectedMd" value="option1" />
    Label
    <span class="cursor-pointer">
      <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none">
        <path d="M9.375 2.625L2.625 9.375" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
        <path d="M9.375 9.375L2.625 2.625" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
      </svg>
    </span>
  </Tag>

lg ​

Label
html
  <Tag size="lg">
    <Checkbox v-model="selectedLg" value="option1" />
    Label
    <span class="cursor-pointer">
      <svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 12 12" fill="none">
        <path d="M9.375 2.625L2.625 9.375" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
        <path d="M9.375 9.375L2.625 2.625" stroke="#9F9FA9" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
      </svg>
    </span>
  </Tag>