Work / Aakalan / Wiki / Concepts
we-never-message-anyone
Conceptcanonicalverified 2026-09-23
CONCEPT.WE-NEVER-MESSAGE-ANYONESummary
Aakalan never sends a message, an invite or a reminder on somebody's behalf. It opens the user's own messaging app with the text filled in, and they press send.
Why it matters
The sign-in screen makes this promise in as many words — "we never read your contacts without asking, and we never sell them" — and every outbound path in the product has to keep it. There is also no infrastructure to break it with: the app carries no messaging SDK, no token storage and no backend to send from.
Implications
- Invite, remind, ask-for-UPI and the settlement notice all build a string in
src/lib/messages.tsand hand it tosms:or the share sheet. - iOS separates an SMS body with
&and Android with?. Getting it wrong does not error — it opens the messaging app empty, which reads as the feature simply not working. - There are no push notifications anywhere in the product.
- Copy is written in the USER's voice, not the app's, and always signed: an unsigned text from an unknown number is indistinguishable from spam.
Related
- settling-is-immediate — why telling them is the primary action
- settle-settled
- sign-in — where the promise is made
Sources
- src/lib/messages.ts
- src/services/invite.ts
Every project of mine is written down like this.
Read the résumé