By thinking about it, making a component database might be easier to do. Even if it's just components it should still give a lot of ideas about mechanics. Components would be easier to manage because the components actually exist, it's not virtual. So there is not that much many aspect to the same component. Here there could be different type of variations of the same components but it's not that hard to trace a line between what is a component and a variation to component.
Now about the information recorded around a component:
Variations in size of shape:
Material used:
Information that it can contain and ways to show it.
Any other ideas?