![require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages](https://cdn.sanity.io/images/cgdhsj6q/production/be8ab80c8efa5907bc341c6fefe9aa20d239d890-1600x1097.png?w=400&fit=max&auto=format)
Security News
require(esm) Backported to Node.js 20, Paving the Way for ESM-Only Packages
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
google-spreadsheet-notifier
Advanced tools
Displays OS notifications with content from Google Spreadsheets.
Displays OS notifications with content from Google Spreadsheets.
For programatic access in your project:
npm install --save google-spreadsheet-notifier
For global shell access:
npm install -g google-spreadsheet-notifier
Let GSN ask for required params:
gsn
Example, passing all arguments:
gns -- --id=1cqhJqJISbAXf98avPK9N1B8W7XNkixUKy6NUggqlWwc --range=A1 --title=Hello --time=18:30
Example, letting GSN ask for missing arguments:
gns -- --id=1cqhJqJISbAXf98avPK9N1B8W7XNkixUKy6NUggqlWwc --range=A1
id
: Google spreadsheet id.range
: Google spreadsheet range. Examples: A1
, A1:H1
, A1
, H10
.title
: Notification title.time
: Time during the current day when notification will be displayed. Examples: 1:45
, 14:30
, 20:15
.Yeah, you can also install and require GSN in your own projects. One cool thing about using it programatically is that you can define your own filters.
A filter is a function that receives obtained rows from the Google API and returns an array, which will be used to display the notification.
So, you can use filters to precisely set the value or values you want to appear in the notification, or even notify something else based on the data you received.
'use strict'
const googleSpreadsheetNotifier = require('google-spreadsheet-notifier')
const winston = require('winston')
winston.level = 'info' // Set to 'debug' for more output.
// Set rows filter.
function filter (rows) {
// Filter rows.
let filteredRows = []
// Iterate rows.
rows.some((row) => {
// Iterate row values.
return row.some((value) => {
if (value === 'Thursday') {
filteredRows.push(row[7])
return true
}
})
})
return filteredRows
}
// Set params and start Google Spreadsheet Notifier.
const params = {
id: '1cqhJqJISbAXf98avPK9N1B8W7XNkixUKy6NUggqlWwc',
range: 'A1:I9',
filter
}
googleSpreadsheetNotifier(params)
I wanted a simple way to login to Google, access a spreadsheet and get a notification, at a defined time, with a value I'm interested in. GSN does that.
GSN uses the official NodeJS Client Library from Google to access the Google API and work its magic.
If you want to use GSN with your own Google App you should clone this repo and update the file
client_id.json
with the credentials obtained from Google Console for your app.
FAQs
Displays OS notifications with content from Google Spreadsheets.
The npm package google-spreadsheet-notifier receives a total of 1 weekly downloads. As such, google-spreadsheet-notifier popularity was classified as not popular.
We found that google-spreadsheet-notifier demonstrated a not healthy version release cadence and project activity because the last version was released a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
require(esm) backported to Node.js 20, easing the transition to ESM-only packages and reducing complexity for developers as Node 18 nears end-of-life.
Security News
PyPI now supports iOS and Android wheels, making it easier for Python developers to distribute mobile packages.
Security News
Create React App is officially deprecated due to React 19 issues and lack of maintenance—developers should switch to Vite or other modern alternatives.