Site generation boilerplate