Laraue Software Blog β€” C# .NET Development & Open Source

Real code, real decisions, real tradeoffs. We write about what we build β€” .NET libraries, Telegram bots, AI integrations, and the architecture mistakes worth learning from.

One card from a Telegram album β€” handling media groups and edits in a bot, without timeout hacks
Part 12 of building a Telegram task tracker solo. Telegram delivers an album as a burst of separate messages and an edit as a fresh update β€” here is how to turn a media group into a single record without the usual timeout accumulator, and how to treat an edit as an update instead of a duplicate.
Read β†’
Saving media from a Telegram bot β€” store the preview, stream the original
Part 11 of building a Telegram task tracker solo. Teaching the capture bot to handle photos and video, and the storage decision behind it β€” keep small previews on disk, stream full files straight from Telegram on demand without buffering them in memory, using nginx range-request passthrough, instead of re-hosting everything.
Read β†’
Why users kept choosing Telegram Saved Messages over our bot β€” and what we changed
Part 10 of building a Telegram task tracker solo. The story of a product mistake β€” we added epic and status selection to the bot, but real users kept using Saved Messages β€” and how we fixed it.
Read β†’