What is the best workflow for contributing to BabylonJS?

Hello!

I just recently got involved with BabylonJS and when initialising and building the repository locally I get a whole lot of file changes which clogs up my entire git tree and git tools.

In the official guide (here) it’s stated that one should git update-index --assume-unchanged a bunch of files, however not all files are stated since I have 103 file changes when I build fresh from master. (edit: It looks like using git config core.autocrlf true it’s only 24 file changes). To be honest, the repository is pretty overwhelming for me.

  • What should be the line ending settings for git?
  • Is it ‘officially’ supported to develop on mac os, like I do?
  • How to properly ignore changes in the preview release folder?
  • I also have 3 changes in sharedUiComponents folders, what’s up with this?
  • Any resources that I can look at to learn more about the repository structure?
  • What are the main gulp tasks that I should run when developing locally?
  • What is overall the best strategy (or possible strategies) for developing locally? should I use inspector or localdev? or maybe a combination of both?
  • What is the daily workflows that the main contributors are using?

It would be great to collect some responses for updating the contribution guide!

Thanks!

Hey and welcome (and thanks for your willingness to contribute)

  • What should be the line ending settings for git?
    I did not set mine but I would assume /r/n

  • Is it ‘officially’ supported to develop on mac os, like I do?
    Of course, a lot of people do it with Mac

  • How to properly ignore changes in the preview release folder?
    I’m using vscode and before commiting I simply select the dist folder and revert it (right click on it). I’m sure @RaananW will have a better option :slight_smile:

  • I also have 3 changes in sharedUiComponents folders, what’s up with this?
    No idea :slight_smile: What did you change?

  • Any resources that I can look at to learn more about the repository structure?
    The best we have is Start Contributing to Babylon.js | Babylon.js Documentation (babylonjs.com)

  • What are the main gulp tasks that I should run when developing locally?
    See the doc I mentioned

  • What is overall the best strategy (or possible strategies) for developing locally? should I use inspector or localdev? or maybe a combination of both?
    I depend on what you want. I personally alternate between localIndex and local playground

  • What is the daily workflows that the main contributors are using?
    Not sure to get your question :frowning: