🎬 Live demo — resets every 30 min.
Buy the full app
New — send through any SMS gateway, WhatsApp Cloud API, and 5 languages

The CRM
that actually talks.

One inbox for every channel. Call, message, and email your contacts from a single workspace — with AI that drafts, fixes, and translates for you.

Built on Laravel 13 Self-host or deploy in minutes No credit card required No Twilio lock-in
laracontact.app/contacts
Contacts
Messages
Calls
Email
Library
Groups
Tags
Contacts · 1,284
AL
Ada Lovelace
Analytical Inc · CTO
VIP
GH
Grace Hopper
Compilers Co · Founder
VIP
LT
Linus T.
Open Source · Maintainer
VIP
MH
Margaret H.
NASA · Software Lead
VIP
Features

Everything you need to follow up.

Built for solo operators and small teams who live in their CRM.

Two-way SMS & WhatsApp

Threads per contact, channel selector, and inbound webhooks that match replies to the right contact by phone number.

Bring any SMS gateway

Twilio is optional. Point it at any provider with a REST API — you describe the request in Settings, no code. Local numbers cost a fraction of Twilio.

WhatsApp Cloud API

Go direct to Meta instead of paying a reseller. Service conversations are free; you only pay Meta for templates.

Click-to-call dialer

In-browser dialer powered by Twilio Voice. Calls log automatically against the contact timeline.

Queued email + tracking

Compose, queue, deliver, count opens via tracking pixel. Per-contact email history.

AI-assisted everywhere

Paste a signature, get a contact. Misspelled SMS? Fix it. Need to message in another language? Translate.

Smart imports

CSV upload with column auto-detection and per-row tag parsing. Duplicate detector + one-click merge.

Team workspaces

Shared address books with team_id isolation. Invite members, assign roles, switch instantly.

Real-time inbound

Reverb + Echo broadcast every inbound SMS as a live toast in every open browser session.

Audit log

Every contact change is recorded. Who, what, when — visible right on the contact page.

Personal API + tokens

Sanctum-powered JSON API. Generate tokens per integration, revoke them when done.

Speaks your language

English, French, Spanish, Arabic and Chinese — with right-to-left layouts that mirror the whole interface, not just the text.

Translate the app itself

One click sends every interface string to Claude and writes the language file. Edit anything that reads oddly, right in the browser.

Bulk sends

Message a filtered selection at once, with merge tokens per recipient, reusable templates, and live per-contact progress.

Two-factor authentication

TOTP enrolment with any authenticator app, plus recovery codes for when the phone goes missing.

Export your workspace

Download everything — contacts, messages, groups, tags — whenever you want it. Your data stays yours.

How it works

Three minutes from sign-up to first message sent.

  1. 1
    Register an account
    A personal workspace spins up automatically.
  2. 2
    Import or add contacts
    CSV with auto-mapping, or paste a signature and let AI extract the fields.
  3. 3
    Pick a gateway
    Twilio, any HTTP SMS provider, or WhatsApp Cloud API — SMS and WhatsApp can use different ones. Or stay in fake mode for demos.
  4. 4
    Start the conversation
    SMS, WhatsApp, calls, email — all from the contact card.
JD
Jane Doe
+1 415 555 0142
Hi! Any chance we can chat tomorrow at 2pm?
2 min ago
Sounds great. I'll send a calendar invite!
just now · sent
Type a message…
Inbound
Jane Doe replied just now.
Built on the boring stack

Laravel 13 · Tailwind · Alpine · SQLite/MySQL · any REST SMS gateway · WhatsApp Cloud API · Twilio · Anthropic Claude

Ready to talk to your contacts?

Set up takes under a minute. Bring whichever gateway is cheapest where you are — or start in fake mode and add credentials later.