showing all recent posts in theme

This depends on what exactly theme is for – your own site? Sites? Public release?

There isn’t really simple and clean way to package functionally unique page with theme to appear at specific custom URL. The path of least resistance tends to be to include page template with theme and instruct users to create a page and assign that template to it to achieve functionality.

Most of other solutions are either unreasonably complex (and as such tend to be considered plugin territory) or might rub users wrong way (such as automatically adding pages they didn’t ask for to their site).