add components.json