Comments

Add comments to your product.

Contextual threads from humans or agents, on any element, doc, cell, or canvas, so feedback stops scattering across email, Slack, and screenshots.

No more two-quarter detours to build threads, mentions, and anchoring.

Free tier. No credit card. First comment in 5 minutes.

SDSales deck / slide 4 · pricing
live
Brand Agent2m

This pricing claim conflicts with the rate table on slide 4.

2 Replies
2
Q1Q2Q3Q4
Build this

Comment threads running inside products at

Migrating from an in-house build or another SDK?Compare·Migration guide

What it is

One thread. Humans and agents.

Velt Comments adds contextual comment threads to any part of your product: text, documents, spreadsheet cells, canvases, video frames, charts, or your own custom components. Both humans and agents can comment through the same API; an agent is just a user with type agent. Threads support mentions, assignment, resolve states, reactions, attachments, and visibility controls, and every comment is queryable through the API and fires events to your backend.

Sales deck · slide 4

One thread, both actors

Brand Agentagent2m

This pricing claim conflicts with the rate table on slide 4. Suggested fix attached.

Dev1m

@Maya can you confirm the Q3 number?

Mayanowaccepted

Confirmed, accepting.

accepted · webhook review.approved fired · consent visible

How it works

Three steps to the first comment.

Install the SDK, wrap your app, and add VeltComments. Threads anchor to any element, stream live to your UI, answer REST queries, and fire webhooks to your backend.

01Install
terminal
npm install @veltdev/react
02Wrap
_app.tsx
<VeltProvider
  apiKey={VELT_API_KEY}>
  <YourApp />
</VeltProvider>
03Mount
your-file.tsx
<VeltComments />
// threads anchor to any
// element you wrap
With Velt

The mechanics

Install the SDK, wrap the target element, and threads anchor to it. Threads support mentions, assignment, resolve states, reactions, attachments, and visibility controls. Every comment is queryable through the API and fires events to your backend. Agents comment through the Comments REST API, the same surface humans use.

// VeltComments anchors to any element · queryable via API · webhooks on every event

Build it yourself

What an in-house version requires

  • anchoring that survives content changes
  • threading and replies
  • @mentions with a user directory
  • assignment and resolve states
  • attachments and storage
  • reactions
  • visibility and permissions
  • a notification pipeline
  • offline handling
  • a moderation and API layer

Teams that build it budget a quarter for the first version and keep paying for the long tail. The 3 steps above replace the first quarter; the capability wall below replaces the long tail.

MCP: the faster path.

Skip the steps. Have your agent set it up.

npx -y @velt-js/mcp-installer

Launch comments this week.

No credit card. Works with React, Next.js, Vue, Angular, and HTML.

Get Free API Key

Capabilities

Threads that carry decisions.

Each card is the live SDK. Toggle to Code for the exact snippet that renders it.

01anywhere
Brand Agent2m

This pricing claim conflicts with the rate table on slide 4.

2 Replies
// anywhere
// anchors to text and complex DOM
<VeltComments />

Comments on anything

A doc, a PDF, a table cell, a chart datapoint, a video frame, a canvas. Robust anchoring to text and complex DOM elements; the anchor model works on your custom components too.

02agents
Review Agent2m

Clause 7 omits a liability cap. Suggested fix attached.

1 Reply
// agents
POST /v2/comments
{ "type": "agent", "actions": ["approve", "reject"] }

Agent comments

Your agent reviews and drops findings as contextual comments, anchored to the exact clause, cell, or claim, with Approve and Reject attached. In the work, not in a separate report.

03visibility
Only visible toyour team
Maya2m

Hold the discount: let's counter at 12%.

2 Replies
// visibility
<VeltComments visibility="private" />

Private comments

Scope any thread to me, my team, or specific people. Internal debate stays internal: notes the client never sees, deliberation the counterparty can’t read, drafts only the author can open.

04mentions
Assigned toKim
Rogers2m

@Maya pulled into the thread

2 Replies
// mentions
// @Maya pulled in · assigned to Sarah

Mentions and assignment

@mention pulls the right reviewer into the thread; assignment makes the decision someone’s job. Reviews move when ownership is explicit.

05status
Open3 Views
Open
In Progress
Resolved
// status
{ "status": "resolved", "seenBy": 3 }

Status and read receipts

Open, in progress, resolved, and who has seen what. The “did legal look at this?” question answers itself.

06attachments
Rogers2m

@Maya Update text based on this

Brand Guideline.pdf
// attachments
// files + emoji reactions on any thread

Attachments and reactions

Drop the evidence in the thread: the source file, the field photo, the reference deck. Reactions clear the noise of +1 replies.

07recordings
Kim2m

Please see the recording to update the slides

Kim's screen recording
Kim's Recording-24Apr2024…
// recordings
// voice + screen recordings, pinned in context

Recordings in the thread

A voice note on a cell, a screen recording on a draft. When saying it beats typing it, the recording pins where the work is.

08webhooks
POST /your-webhook
{
  "event": "comment.added",
  "documentId": "deck-q3"
}

comment · reply · resolve · approval: full payload

// webhooks
POST /your-webhook
{ "event": "comment.added" }

Webhooks on every event

Every comment, reply, resolve, and approval fires a webhook with the full payload. Pipe review activity into your backend, your analytics, your audit pipeline.

Feedback used to live in email chains about the asset. Now it lives on the asset, in a thread anyone can resolve.

Product lead · collaborative editor

Little big details

Little Big Details

Everything that goes into building the best commenting experience

Little Big Details
Chart Comments
Integrations

Drops into the stack you already have.

15+ first-party integrations. SDK works in any framework via web components.

FRAMEWORKS
ReactNext.jsAngularVue
CANVAS & DATA
NOTIFICATIONS OUT
STORAGE & AUTH · SYNC
FirebaseSupabaseClerkAuth0YJS
CHAT SDK
Vercel

Make it yours

Your comment UI, your rules.

Prebuilt components for the fast path, wireframes and primitives for fully custom comment UIs, and custom types, data, CRUD APIs, and webhooks underneath.

Look

Prebuilt components (Comments Sidebar, Comment Pin, Comment Bubble, Comment Composer, Standalone Thread) for the fast path; wireframe components and primitives for fully custom comment UIs; themes and template variables.

2m

Kim & 3 others

We should be updating all the new assets with the new logo

Behavior

Custom comment types, custom data on threads, full CRUD APIs, and webhooks into your pipeline.

Comment Submit
Trigger WebhookREST API v2
We restyled the prebuilt thread with our own wireframe in a day. Our comment UI looks nothing like Velt’s defaults, and the hard parts were already done.

Design engineer · fintech platform

In production

Comments, in products like yours.

Tabbed by vertical, with verified customer screenshots.

SummaryNext StepsDemoCustomer Stories

Hey Conductor!

This Digital Sales Room gives you everything you need to move forward — from proposal to plan.

Our Mutual Action Plan
Training2 / 5
Creating a new Room1
Build a working demo room
Contract sign-off
Maya2m

@Fin We need to make a working demo for Rene and his team

Brand, legal, and the client comment on the deck, the email, the digital sales room itself. Feedback lands on the asset, not in an email chain about the asset.For sales enablement

See it running in products like yours.

30 minutes, with an engineer, not a sales deck.

Book Demo
SOC 2 Type IIHIPAAEU data residencySelf-host data

Comment content can live on your infrastructure via the self-host data provider, with only minimal identifiers on Velt. GDPR deletion runs through the compliance API with its own audit log. Comments run on the same isolation guarantees as the rest of the SDK. See self-hosting and governance.

Book Demo

Proof

The two-quarter build, skipped.

Threads, mentions, and anchoring, without the detour.

2 quarters

We’d scoped two quarters to build threads, mentions, and anchoring ourselves. We dropped in VeltComments and shipped it in a week.
Founding engineer, collaborative editor

1 thread

Brand, legal, and the client comment on the asset itself now. Feedback stopped scattering across email, Slack, and screenshots.
Head of content, sales enablement platform

100%

Every agent finding lands as a comment with approve and reject attached. Our reviewers act on it in the work, not in a separate report.
VP Engineering, AI-native SaaS

FAQ

Questions about Comments.

Anything that renders on the web. Comments anchor to elements, so the surface type does not matter: rich text editors (Tiptap, BlockNote, Lexical, Plate, Quill, Slate, ProseMirror, CodeMirror, Ace), documents and PDFs, spreadsheets and tables, charts (ChartJS, Highcharts, Nivo, or your own), HTML canvas, video, Lottie animations, and any custom component via the anchor API.

Yes. Agents post through the same Comments REST API humans use; an agent is a user with type agent. Findings can carry approve and reject actions so a human decides what happens next.

Velt handles anchoring so threads stay attached when content moves or changes.

Yes. The comments data provider keeps comment content on your infrastructure while Velt stores only minimal identifiers. See /self-hosting.

Install @veltdev/react, wrap your app in VeltProvider with your API key, and add the VeltComments component. The first comment renders in about five minutes; the quickstart walks through it.

Yes. Use the prebuilt components as-is, restyle them with wireframes and template variables, or build fully custom UIs on the primitives and APIs. Your comment UI can look nothing like Velt’s defaults.

Yes, through the Comments REST API: import threads with authors, timestamps, and anchors.

Yes. Velt is optimized for mobile web, works inside WebViews in native apps, and pure native apps can integrate through the REST APIs with your own native UI.

Velt is priced on usage, not seats: you pay for documents with review activity in a month, and there is a free tier for development and early production. Comments is part of the SDK, not a separately priced add-on.

Add comments to your product.

Free tier. No credit card. First comment in 5 minutes.

30 minutes, with an engineer, not a sales deck.