component-builder2 middleware