add tab component, add demo