Support public directory listing

- Add new route logic to generate listing