webrtc VS bevy

Compare webrtc vs bevy and see what are their differences.

webrtc

A pure Rust implementation of WebRTC (by webrtc-rs)

bevy

A refreshingly simple data-driven game engine built in Rust (by bevyengine)
Our great sponsors
  • SonarLint - Clean code begins in your IDE with SonarLint
  • Zigi - Delete the most useless function ever: context switching.
  • Scout APM - Truly a developer’s best friend
  • InfluxDB - Build time-series-based applications quickly and at scale.
webrtc bevy
27 418
2,439 20,517
4.3% 5.3%
8.2 9.9
4 days ago 6 days ago
Rust Rust
Apache License 2.0 MIT OR Apache-2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

webrtc

Posts with mentions or reviews of webrtc. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-27.
  • WebRTC 102: Understanding libWebrtc
    4 projects | dev.to | 27 Nov 2022
    The "Mediasoup" project provides a high level JavaScript/TypeScript interface to the WebRTC APIs. The core logic of this project is implemented in C++/Rust. Consider taking a look at the project if you want an easy-to-use library instead of the low-level libWebRTC APIs. A notable project to mention is the Pion/webrtc project which has a Golang implementation of the WebRTC API. Of course, we should mention the rust port WebRTC.rs. Let’s keep all the rustaceans happy too!
  • I built a Zoom clone 100% IN RUST
    12 projects | reddit.com/r/rust | 24 Oct 2022
    Have you considered using webrtc? It's a well-established protocol supported by all major browsers, and there's already a pure-Rust implementation you might be able to use.
    12 projects | reddit.com/r/rust | 24 Oct 2022
    If you ever did decide to add the complexity of RTC, my personal favorite SFU is MediaSoup with Janus a second. But if you want to be adventurous the Rust WebRTC project would be your go to. In any case cool project!!
  • Best way to implement one directional listener for UDP or TCP?
    2 projects | reddit.com/r/rust | 6 Oct 2022
    Yup, WebRTC can do this. In Rust there's webrtc.rs which I've been contributing a fair amount to. Check out this example the SDP that's provided via $BROWSER_SDP and the subsequent answer that is pasted back into jsfiddle is the two way connection that /u/anlumo mentioned. With a server this is typically done with a POST request.
  • Announcing webrtc 0.5.0
    4 projects | reddit.com/r/rust | 7 Sep 2022
    They are fully implemented and work. There's a known performance issue related to peak throughput, which trails Pion significantly. There might be bugs of course, but we haven't found any data channel bugs for our use case(SFU).
    4 projects | reddit.com/r/rust | 7 Sep 2022
    While there's still more work to do, there are many examples available to showcase what the project can do already.
  • No really, why can't we have raw UDP in JavaScript?
    2 projects | reddit.com/r/javascript | 6 Jul 2022
    There are implementations for that, here is one for example.
  • STUNner: A Kubernetes ingress gateway for WebRTC
    8 projects | news.ycombinator.com | 22 May 2022
  • LiveKit – open-source, high performance WebRTC infrastructure
    5 projects | news.ycombinator.com | 20 May 2022
    I think https://webrtc.rs/ is our best bet for this future. I am very optimistic about it. The security/memory safety aspect of it is just so important.

    So many important things are happening over WebRTC (telemedicine, remote control of dangerous machines...) I just would hate to see one of these C++ memory bugs have a negative impact.

  • Rust Time Communication.
    3 projects | dev.to | 4 May 2022
    With the strike in session, I had a lot of time on my hands to learn what I needed to learn, and things went on smoothly till I hit a brick wall. I couldn’t find a Web RTC implementation in Rust. Web RTC is a framework that allows browsers and web-based applications to communicate in real-time. It is important to know that while Rust has made a lot of waves in recent times, it is still relatively new compared to other languages and development technology. There were still things that had not fully been abstracted to the level where regular developers could easily access the functionalities without having a deep understanding of how they worked. Web RTC was one of them. Now that I think of it, I found one, but it was basically just C embedded in Rust. While that sort of worked, It wasn’t what I wanted. I searched around a bit more, then I found someone, Rainliu working on a Web RTC implementation in Rust. It was in its early stages though, in fact, all that had been done was a collated list of frameworks that would allow Web RTC to work in Rust. I decided to help out, or at least try to help. There I was, a few weeks into learning Rust, and I wanted to help build a library.

bevy

Posts with mentions or reviews of bevy. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-11-23.
  • Best declarative game engines for in-browser apps?
    3 projects | reddit.com/r/AskProgramming | 23 Nov 2022
    I'm now looking at other options. I think I am leaning towards using Bevy and compiling the Rust to WASM and running like that. I feel this way because Bevy is the most popular, declarative game engine that I have been able to find. My concern is that using ECS might be pointless when ran in the browser (unfounded, just guessing) and that I'm going lower-level than I intended in an attempt to stay declarative.
  • Porting 58000 lines of D and C++ to jai, Part 0: Why and How
    12 projects | news.ycombinator.com | 23 Nov 2022
    Yeah, I think Bevy[1] is also a great example of something that fits in well with a lot of Rust's strengths while also showing that it's possible to lean in heavily to very gamedev centric approaches with how it approached ECS.

    I think there's is some truth around try to avoid unsafe, that said the times I've dropped down into it I've found myself chasing heap corruption or use-after-free on more than one occasion :).

    Some of Jai's AoS/SoA transforms look neat and certainly interested to see what it looks like once it starts opening up more.

    [1] https://bevyengine.org/

  • Render Pipelines in wgpu and Rust
    5 projects | dev.to | 18 Nov 2022
    Before I set off on the journey of refactoring, I looked for other wgpu projects to see how they structured their app architecture. I found 2 great examples that I primarily referenced - both with “b” names funnily enough: baryon and bevy.
    5 projects | dev.to | 18 Nov 2022
    Bevy is an entire game engine for creating 2D or 3D games in Rust. It uses wgpu for rendering everything, and a few other dependencies - mostly their own crates. It’s not “fully featured” like Unity or Godot since it’s so early — but it’s jam-packed with a lot of great functionality (like most recently — compute shaders).
  • RockSmith File Format for CDLC / .psarc
    7 projects | reddit.com/r/rocksmith | 15 Nov 2022
    Sure, fair point. I'm trying to make an instrument- and platform-agnostic Rocksmith clone in Rust (as of right now, I'm using CPAL for audio in/out, Bevy for graphics and input controls, and egui for UI elements).
  • Bevy 0.9
    3 projects | reddit.com/r/rust | 12 Nov 2022
    So, this is the PR that made the change.
  • Bevy 0.9: data oriented game engine built in Rust
    6 projects | reddit.com/r/gamedev | 12 Nov 2022
    have you looked at the alien cake addict or breakout examples?
    6 projects | reddit.com/r/gamedev | 12 Nov 2022
    there are a bunch of great examples on the Bevy engine github, the unofficial Bevy cheat book is an amazing resource, and there are a bunch of games on itch.io under the Bevy tag that are almost all open source.
  • What are some popular libraries that plan to make use of GATs now that it's stable?
    3 projects | reddit.com/r/rust | 6 Nov 2022
    bevy uses them to simplify the trait infrastructure for Querys: https://github.com/bevyengine/bevy/pull/6319
  • We Need To Talk About The Bad Sides of Go
    4 projects | reddit.com/r/programming | 3 Nov 2022
    I'm mentioning this example of confusion in the bevy engine: https://github.com/bevyengine/bevy/discussions/1137

What are some alternatives?

When comparing webrtc and bevy you can also consider the following projects:

Amethyst - Data-oriented and data-driven game engine written in Rust

Godot - Godot Engine – Multi-platform 2D and 3D game engine

RG3D - 3D and 2D game engine written in Rust [Moved to: https://github.com/FyroxEngine/Fyrox]

Fyrox - 3D and 2D game engine written in Rust

piston - A modular game engine written in Rust

gdnative - Rust bindings for GDNative

ggez - Rust library to create a Good Game Easily

specs - Specs - Parallel ECS

wgpu - Safe and portable GPU abstraction in Rust, implementing WebGPU API.

macroquad - Cross-platform game engine in Rust.

egui - egui: an easy-to-use immediate mode GUI in Rust that runs on both web and native

mediapipe - Cross-platform, customizable ML solutions for live and streaming media.