components integration