apiaryio / gavel.js

Validator of HTTP messages (JavaScript implementation)
MIT License
97 stars 22 forks source link

Confusing Repo Names #23

Closed namuol closed 10 years ago

namuol commented 10 years ago

Since the npm package is called "gavel", I expected apiaryio/gavel to refer to the npm package.

It's sort of an unspoken convention to either name your node project node-<project name> or just <project name>.

Just for clarity (I was really scratching my head, digging through the other repo looking for the code!) I'd suggest renaming the other repo to something like gavel-spec (since it's essentially just a spec/docs) and this one to gavel.

Meanwhile, at the top of each repos' README, provide a link to the other repo (since there might be outdated links on external websites).

A minor nitpick, I know. Just a thought!

netmilk commented 10 years ago

Hi, thank you very much for the feedback and for suggestions! Much appreciated! Let me explain it:

The gavel repo is a language agnostic specification and documentation and for the Gavel - the set of knowledge how to decide which HTTP call is valid against given example and which is not.

The gavel-js repo is the repository only for the JavaScript implementation of Gavel distributed as a library in the gavel npm package. Reason is that we are expecting upcoming implementation in Ruby, Java and Python.

So gavel repo is a contract and an integration point for all possible implementations across all languages. That's also the reason why it's submoduled in the gavel-js repo and bound with the javascript implementation by glue-code in Cucumber's step definitions.

Adam

Almad commented 10 years ago

@netmilk I'd say it may be beneficial to have implementations listed on top of the gavel repo in tl;dr way.

Another good point is node-gavel convention, as observed by community. I'd say js instead of node is deserved if this implementation is usable in browser as well...is it?

Nitpick: you are writing gavel-js instead of gavel.js, which may suggest rename might be a good idea ;)