Understanding Jitsi Source Code

I would like to modify/customize the Jitsi. For that, I would like to understand the calls involved and other interfaces communicating to each other. It would be a great help if anyone suggests what is the best way to proceed or any code browsing and call graph generation tools. Also, it would be a great help to know, what is the best way to set up a development and test environment for all the components(prosody, jicofo, jvb, jibri, jigasi etc.) involved.

Start here: https://jitsi.github.io/handbook/docs/dev-guide/dev-guide-web

Code repos are here: https://github.com/jitsi