Unfortunately Bower doesn't yet have any validation when registering a component, which means anyone can register anything. This is the reason some components in the registry are invalid. Validation is mainly waiting for the server part to be ported to Node.js.
A component.json
is always recommended, but only required if you have multiple files and/or dependencies, otherwise Bower will infer the version from the git tags.