Messagenius
Rich chat media UX
Senior Flutter Engineer · 2022 — present
DartFlutter
Users touch the media controls dozens of times a day: recording a voice note, editing a photo before they send it, picking an emoji mid-sentence. Off-the-shelf Flutter packages cover most of that and then fall down where a messenger can’t afford it, like a recorder that drops frames on a cheap Android or a picker that behaves one way on iOS and another on Android.
I own that layer and maintain chat-tuned versions of the media stack, so these controls behave the same on every platform we ship to.
- Voice messages: a waveform renders while you record, the feedback people expect from any modern messenger, at a frame budget that holds on low-end hardware.
- In-chat image editing: a frosted-glass editor for a quick crop, drawing or caption before sending, styled to the app instead of to the library’s defaults.
- Emoji input: reworked for the composer, where the picker shares the screen with a live keyboard and an open conversation.
- Camera and gallery selection: one selection flow across iOS and Android, matching what users already know from other messengers instead of exposing each platform’s quirks.
Rough edges here are the ones users find first.
Highlights
- Waveform that renders while you record a voice message
- In-chat image editor for a crop, a drawing or a caption before sending
- Emoji input reworked for the composer's layout and performance budget
- Camera and gallery selection that behaves the same on iOS and Android