add tab framework