Models
Models are JSON files that determine the visual shape and texture(s) of a block or item. A model consists of cuboid elements, each with their own size, that then get assigned a texture to each face.
Each item gets an item model assigned to it by its registry name. For example, an item with the registry name examplemod:example_item would get the model at assets/examplemod/models/item/example_item.json assigned to it. For blocks, this is a bit more complicated, as they get assigned a blockstate file first. See below for more information.