Most "AI companion" apps give you a chat bubble. I wanted a face.
Scowld is an iOS app where you talk to an animated AI companion and it talks back, in its own voice, with a 3D character on screen. Under the hood it bundles an Amica/Arbius frontend running Three.js and three-vrm, so the avatar is a real VRM model with lip sync, idle animations, and expressions, not a static sprite.
The SwiftUI app wraps that experience: an iOS composer where you type or speak, a character that reacts, and saved chats you can pull back in as context later.
It's iOS only, MIT licensed, and built solo. A few things I'm proud of the architecture for:
- The companion is a VRM avatar (Aria, Bella, Ciel, or your own custom avatar and name) rendered with three-vrm, so faces and animations are swappable assets.
- Everything is bring-your-own-key. You plug in your own provider for the LLM, speech-to-text, and text-to-speech. No accounts on my end.
- API keys live in the iOS Keychain; your choices live in local preferences.
Over the next couple of weeks I'm going to break down how the pieces fit: the VRM rendering layer, wake-word listening, the BYOK provider matrix, vision context, and the SwiftUI composer.
If you want to talk to a character instead of a text box, start here.
Top comments (0)