Gutenberg blocks are written in JavaScript and the react library. The blocks are built around JSX which looks like HTML but isn’t. It actually JavaScript. The JSX is converted into HTML when the blocks are saved and stored in the database. What you see on the front end is HTML. But, what you are viewing in the editor is JavaScript.
Source: @mrtom414