Framework for creating custom html tags