blog functionality with design