> ## Documentation Index
> Fetch the complete documentation index at: https://velt-v6-0-0-beta-12.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Comment Pin Wireframes

> Wireframe components for building custom Comment Pin interfaces with maximum flexibility.

<Note>
  We recommend that you familiarize yourselves with [UI Customization Concepts](/ui-customization/overview) before attempting to modify any components.
</Note>

## VeltCommentPinWireframe

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/nIfBxXkQ-gaSIR1Y/images/customization/comments/comment-pin/comment-pin-overview.png?fit=max&auto=format&n=nIfBxXkQ-gaSIR1Y&q=85&s=63cb563138ded6286725eb15686dfad5" alt="" width="1281" height="427" data-path="images/customization/comments/comment-pin/comment-pin-overview.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe>
            <VeltCommentPinWireframe.GhostCommentIndicator />
            <VeltCommentPinWireframe.Index />
            <VeltCommentPinWireframe.Number />
            <VeltCommentPinWireframe.PrivateCommentIndicator />
            <VeltCommentPinWireframe.Triangle />
            <VeltCommentPinWireframe.UnreadCommentIndicator />
        </VeltCommentPinWireframe>
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-wireframe>
            <velt-comment-pin-ghost-comment-indicator-wireframe></velt-comment-pin-ghost-comment-indicator-wireframe>
            <velt-comment-pin-index-wireframe></velt-comment-pin-index-wireframe>
            <velt-comment-pin-number-wireframe></velt-comment-pin-number-wireframe>
            <velt-comment-pin-private-comment-indicator-wireframe></velt-comment-pin-private-comment-indicator-wireframe>
            <velt-comment-pin-triangle-wireframe></velt-comment-pin-triangle-wireframe>
            <velt-comment-pin-unread-comment-indicator-wireframe></velt-comment-pin-unread-comment-indicator-wireframe>
        </velt-comment-pin-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## GhostCommentIndicator

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/nIfBxXkQ-gaSIR1Y/images/customization/comments/comment-pin/comment-pin-ghost.png?fit=max&auto=format&n=nIfBxXkQ-gaSIR1Y&q=85&s=8af94b1fa374101a18948b02e6e44cfd" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-ghost.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.GhostCommentIndicator />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-ghost-comment-indicator-wireframe></velt-comment-pin-ghost-comment-indicator-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Index

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/nIfBxXkQ-gaSIR1Y/images/customization/comments/comment-pin/comment-pin-index.png?fit=max&auto=format&n=nIfBxXkQ-gaSIR1Y&q=85&s=e1306e079c23352f18e9b70dc69006a2" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-index.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.Index />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-index-wireframe></velt-comment-pin-index-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Number

The annotation number displays on comment pins, providing a persistent identifier for each comment that remains constant across sessions. This number makes it easy to reference specific comments in team discussions or documentation.

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.Number />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-number-wireframe></velt-comment-pin-number-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## PrivateCommentIndicator

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/nIfBxXkQ-gaSIR1Y/images/customization/comments/comment-pin/comment-pin-private.png?fit=max&auto=format&n=nIfBxXkQ-gaSIR1Y&q=85&s=f07e1995dd5940477b4fba1015023278" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-private.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.PrivateCommentIndicator />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-private-comment-indicator-wireframe></velt-comment-pin-private-comment-indicator-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Triangle

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/nIfBxXkQ-gaSIR1Y/images/customization/comments/comment-pin/comment-pin-triangle.png?fit=max&auto=format&n=nIfBxXkQ-gaSIR1Y&q=85&s=4173d727329153824f45c488034fa678" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-triangle.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.Triangle />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-triangle-wireframe></velt-comment-pin-triangle-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## UnreadCommentIndicator

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/nIfBxXkQ-gaSIR1Y/images/customization/comments/comment-pin/comment-pin-unread.png?fit=max&auto=format&n=nIfBxXkQ-gaSIR1Y&q=85&s=d3774d90d5896d51f3e2b58e8fa55bdc" alt="" width="1281" height="341" data-path="images/customization/comments/comment-pin/comment-pin-unread.png" />

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltWireframe>
        <VeltCommentPinWireframe.UnreadCommentIndicator />
    </VeltWireframe>
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-wireframe style="display:none;">
        <velt-comment-pin-unread-comment-indicator-wireframe></velt-comment-pin-unread-comment-indicator-wireframe>
    </velt-wireframe>
    ```
  </Tab>
</Tabs>

## Styling

### Disable ShadowDOM

* By default, ShadowDOM is used to ensure that your app's CSS does not interfere with the styling of the SDK components.
* Disable the shadow dom to apply your custom CSS to the component.

Default: `true`

<Tabs>
  <Tab title="React / Next.js">
    **Using Props:**

    ```jsx theme={null}
    <VeltComments pinShadowDOM={false} />
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = client.getCommentElement();
    commentElement.enablePinShadowDOM();
    commentElement.disablePinShadowDOM();
    ```
  </Tab>

  <Tab title="Other Frameworks">
    **Using Props:**

    ```jsx theme={null}
    <velt-comments pin-shadow-dom="false"></velt-comments>
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = Velt.getCommentElement();
    commentElement.enablePinShadowDOM();
    commentElement.disablePinShadowDOM();
    ```
  </Tab>
</Tabs>

### Dark Mode

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/dHXKtjyGvT2E4ecI/images/customization/velt-comment-pin-1.png?fit=max&auto=format&n=dHXKtjyGvT2E4ecI&q=85&s=f6c381f0beb3100470037d3299e245d1" alt="" width="1024" height="576" data-path="images/customization/velt-comment-pin-1.png" />

<img src="https://mintcdn.com/velt-v6-0-0-beta-12/dHXKtjyGvT2E4ecI/images/customization/velt-comment-pin-2.png?fit=max&auto=format&n=dHXKtjyGvT2E4ecI&q=85&s=2505ae82ba6b716c7e493076fe421e67" alt="" width="2019" height="673" data-path="images/customization/velt-comment-pin-2.png" />

By default, all components are in Light Mode, but there are several properties and methods to enable Dark Mode.

`Default: false`

<Tabs>
  <Tab title="React / Next.js">
    **Using Props:**

    ```js theme={null}
    <VeltComments pinDarkMode={true}/>
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = client.getCommentElement();
    commentElement.enableDarkMode();
    commentElement.disableDarkMode();
    ```
  </Tab>

  <Tab title="Other Frameworks">
    **Using Props:**

    ```html theme={null}
    <velt-comments pin-dark-mode="true"></velt-comments>
    ```

    **Using API:**

    ```jsx theme={null}
    const commentElement = Velt.getCommentElement();
    commentElement.enableDarkMode();
    commentElement.disableDarkMode();
    ```
  </Tab>
</Tabs>

### Variants

* Define variants for the `Velt Comment Pin` component. This is useful for customizing how the pin looks on different elements like charts, tables, etc.
* Learn more about how to define and use variants [here](/ui-customization/layout#variants).

<Tabs>
  <Tab title="React / Next.js">
    ```jsx theme={null}
    <VeltCommentPin variant="CUSTOM_VARIANT" />
    ```
  </Tab>

  <Tab title="Other Frameworks">
    ```html theme={null}
    <velt-comment-pin variant="CUSTOM_VARIANT"></velt-comment-pin>
    ```
  </Tab>
</Tabs>
