clayallsopp / motion-toolbox.com

The Motion-Toolbox website
http://motion-toolbox.com
79 stars 0 forks source link

Sorting? #45

Open markrickert opened 10 years ago

markrickert commented 10 years ago

So right now, wherever the developer puts their gem in the list inside the json file is where it shows up in the section on the site. I'm wondering if we should implement some sort of sorting so it's not a crapshoot or easily manipulated by the submitting developer?

Ideas:

  1. Alphabetical
  2. Total number of downloads from rubygems.org
  3. ??

Thoughts, @clayallsopp?

clayallsopp commented 10 years ago

Definitely agree with this. Right now the packages aren't tightly coupled with RubyGems, but I think they should be - not aware of any major libraries which aren't on RubyGems

I think sorting alphabetically by default within each section is fair, and then have toggles to sort by download count or time of last updated?

markrickert commented 10 years ago

Since the site is statically generated, it would have to calculate sort order when you generate the static page... could be tricky to have user selectable sorting, but should be easy to integrate with rubygems.

Having more than one sort method would probably just have to be two different generated pages.

clayallsopp commented 10 years ago

Hm, true. What about hitting the RubyGems API via JavaScript? The alphabetical sorting can be done statically, and then whenever the sort type is changed it hits the API and gets all the values?

(it could be slow, ~60 URL requests =\ would have to try and see)

andrewhavens commented 9 years ago

@clayallsopp Maybe Middleman/GH Pages is no longer a good fit for hosting motion-toolbox.com? If this was a Ruby app, backed by a database, maybe with some background jobs, then gems could be sorted dynamically and always show up-to-date information. However, I also appreciate the simplicity of this codebase. I think the challenge is paying for/sponsoring the hosting costs. I know Rackspace offers free hosting for many open-source projects.

clayallsopp commented 9 years ago

I think it'd be possible to hook up Travis to get to "good enough" - i.e. have Travis deploy new versions after every merge, and then figure out some way to trigger a Travis build every night

Unfortunately I don't have the bandwidth to make it happen, but always open to PRs