thechangelog / nightly

Changelog Nightly unearths the hottest repos on GitHub before they blow up. Subscribe for free. Keep up.
https://changelog.com/nightly
MIT License
207 stars 19 forks source link

Improve Design #1

Closed jerodsanto closed 9 years ago

jerodsanto commented 9 years ago

I got it started, but @adamstac can finish it better than I can.

jerodsanto commented 9 years ago

@adamstac I added sass processing for you :)

Also, there is now an index.erb which will be the home page and a nightly.erb which will represent a single issue (could maybe rename this to issue.erb if we want).

Both will use the same nightly.scss file once deployed. You can still rake generate which will process the sass, the index, and the currenty day's issue, putting it in to dist/:year/:month/:day for review.

jerodsanto commented 9 years ago

That dist dir will be the root directory on the web server. We can also add an images dir, which we will copy over to dist/images so they can be served up from /images to the web.

adamstac commented 9 years ago

Shipped a first pass on the Nightly-theme. Thanks for the work on this bro!

jerodsanto commented 9 years ago

:+1: good stuff. What do you think about stars count? Should we include that somewhere?

adamstac commented 9 years ago

100% I'll work more on this.

jerodsanto commented 9 years ago

@adamstac a few improvements I made tonight:

  1. Files that you put in the images directory will be copied to dist/images each time rake generate is run. This means nightly.erb and index.erb can reference those as /images/{image}.{ext} and it'll work in production.
  2. We now store each day's data in a separate JSON file. This means we can reproduce the html/css going back in history without hitting the API a bunch of times. :boom:
  3. In nightly.erb you can now access repo.stargazers_count (total stars) and repo.new_stargazers_count (new stars in last 24 hours) for each repo. Obviously, the top_new list of repos will have an identical count for both, but the top_all list's counts will differ.

Another thing I noticed: when the repo.language is nil we are still printing the bullet point. Might want to account for that in your design.

Getting close, bro!

jerodsanto commented 9 years ago

A few more notes:

  1. It'd be nice to get the date somewhere in the UI (near the top?). It'll be in the email subject line (and archive URL), but it'd be nice to have it in the content as well. Especially for archives.
  2. We should probably remove "top 25" wording from the "top new" list, since it has a 5-star threshold. Some days may have less than 25 new repos that fit the criteria. (maybe remove it from both lists?)
  3. I love the "before they blow" line. I may have even written it (don't recall). BUT it is only 100% true for the "top new" list, not the "top all" list. Those repos may have blown up already. Thoughts?
jerodsanto commented 9 years ago

Speaking to #1 above: perhaps instead of "in the past 24 hours" we can have it say "on Feb 14th, 2015" or similar. That'd get the date in there nicely.