Most Recent Articles
Sharing content – not files – with Apps Script
My objective for a project I'm working on was to find a secure and simple way to publish ephemeral content without actually sharing files or hosting it anywhere. I'm not going to lie - this has been a super difficult problem to solve. Here's the Apps Script library I came up with. Background The project needed to find a way of securely sharing content with a 3rd party browser based app that normally needs its input data from an uploaded file. So the normal work flow would either be to download a file from Drive, then upload it or host the drive file somewhere that could serve it up to the app. I use Google Forms data to create a network visualization of the responses, then export the result to Drive as a GraphML file. NodeXL, which is an Excel Add-on that runs on the desktop, usually consumes these kind ...
Making a film color DNA
Some time ago I described how to use the Video Intelligence (VI) API to create the 'dna' of a film by using VI labels. You can then use these fingerprints to find films that are likely to be copies, or similar to other films. We did a Totally Unscripted show ...
Gassypedia – Apps Script developer ecosystem over time
A few months ago I released a publicly shared bigquery dataset all about the Apps Script ecosystem on Github, with reports available on looker. For details of how it all works see Gassypedia – public Google Apps Script on Github. Now we have a few months of data available we ...
Setting up a GraphQL server on Cloud Run
In a recent article Puppeteer, Cloud Run and GraphQL together I covered a GraphQL API for Pupeteer hosted on Google Cloud Run. This is publicly available for you try out. This article will cover all you need to know to get your own version running in your own Cloud Project ...
Puppeteer, Cloud Run and GraphQL together
A Google Cloud run hosted puppeteer with a graphQL interface and examples in Node and Apps Script ...
Manipulating PDFS in Apps Script
If you've used my Convert any file with Apps Script you'll know that it can take a wide range of files (currently 53 different mimeTypes, 42 types of imports, and 26 kinds of exports) and convert from one format to another. It uses the import and export functionality of the ...
Promises and async class constructors in Apps Script
Apps Script doesn't do asynchronous - so what's this all about? Since the move to v8, Apps Script supports the Promises as well as the related async/await syntax. Normally we don't have to worry about all that since all Apps Script services are synchronous. Yet we do know that server ...
Sharing cache between Google Workspace projects
Shared cached data between multiple scripts with this enhanced Apps Script Cacheservice library ...
Extending a cache client with a proxy
Extend a client library object by proxying and intercepting calls to its native methods. This example adds functionality to a redis client, and also gives tips on using GCP secret manger for configuration ...
Kubernetes secret values as shell environment variables
Getting a bunch of secret values out of kubernetes into your local shell ...
Workload identity with Kubernetes cronjobs to synch Mongo to Bigquery
An example use case for Kubernetes workload identity federation - transferring collections from mongodb to bigquery with a Kubernetes cron job ...
Color scales, custom schemes and proxies with Apps Script
How to add Google Material Colors and your own custom schemes to chroma ...
Proxy magic with Google Apps Script
I've written a few articles on here about JavaScript proxy and reflect. I use both extensively not only in Node projects but also in Apps Script. In this article I'll demonstrate how to extend built-in Apps Script objects. We'll fiddle with UrlFetchApp to build in caching and graphql capabilities right ...
Sharing secrets between Doppler, GCP and Kubernetes
3 secret managers working together. How to use GCP Secret Manager, Kubernetes secrets and Doppler together ...
Find nearest matches in color schemes with Apps Script
Here's another article on playing around with color in Apps Script. Let's say you have a defined list of colors in a scheme (for example paint or textile colors or perhaps a predefined scheme like Pantone), and you want to find the nearest color in that scheme that matches a ...