Building data-driven user interface