Make header project behavior data driven