Alice&Bot
Let's unbreak chat.
The developer-first, privacy-first chat platform. No phone numbers. No bureaucracy.
- No Phone Number RequiredCreate and manage as many identities as you want, with no phone or email required. Perfect for privacy and creative use cases.
- Portable, Secure IdentityYour identity is a public/private key pair. Take your address book with you, even if you switch providers. End-to-end encryption is always on.
- Spam Resistant by DesignEach account can set a cold-outreach price. Anyone starting a new conversation pays this amount from their balance. No more endless spam, no more captchas.
- APIs & Webhooks by DefaultSend and receive messages via API and webhooks. No extra cost, no friction. Cloud storage is built in for device independence.
- Integrated Crypto LedgerBalances are tracked in USD cents to avoid crypto volatility, funded via a secure crypto webhook. Built-in ledgers handle user payments automatically.
- Browser & ServerAll functions work in both browser and server environments. Build from wherever you are.
example.ts
import { createIdentity, createConversation, sendMessage, setWebhook } from "@alice-and-bot/core";
// create two identities (works in browser or server)
const alice = await createIdentity("Alice", "alice");
const bot = await createIdentity("My Bot", "my_bot");
// start a conversation
const { conversationId } = await createConversation(
[alice.publicSignKey, bot.publicSignKey],
"Hello",
alice,
);
// send a message
await sendMessage({
credentials: alice,
conversation: conversationId,
message: { type: "text", text: "Hey bot!" },
});
// receive messages via webhook
await setWebhook({ url: "https://my-server.com/hook", credentials: bot });TypeScript SDK with end-to-end encryption, webhooks, and device sync.