Skip to main content
ClaudeWave

Open-source React components for embedded texting, built on the Handset API. Install with the shadcn CLI.

ToolsRegistry oficial1 estrellas0 forksTypeScriptMITActualizado today
ClaudeWave Trust Score
87/100
Trusted
Passed
  • Open-source license (MIT)
  • Actively maintained (<30d)
  • Clear description
  • Documented (README)
Last scanned: 8/19/2026
Get started
Method: Clone
Terminal
git clone https://github.com/handset-hq/handset-ui
1. Clone the repository.
2. Follow the README for installation and usage instructions.
Casos de uso

Resumen de Tools

# Handset UI

**Texting inside your product, in an afternoon.**

Open-source React components for embedded messaging, built on the
[Handset API](https://handset.dev). Distributed the shadcn way: the CLI copies
the source into your repo, styled with your Tailwind tokens, yours to change.

```bash
# 1. Point the shadcn CLI at the Handset registry
npx shadcn@latest registry add @handset=https://ui.handset.dev/r/{name}.json

# 2. Install a complete texting surface + the server proxy route
npx shadcn@latest add @handset/messaging @handset/next-routes
```

Set `HANDSET_API_KEY` in your env, wire `resolveTenantId()` in the generated
route to your session, and render it:

```tsx
import { HandsetProvider } from "@handset/react";
import { Messaging } from "@/components/handset/messaging";

export default function MessagesPage() {
  return (
    <HandsetProvider>
      <div className="h-[600px]">
        <Messaging />
      </div>
    </HandsetProvider>
  );
}
```

## What's in the registry

| Item | What it is |
| --- | --- |
| `@handset/messaging` | Two-pane texting surface — inbox + thread, responsive to mobile |
| `@handset/inbox` | Conversation list: previews, relative times, STOP badges, infinite scroll |
| `@handset/thread` | Message history: delivery states, opt-out handling, wired composer |
| `@handset/composer` | Draft box with live SMS segment counting and unicode detection |
| `@handset/next-routes` | Next.js proxy route — your API key never reaches the browser |

## Architecture

Two layers, like shadcn-on-Radix:

- **[`@handset/react`](packages/react)** (npm, versioned) — headless hooks:
  `useConversations`, `useThread`, `useComposer`, plus segment math and a tiny
  client. Logic we maintain; bring your own UI if you prefer.
- **The registry** ([`apps/www/registry`](apps/www/registry)) — the visual
  components, copied into your project as source.

Components never hold API keys. They call proxy routes in **your** backend
(added by `@handset/next-routes`); your server holds the Handset key and your
existing session auth decides which tenant each signed-in user sees. The
Handset API handles the rest — numbers, delivery, threading, 10DLC compliance,
STOP/HELP.

## Development

```bash
pnpm install
pnpm --filter @handset/react build   # hooks package
pnpm dev                             # docs site + live demo at localhost:3000
pnpm registry:build                  # compile registry.json → public/r/*.json
```

The docs site serves a mock Handset API (`apps/www/app/api/handset`) so the
demo works with zero setup.

## Requirements

- React 18+ (components target React 19 / Tailwind v4 / shadcn CLI ≥ 3)
- A [Handset](https://handset.dev) account for real traffic — the demo runs on
  mock data without one

## Roadmap

See [ROADMAP.md](ROADMAP.md) — shipped components, what's next (call
summaries, MMS attachments, more framework proxies), and non-goals. Issues
with real use cases move items up the list.

## License

[MIT](LICENSE) © Handset HQ, Inc.

Lo que la gente pregunta sobre handset-ui

¿Qué es handset-hq/handset-ui?

+

handset-hq/handset-ui es tools para el ecosistema de Claude AI. Open-source React components for embedded texting, built on the Handset API. Install with the shadcn CLI. Tiene 1 estrellas en GitHub y su última actualización registrada es del 2026-08-18.

¿Cómo se instala handset-ui?

+

Puedes instalar handset-ui clonando el repositorio (https://github.com/handset-hq/handset-ui) o siguiendo las instrucciones del README en GitHub. ClaudeWave también te ofrece bloques de instalación rápida en esta misma página.

¿Es seguro usar handset-hq/handset-ui?

+

Nuestro agente de seguridad ha analizado handset-hq/handset-ui y le ha asignado un Trust Score de 87/100 (tier: Trusted). Revisa el desglose completo de comprobaciones superadas y flags en esta página.

¿Quién mantiene handset-hq/handset-ui?

+

handset-hq/handset-ui es mantenido por handset-hq. La última actividad registrada en GitHub es del 2026-08-18, con 0 issues abiertos.

¿Hay alternativas a handset-ui?

+

Sí. En ClaudeWave puedes explorar tools similares en /categories/tools, ordenados por popularidad o actividad reciente.

Despliega handset-ui en tu cloud

Lleva este repo a producción en minutos. Cada plataforma genera su propio entorno con variables de entorno editables.

¿Mantienes este repo? Añade un badge a tu README

Pega el badge en tu README de GitHub para mostrar que está auditado por ClaudeWave. Cada badge enlaza de vuelta a esta página y muestra el Trust Score actual.

Featured on ClaudeWave: handset-hq/handset-ui
[![Featured on ClaudeWave](https://claudewave.com/api/badge/handset-hq-handset-ui)](https://claudewave.com/repo/handset-hq-handset-ui)
<a href="https://claudewave.com/repo/handset-hq-handset-ui"><img src="https://claudewave.com/api/badge/handset-hq-handset-ui" alt="Featured on ClaudeWave: handset-hq/handset-ui" width="320" height="64" /></a>

Más Tools

Alternativas a handset-ui