dryify the templates with partials
adding a catch all page