There are multiple types of clients that can walk across the API. Earlier solutions were concerned with different devices and languages (eg mobile vs desktop, browser vs native, React vs Vue). These people-to-date and GUI-to-machine concerns are still issues but solving these technical concerns alone is not enough. As well, hypermedia requires clients that solve machine-to-machine and application-to-api concerns. The underlying design in this approach is how can the client reconstruct state and get the server to converge on a new state? Whilst at the same time not require human interpretation/intervention.
This video outlines three clients:
rich interface that can process multiple resources for human interaction
simple general interface to process a single resource for human interaction
an automated interface for cloning and updating entire data structure for machine-to-machine interactions—this can be combined with human interactions