WhatsApp chats piling up at a small business? I built an AI assistant that handles them, with 3 rules it never breaks.
Answer only from the business's own documents, and show the source.
If the answer isn't there, it says so and offers a person. No guessing.
Book appointments step by step, checked against the opening hours.
Sunday? Closed. Friday at 10:30? Recorded, and the owner gets a WhatsApp message.
Hand the chat to a real person the moment the customer asks.
The bot goes quiet, and the owner replies from their own WhatsApp.
The test that surprised me:
Before publishing, I ran real conversations through it. "Quiero hablar con una persona" (Spanish) reached a person. "I want to talk to a person" (English) didn't: the bot asked the customer to type "human". English was missing the word "person". Fixed, with a test so it can't come back.
Under the hood: Python, FastAPI, the official WhatsApp Cloud API and Claude, plus an offline mode that needs no API key. Signed webhooks only, no double replies, flood control. 245 tests, 98% coverage.
The detail about the English trigger failing while Spanish worked is a perfect example of why multilingual edge cases break production systems. Standardizing the handoff phrase across all supported languages prevents that kind of silent failure.
Exactly. The fix went beyond adding "person": "someone", "alguien" and "alguém" now count only next to a verb like "talk", so "Can someone else bring my child?" doesn't hand the chat off by mistake. Each language now has its own handoff tests, plus cases that must not trigger....
Customer Conversations is an AI that calls a store's customers and interviews them. Explaining that took half of every sales call.
Three weeks after Bryan Starck brought it to us, it had a brand and a homepage built to do the explaining. Answer three questions and the AI calls you for a real interview in 60 seconds.
Web3, but make it award-worthy! 🔥☯️
Our website for Daoism Systems just collected 9 awards:
Awwwards x1 · Orpetron x3 · FWA x1 · CSSDA x4
Daoism Systems is a web3 venture studio. We built the website around the Bagua, the eight trigrams of Daoist thought. Particles react as you move, ambient sound fills the space, and every section follows an ancient map.
→ Check out case study
We've noticed a common challenge across many of our recent projects: clients have a growing number of courses, but making them easy to browse isn't always straightforward.
Kajabi doesn't offer advanced course filtering out of the box, so for DanceProfessor, we built a custom solution.
It took quite a bit of time on both the design and development sides, but the result was worth it. The client is happy, and visitors can now easily find exactly what they're looking for.
Sometimes the most challenging features are the ones that make the experience feel the simplest.
Great point about course filtering! As the number of courses grows, helping users find the right one becomes just as important as the content itself. Nice work making the browsing experience simpler!