awesome-bevy
A curated list of Bevy resources
git clone https://github.com/d-bucur/awesome-bevy.gitd-bucur/awesome-bevyDescription
A personal list of projects and resources that enhance the Bevy experience. These can either be libraries that work directly with Bevy or that are easy to integrate with some example integrations provided.
Contents
- Description
- Contents
- General learning
- Tutorials
- Libraries
- Other
- Development
- Games
- Useful Rust tools
- Uncategorized
General learning
- Official examples: Has a lot of examples on how to use most of the features of the engine. Are always kept up to date with the latest API
- Rust API Docs: Great descriptions and some simple examples
- Unofficial Bevy Cheat Book: A full book that explains in detail all the concepts of the engine similar to the Rust book
- Blog posts for each new version often contain code showing how to use the new APIs
- Community: a list of all the official communities, with the most active being Discord and Github Discussions
- Bevy Assets: The original awesome list. Always check the version as some of them are quite old and the API has changed a lot since then
- See Games section for more source code
Tutorials
- Snake: Uses an old version and the original site is unavailable, but still a great starter tutorial
- Minesweeper: Uses an old version, but if you're struggling with how to structure a classic game using ECS it is still worth a read
- Best practices: Opinionated list of best practices
- Dependency injection engine: Covers how to build a simple engine from scratch. Inspired by Bevy
Libraries
Dev tools
- bevy_editor_pls: GUI editor
- bevy-inspector-egui: Inspect components and entities with a runtime GUI
- bevy_mod_debugdump: A system execution graph
Graphics
- Vello: vectorial rendering that supports SVG and lottie
Input
- Leafwing input manager: An input manager for keyboard, mouse and gamepad
- https://github.com/JoJoJet/bevy-mouse-tracking TODO
- https://github.com/johanhelsing/bevy_pancam TODO
Physics
- bevy_rapier: An integration with the popular 2D/3D Rapier Rust physics engine
- Bevy raycast: Simple raycast system
- Bevy XPBD: 2D and 3D physics engine based on Extended Position Based Dynamics
Networking
- Matchbox+GGRS: A tutorial that uses GGRS and Matchbox to create an online p2p multiplayer using rollback netcode in Bevy. Both libraries also have examples on how to integrate them with Bevy
- Renet: Server/Client network library for multiplayer games
UI
- Lunex: Path based layout system with an impressive demo
AI
- Bonsai: Behaviour trees for your AI
Other
- bevy_proto: Load entity definitions from files. Supports inheritance and hierarchies, similar to Unity prefabs
- Particular: Nbody simulation library with great performance
Development
- GitHub CI Template: Get started with GitHub actions for CI/CD. Includes publishing to itch.io
- VSCode snippets for Bevy: Save time on typing repetitive code
- My VSCode snippets: My personal VSCode snippets for Bevy and Rust in general
Games
Bevy Game jams
Most of the games developed for the jam are open source and are a great way to see some real world usage of the engine. Keep in mind that they are a bit harder to read than specific examples since they have the context of a more complex project. And they might not always be the best practices for writing code as game jams are relatively short and people often do nasty workarounds to meet the deadline.
- https://itch.io/jam/bevy-jam-1
- https://itch.io/jam/bevy-jam-2
- https://itch.io/jam/bevy-jam-3
- https://itch.io/jam/bevy-jam-4
- https://itch.io/jam/bevy-jam-5
- https://itch.io/jam/bevy-jam-6
Prototypes
- Build A Better Buddy: a cute auto-battler
- Card Combinator: A card resource management game, similar to Stacklands
- Flock fusion: You're going to make a flocking simulator anyway. Might as well turn it into a game.
- Subfuse: Great lighting and atmosphere overall
- One Clicker: An arithmetic clicker/factory game
- Fish Folk Punchy: A 2.5D side-scroller beatemup
- Digital Extinction: A 3D RTS game
- Doomé: A Doom clone made for the Game Off 2022 jam. A lot of custom components, but uses some bevy ECS features
Released
- Tiny Glade: A small relaxing game about doodling castles. Uses a custom renderer with Bevy ECS
- Tunnet: Build an underground computer network
Upcoming
- Jarl: Norse fantasy colony simulator
- Times of Progress: City builder in the industrial revolution
- Settletopia: Colony sim with multiplayer
- Unhaunter: 2D isometric investigation game
- One Planet: Grand strategy game about climate crisis
Cancelled
- Emergence: An organic factory builder in early stage
Other
- Awesome Prod: A more complete list of projects
Useful Rust tools
- arewegameyet: A more general collection of Rust tools for gamedev. Not specific to Bevy
- rand: You're probably going to be using randomness a lot so might as well import the crate
- Serde: Serialization framework. When you need to save data to disk or send it on the network.
- Rayon: A parallelism library. When Bevy's parallelization is not enough for you, just install this library and you're one
par_iter()away from (mostly) data race free threading. Get those slacking cores to work! - Criterion: Benchmarking library
- flamegraph: generates easy to read reports to troubleshoot performance issues (haven't tried with Bevy yet)
- colorgrad: Generates color gradients for beautiful interpolation
Uncategorized
- https://github.com/zkat/big-brain
- https://github.com/sharkdp/hyperfine ?
- https://github.com/sagiegurari/cargo-make
- https://github.com/samueltardieu/pathfinding
- https://github.com/petgraph/petgraph
- https://github.com/ElliotB256/bevy_combat
- https://github.com/djeedai/bevy_tweening
- https://github.com/vleue/bevy_easings
- https://github.com/james-j-obrien/bevy_vector_shapes
- https://github.com/Nilirad/bevy_prototype_lyon
more like this
TachiSnap
TachiSnap — Pixel Snapper for animation pixel artists. Rust + WebAssembly client-side tool for cleaning up AI-generated…
bit_gossip
Pathfinding library for calculating all node pairs' shortest paths in an unweighted undirected graph.