WordPress: JS is loaded but functions in it are not working

Solution:

I think, the problem with jQuery wrong usage. Probably, wrapping the function with jQuery allows using $ variable and could solve the problem

jQuery(function($){
        $( '#photo-button' ).on( 'click',
            function () {
                $( '#display-photo' ).html("Hello <b>world!</b>");
            }
        );
    })

The second required thing is to set jQuery as a dependency for your script and to update the script version to 1.1.

wp_enqueue_script( 'main-js', get_template_directory_uri() . '/assets/src/library/js/main.js', array( 'jquery' ), '1.1', true );