Skip to content
A new JavaScript framework for ordering groceries!
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Type Name Latest commit message Commit time
Failed to load latest commit information.


A new JavaScript framework for ordering groceries!

Setting Up

Step 1

To support interaction with Google Sheets, create a Google API Console project. Be sure to enable the Google Drive & Google Sheets APIs.

Once you have create the API console project, Create a JSON Service Account Key

Download the service account key and place it in the config/ folder in the GroceryJS project.

The account key should resemble:

  "type": "service_account",
  "project_id": "foo-123",
  "private_key_id": "abcdefghijklmnopqrstuvwxyz",
  "private_key": "-----BEGIN PRIVATE KEY-----\n\n-----END PRIVATE KEY-----\n",
  "client_email": "",
  "client_id": "107846451311061568155",
  "auth_uri": "",
  "token_uri": "",
  "auth_provider_x509_cert_url": "",
  "client_x509_cert_url": ""

Step 2

Create the Google Sheet that will store your Google Sheet. Share the Google Sheet with the email address client_email found in the JSON service account key. Note the Google Sheet ID. It's required for the following step.[Google-Sheet-ID-Here]/edit#gid=0

Step 3

Create a file in the config/ folder, named config.js.

The contents:

const config = {
    shopper: {
        email: "[Lowes Foods - Foods To Go Username]",
        password: "[Lowes Foods - Foods To Go Paswword]",
        headless: false
    source: {
        sheetId: "[ID of the Google Sheet holding your grocery list]"
    email: {
        sender: {
            service: 'gmail',
            email: '[GMail email address to send the summary email from]',
            appPassword: 'GMail app password ]'
        recipeint: {
            email: '[The email address to receive the summary email]',
            sender: '[The email address of the sender]'

module.exports = config;
You can’t perform that action at this time.