build component