FusionPBX code analysis might help get some appreciation of the work that went into it.
https://www.openhub.net/p/fusionpbx/analyses/latest/languages_summary
- Total Lines : 616,319
- Code Lines : 417,204
- Percent Code Lines : 67.7%
- Number of Languages : 7
- Total Comment Lines : 140,843
- Percent Comment Lines : 22.9%
Many people can't really imagine the amount of time it takes to make software that people want to use at this scale.
https://www.openhub.net/p/fusionpbx
Then comes fixing bugs, talking to people, rewriting it to make features better, and scale well, supporting people that use it and more...
Now after all this people need documentation which is yet another good sized project for something like FusionPBX. The documentation has take some time. Open source can require some patience or some support to speed up the process.
If you look at the documentation you can see there has been many improvements. You can export the documentation to a PDF which currently shows 307 pages.
http://docs.fusionpbx.com/en/latest/
FusionPBX uses FreeSWITCH under the hood. You can find documentation for FreeSWITCH here:
Together there are thousands of pages and additional information and more can be found with a search engine.