A JavaScript framework for building component diagrams for software projects