Discourse is for async communication, you need both.
We love open source, but it’s one of many options to weigh. They’re also a production user of Rust, which is a pro. It’s not that there are no cons, of course... there’s just really no perfect option in this space.