update nav generation to use html builder