Skip to content

v0.1.0 - React SIP phone and dynamic island

Choose a tag to compare

@alshell7 alshell7 released this 16 Sep 18:09

Superseded: install 0.1.2 or later. Version 0.1.0 has a JSR npm conversion issue; the current release fixes standard Vite builds and strict TypeScript declarations. The published package targets React 19.

Azeer React Phone 0.1.0

The first public release: a customizable SIP/WebRTC phone for React, with complete widgets, a dynamic island, and composable controls.

  • Calling: incoming/outgoing audio, manual and automatic dialing, mute, hold, DTMF, and blind REFER transfer.
  • Dynamic island: persistent connection status, six window/container positions, and configurable expand, compact notification, or manual incoming-call presentation.
  • Audio visuals: configurable ElevenLabs UI Orb, Live Waveform, and Bar Visualizer source adaptations, driven by call audio.
  • Customization: scoped themes, caller identity and render slots, selectable buttons, motion, branding, dragging, and synthesized call cues.
  • Integration: React 19, TypeScript, lifecycle callbacks, a headless client, and microphone/autoplay recovery.

Get started

npx jsr add @azeer-ui-widget/react-phone

Documentation · Playground · Package · Dynamic island guide

The playground starts in Preview mode. Real calls require your own SIP account and a compatible PBX. Credentials stay in memory and are excluded from code export.

Validation and scope

Validated with 64 unit tests and 48 desktop/mobile/SIP browser cases, including actual local two-browser WebRTC audio, permission races, island behavior, and automated accessibility. Documentation checks cover search, links, assets, keyboard scrolling, and the hosted playground subpath.

This is a single-call audio phone. Transfer requires PBX REFER support. Production PBX routing, TURN, and transfer interoperability need an end-to-end test on your deployment. Attended transfer, conferencing, recording, and emergency calling are not included.

MIT © 2026 Owais. Includes preserved third-party notices.