About
I'm Deven Joshi. I lead developer relations at Stream, from Amsterdam. Most of the job is making difficult things approachable: taking a system that normally takes a week to wire up and getting it down to an afternoon.
I joined Stream in 2020 as a Flutter engineer and moved into advocacy a couple of years later, mostly because I kept writing about the work anyway. I'm a Google Developer Expert for Flutter, which in practice means I have spent an unreasonable amount of time inside the framework's internals, and then written about what is in there.
Lately the interesting problems are in AI agents, and mostly in the distance between one that demos nicely and one that holds up in production. The same curiosity spills into side projects, and the ones that turned into something are on this site.
Away from a keyboard I play chess and read my way into whatever I have just decided I need to understand.

Path so far
- 2025Developer Relations LeadStream
- 2024Senior Developer AdvocateStream
- 2022Developer AdvocateStream
- 2020Flutter EngineerStream
Open source
Some of it is work at Stream, the rest is Flutter packages and tools written on my own time.
Vision Agents
Voice and vision agents built with any model or video provider. Open source, by Stream.
etch
A simplified, declarative way to use CustomPaint in Flutter.
flutter_chess_board
A chessboard widget for Flutter.
flip_box_bar
A 3D bottom navigation bar for Flutter.
shake
Phone shake detection for Flutter, with direction.
MetaFlutter
A tool for building Flutter layouts on-device.