As we've noted previously, Drupal 8 does not have a default method for listing content. The simplest way of adding this capability is to define a REST resource list using Views. To demonstrate this, we'll create a simple resource that lists nodes that a given user is listed as the author. The first step is to go to Structure | Views and click the Add new view button. Give the View a name, select the checkbox for Provide a REST export, and enter the path for the resource. In this case, since it extends the user information, it would be user/%/posts. When you have that in place, click the Save and edit button.

Since this View depends on filtering the nodes based on the author, we need to add the appropriate Relationship. So expand the Advanced field set, and click to Add a Relationship. Scroll down until you see the checkbox for User, select that, and then click Apply (all displays). Since we only want nodes for a given user, it's safe to select Require this relationship on the next dialog and then click Apply (all displays).

Next we need to capture the user ID from the URL and use that to power our listing. You'll click to Add a contextual filter and then scroll until you find the checkbox for User ID. Select that and click the Apply (all displays) button.

Views should automatically associate the contextual filter with the user relationship you added, so you should only need to select the Provide default value for the Default actions and select Content ID from URL for Type.

Click the Apply (all displays) button and then the Save button and you can then navigate to localhost/user/1/posts?_format=hal_json and see the output of nodes that were authored by UID 1. The default output from the View is the full entity output, the same as you would get by requesting /node/{nid}?_format=hal_json, but you can also change the output to Fields and manually select which fields are sent.
There are some unfortunate limitations with using Views to output lists of contents. While the output of each entity through Views adheres to the HAL specification, the overall list does not. The only output is an array of entities, and it does not provide any _links object to allow traversal or any other information about the list. In particular, it does not list the total number of entities found by the View. While the View does support paging through the use of the page query attribute, there is no way for a client to know how many pages of information there might be. Often these are presented in the _links object as URLs for the next, previous, first and last pages of information. Discussion about the lack of pagination has been in progress since September, 2013 and there is no current resolution or target for release. For more information, see https://www.drupal.org/node/2099281.