The next step in our demo is to create an actual mock API, which we will then translate into a structure that our renderer understands. Why are we approaching the problem this way? In real work scenarios, it is not uncommon that the backend will not match completely the necessities of the frontend. Perhaps the API was built first, or was made with an earlier version of the frontend in mind that worked in a wildly different way; there are many possibilities, and in this case, we will adjust to an incompatible API to learn how to guard against this.
This approach also ensures that we have a middleman that is going to translate and understand the API for our app. If the API were to change for whatever reason, we could safely just change this middleman to adjust for the changes and, in most cases, not even have to touch any of the internal components of the app...