public void doBeforeRender(final HstRequest request, final HstResponse response) {
request.setAttribute("assetFolders", getAssetBaseBean(request).getFolders());
}
and then your Freemarker template can traverse the folders somehow and show the document names. For example:
<#list assetFolders as folder>
<#list folder.documents as asset>
${asset.localizedName}
</#list>
</#list>
This will show all asset names in the top-level folders. You can also retrieve a single folder with:
request.setAttribute("helloFolder", getAssetBaseBean(request).getChildBeansByName("hello", HippoFolderBean.class).get(0));
If you want to be able to traverse the whole asset tree using index pages (like an old-fashioned file tree exposed via Apache) you could create a separate channel [1] (e.g. on a mount "/assets") whose content base is /content/assets. A single _any_ matcher in the sitemap of that channel could then point to an 'index page' that renders all index pages. The HST component of that index page can just use the EssentialsContentComponent [2] instead of the custom code shown before to put the current asset folder on the request. Its Freemarker template can iterate over the documents in that folder and generate an index.
hope this helps,
Mathijs