purescript/pursuit

show dependents

Opened this issue · 7 comments

It can be very handy to see a package's dependents to:

  1. See examples of how the package is used.
  2. Provide a rough heuristic for the package's popularity in the ecosystem.

Thoughts?

Sounds good to me.

Adding a note here that psc-package makes this much more easily achievable: https://github.com/purescript/package-sets/blob/master/packages.json

I don't think I'd be comfortable with using the official package set to obtain this information, since many packages aren't in there.

Related to #141, although, the other way around.

I think this would be a huge help for anyone trying to learn PureScript. It's almost impossible to find practical implementation examples of some libraries with Google.

I'd also like to highlight GitHub's facilities for searching globally within code. After spending several hours searching for solutions and poking at getting purescript-quickcheck-laws working in a learning project, I (re)acquainted myself with this GitHub feature.

Seaching for in:file language:purescript "purescript-quickcheck-laws returned 194 results in GitHub repositories, and I had a working implementation within a quarter of an hour.

image

194 potential implementation examples. The first did the trick for me:
image

I'm motivated to learn PureScript, but it is frustrating to spend hours searching for simple implementation examples repeatedly.

I'm willing to help out if I can.

I would be happy to leverage GitHub search, but that's a different feature request really: #168.

On reflection I'm a little less keen on implementing this as it seems difficult from an architectural perspective; see #375.

Found this issue while trying to figure out what other packages use purescript-gen besides purescript-quickcheck.
Seems like this is a task for the registry. Discussed a bit in purescript/registry#27
Maybe we could eventually get packages listed in the "Used By" section in github. They currently support these package managers - also mentioned in purescript-contrib/setup-purescript#2 (comment)