Skip to content

jasonpettus/evening-edition

Repository files navigation

Evening Edition

Build Status Coverage Status

Love your RSS reader, but miss the elegance and visual hierarchy of a traditional newspaper? What about all those times when you get served up half a dozen versions of the same story? Evening Edition is a Rubyfied feed reader that addresses both of these concerns: designed to be read only once a day, it lays out its stories in a manner pleasing to the eye, with visual clues as to which events are being talked about the most; and it examines these stories long before you read them, grouping similar articles together so that you see only one version (with a button and drop-down menu that lets you see the rest).

Check out the public build at: http://evening-edition.herokuapp.com

Screenshots

Evening Edition screenshot #1

Evening Edition screenshot #2

Evening Edition screenshot #3

Evening Edition screenshot #4

Evening Edition screenshot #5

Requirements

  • Ruby 2.0.0
  • Rails 4.2.3
  • PostgreSQL 9.3.5
  • Internet access

External APIs, Gems and Libraries

Evening Edition uses a modified version of Material Design, the design language invented by Google for all their in-house and Android applications.

A JavaScript parser, minifier and compressor.

A JavaScript library for easy on-screen updates of content. Evening Edition also uses AJAX, a specialized section of jQuery.

A Ruby gem for fetching and parsing RSS feeds. Highly recommended.

A Ruby gem for parsing HTML documents.

A Ruby gem for quickly finding an image based on its URI.

A Ruby gem for generating automated "pagination" links at the bottom of pages. Highly recommended.

A Ruby library for automating interactions with websites.

A Ruby library for facilitating the encoding and decoding of named or numerical entities in HTML documents.

A Ruby version of the BCrypt algorithm, an open-source option for generating powerful encryption on user passwords.

An algorithim originally invented by Simon White, for comparing the values of two strings to determine their similarity. For Rubyists who don't wish to write their own implementation, as was done in Evening Edition, see this Ruby gem among others.

Getting Started

To make your own changes to a local version of Evening Edition, begin with these steps:

  1. Clone this repository (or "repo") to your local computer:
  1. Install the app's gems and other dependencies:
  • bundle install
  1. Initialize and seed your local database:
  • rake db:create rake db:migrate rake db:seed
  1. Start your Rails server:
  • rails s
  1. In your browser, visit http://localhost:3000 for a live version of your local build

Contributing and Workflow

Evening Edition is an open-source project and welcomes contributions from the general public, especially those who are in the same student position as the original developers of this app when it was first created. In that spirit, we'd like to share the workflow process we adhered to as students of DevBootcamp, in the hopes that will help those of you interested in contributing to a public project for the first time.

  1. To begin with, make a local version of this repo by following the steps above.

  2. Create a new branch for whatever work you decide to do, and name it something easily identifiable:

  • git checkout -b jane-smith-branch
  1. When you're ready to submit your work for peer review, start by staging and committing your local branch:
  • git add .
  • git commit (Separate page will appear for your commit notes; make these as detailed as you can stand)
  1. Then switch to your master copy of the repo and fetch the latest version:
  • git checkout master
  • git pull origin master
  1. Then merge this latest version of the master with your local branch, resolving any merge conflicts along the way:
  • git checkout jane-smith-branch
  • git merge master
  1. Now push your local branch to this Github repo:
  • git push origin jane-smith-branch
  1. And finally click on "Pull Requests" in the upper-right corner of this page, then choose "New Pull Request" on the next page, comparing your local branch with the master and adding copious notes to the changes you'd like to submit. One of the administrators of this repo (or any repo, if you're duplicating these steps elsewhere) will review your changes and either approve them, reject them, or modify bits and pieces of what you have submitted. Congratulations -- you have now contributed to the growing pool of shared public knowledge about the world!

Development and Testing

Evening Edition was created under the precepts of Agile development, scrum project management, and test-driven coding, using a combination of Trello, RSpec, Jasmine, Capybara, Coveralls, TravisCI, Database Cleaner and Factory Girl.

Credits

Evening Edition was originally created by Emmanuel Obi, Jason Pettus and Ben Wootten, as their final project in the "DevBootcamp" coding program in Chicago, July 2015.

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published