add basic layout generator