Skip to content
This repository has been archived by the owner on Sep 8, 2020. It is now read-only.

A Chrome Extension that shows a notification when visiting sites that qualify for Discover® Deals or Cashback Rewards.

License

Notifications You must be signed in to change notification settings

nareddyt/discover-rewards-notifier

Repository files navigation

Chrome Web Store Icon

Discover® Deals and Cashback Rewards Notifier

Users Rating CircleCI Build Codacy Badge Greenkeeper badge Beginner Friendly Project

A Chrome Extension that shows a notification when visiting sites that qualify for Discover® Deals or Cashback Rewards.

The intended end-users are customers of Discover® Card.

Screenshot of extension in use

Note: Discover Deals have been retired (by Discover) since November 2018. This extension still displays Discover Cashback rewards, but no longer displays Discover Deals.

Retired discover deals

Table of Contents

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. The extension comes with the latest Discover® Deals and Cashback Rewards data, so you don't have to download those manually.

NOTE: Only follow these steps if you are a developer. If you are NOT a developer, you should install the extension by clicking on the picture below.

Click here to view the extension in the Chrome Web Store

Prerequisites

You'll need:

  • git to clone the repo and make contributions
  • npm to install developer dependencies and build the extension
  • Chrome Web Browser to test the extension

Building the extension

Clone the repo

git clone https://github.com/nareddyt/discover-rewards-notifier.git
cd discover-rewards-notifier/

Install npm dependencies

Run the command below to install the packages needed to build the extension.

Note: We use npm to manage developer dependencies. None of these dependencies are required when running the extension as a regular user.

npm install

Compile handlebars templates using npm

Handlebars is a templating engine the extension uses for the UI. Run the command below to compile the required templates.

npm run compileTemplates

Loading the extension into Chrome

The extension is now fully-built and ready to use. It needs to be loaded into the Chrome Web Browser so you can use it.

Follow the short list of steps from the Chrome Developer Guide under the Load the extension section.

The extension should work now! Try visiting sites like www.jcrew.com and www.ae.com.

Note: You'll see a special developer icon when you load the extension. This helps differentiate between the production build and the developers' custom builds.

Developing

Now that you have the extension setup, follow any one of these guides to learn how specific components work.

Tips:

  • Take a look at the issues page. Feel free to comment on anything that you have questions about or would like to work on!
  • If you plan on contributing, don't develop on the repo you just cloned. Instead, you should make a fork, clone that fork to your computer, and develop with that. Here is an excellent tutorial on how to use forks
  • After making changes, you must reload the extension in Chrome. See the following snippet from the Chrome Developer Guide:

The files are only parsed when the extension is loaded. If you want to see your changes in action, the extension has to be reloaded. Visit the extensions page (go to chrome://extensions, or More Tools > Extensions under the Chrome menu), and click Reload under your extension.

Discover® Data

See data/README.md

UI

See templates/README.md

Core Extension Code

See src/README.md

Tools and Scripts

See tools/README.md

Continuous Deployment

See .circleci/README.md

Product Website

See docs/README.md

Contributing

To get your code added to the project, first fork the repository, make the necessary changes, and then create a pull request

  • You are also welcome to work on existing Discover Rewards Notifier issues by looking at the issue tracker.

  • New to open source contributing? Look for issues with the "good first issue" label to get started.

Please read CONTRIBUTING.md for details on submitting pull requests.

Versioning

We use SemVer for versioning. For the versions available, see the releases for this repository.

Note: Anytime a release is created, CircleCI automatically deploys the corresponding code to the Chrome Web Store.

Authors

  • Tejasvi Nareddy - Creator and Maintainer - nareddyt

See also the list of contributors who participated in this project.

License

This project is licensed under the GPLv3 License - see the LICENSE file for details

Acknowledgments

See the ACKNOWLEDGMENTS file for details