I'm trying to learn how #rustlang works
But really the dependencies system is weird I believe I download & compiled some of these already in pervious project
now i've to to do it again . 
@Halano as some have said, you can avoid this, but to be perfectly honest the easiest workflow is just to build as you add big dependencies and go for a break, atleast when they are as big as bevy. When I move between projects I usually do so between editions of my dependencies, meaning I can benefit from their updated versions.
If you want you can also make compile times faster, but I don’t think that is what matters to you.
@Halano I didn’t know the cargo target dir trick, but I have tried stuff like sccache. The problem I experienced with that was that linking between rust versions (which I update frequently, like most do) is prone to breaking, especially using nightly (Idk if this is related to rusts unstable ABI)
@Halano I am used to the amount of wait time of a bevy build, because this is very similar of an experience to creating a new unity project, because unity ships C# code as a part of the editor which needs to be compiled within your project before it can run. Atleast with bevy, opening the engine/editor after the first time is near-instant, where opening a unity project still takes a long while even if you’ve recently opened it and not updated.