framework for generating and rendering forms