add page generator