purescript/pursuit

Support package tags and descriptions

paf31 opened this issue ยท 7 comments

paf31 commented

General tags like DOM or Async might be nice to support. I'm not sure how it'd be done though, maybe something in bower.json?

Bower has description and keywords fields - I think keywords are more or less the same as what you're imagining tags would be for?

paf31 commented

Yep, that works.

I don't know if I should make a separate issue for this, but I would like to have the package descriptions on the list of packages. That way you could have something more to go on than just the package name.

๐Ÿ‘ yes, that would definitely be an improvement. How do people feel about moving the complete package list off the index page onto a dedicated page (/packages) at the same time, and potentially splitting them up by first letter too (#146)? I think the root page is going to be a bit too big before long if we leave it as is. We could put some other stuff on the root page, like the 10 most recently uploaded packages, a link to a collection of the core packages, or other things like that.

I think that's a good idea. Browsing packages on Hackage is annoying since everything is on one page.

Looking at popular package repositories like RubyGems, PyPI, and Cargo, I see some things in common:

  • A search box for packages. This is something that Pursuit doesn't (explicitly) have currently. You can search for packages, but you're also searching for everything else at the same time. I think packages always end up at the top of search results, so this is probably good.
  • A list of recently uploaded and/or updated packages. I personally don't find these to be terribly useful, but maybe others do.
  • A list of the most popular packages. I don't think Pursuit has the information necessary to make a list like this. I think it would be awesome if it did.

So maybe Pursuit should have those things. I also like the idea of displaying a collection of the "core" packages, since PureScript is a little unique in that regard.

Packages do indeed always end up at the top of search results, but the searching is very basic right now. You have to spell the package name exactly for it to appear, so it would be good for partial matches to appear too. Also we should probably include package descriptions in search results for packages, and also take advantage of package descriptions in search results.

We might be able to make guesses about popularity by looking at the GitHub traffic graph? Hopefully they have an API for it. https://github.com/purescript/purescript-prelude/graphs/traffic

I think by this point we should definitely be splitting these up into different issues ;)