AppsScriptPulse

Github as an Apps Script cache platform – Desktop Liberation

Use Github as a back end for caching large objects across platforms. It’s possible to use a github repo as the back end for a caching service, and by taking this approach we can share data between Apps script and multiple platforms. It also means you can retrieve the data with the git CLI in addition. It works in exactly the same way as all the other backends. … Using a regular git Repo means you can make it private and share it using the tools already built into Github.

Source: Github as an Apps Script cache platform – Desktop Liberation

Taking Away the Pain from Unit Testing in Google Apps Script

Unit testing is an extremely important practice. It helps developers avoid bugs easily and lets you know when something is broken immediately. … There are numerous libraries that exist for unit testing in JavaScript, including Jest and Mocha; however, they aren’t necessarily well-adapted to run under the Google Apps Script environment. … For that reason, I built my own library with Google Apps Script in mind.

We’ve featured a couple of community contributions around Google Apps Script Unit Testing and if this is a topic that interests you then the related posts section below will link to additional resources. This post from Dmitry Kostyuk is a great addition and the accompanying UnitTestingApp library that is shared in the post has some very useful Google Apps Script related features such as a dedicated method to check your data is a 2D array (particularly useful in the context of handling spreadsheet values). Follow the source link for more details…

Source: Taking Away the Pain from Unit Testing in Google Apps Script

Google Apps Scripts Libraries — How to set them up and turn Slack into a real-time logging platform

This post shows how to setup Libraries in Google Apps Scripts to share code and functions. We will use this while using Slack for logging.

Nice post from Matt “Rudy” Benton on using libraries in your Apps Script projects to make it easier to share code/credentials. Matt illustrates this with a Slack app that has also been documented.

Source: Google Apps Scripts Libraries — How to set them up and turn Slack into a real-time logging platform

ObjectStore: Apps Script library for in-memory storage and retrieval 

AppsScripters need a quick and easy way to keep objects hanging around, and to persist them across executions. There are services available but using them effectively is a well-worn problem. Why not solve it once-and-for-all?

Adam Morris, GDE Expert and Workspace dev, brings another library to the table to help developers work more efficiently with data in memory. This library handles in-memory storage as well as writing to the Cache and Properties services for persistent storage in Apps Script projects.

Source: ObjectStore for Apps Script

New Google Apps Script library for working with Google Docs, MS Word, Google Sheets, MS Excel and Google Slides when core/advanced service methods are not available 

This is a Google Apps Script library for supporting Document service, Docs API, Spreadsheet service, Sheets API, Slides service and Slides API. The aim of this library is to compensate the processes that they services cannot achieve.

The purpose of this contribution from Tanaike is to extend Google Apps Script to interact with certain types of Google Drive files using methods not included in the existing core or advanced services. Features worth noting are:

  • Google Docs:
    • Retrieve table width and column width from the table. The tables inserted with the default width are included.
  • Google Sheets:
    • Retrieve all images in Google Spreadsheet as an object including the cell range and image blob.
    • Retrieve all comments in Google Spreadsheet as an object including the cell range and comments.
    • Insert images in cells of Google Spreadsheet using the image blob.
    • Create new Google Spreadsheet by setting the custom header and footer.
  • Microsoft Word:
    • Retrieve table width and column width.
  • Microsoft Excel:
    • Retrieve all values and formulas of the cells.
    • Retrieve all sheet names.
    • Retrieve all images as an object including the cell range and image blob.
    • Retrieve all comments as an object including the cell range and comments.

For more details about this library visit the source on Github

Source: tanaikech/DocsServiceApp

Introducing Zapier’s new Gmail add-on

Image: Zapier

Image: Zapier

This add-on makes it easy to move high-value emails into your other apps with just a click, without ever leaving Gmail.

You can use the add-on to create customized one-click workflows that give you seamless productivity—by moving important messages out of a private inbox and into a shared tool like Slack, for example, or by routing emails to apps like Asana to streamline your project management.

Following on from our recent repost of Zapier’s Google Sheets app of the day, Zapier are continuing their love of Google Apps Script with a new Gmail Add-on. The source code for this add-on is proprietary but again useful to see firms investing in G Suite solutions for the marketplace.

Source: Introducing Zapier’s new Gmail add-on – Updates | Zapier

QUnit2GS is a Google Apps Script Library that allows Apps Script projects to be tested using QUnit

QUnit2GS is a Google Apps Script Library that allows Apps Script projects to be tested using the QUnit JavaScript testing framework – qunitjs.com. Just add this library to your project and start writing tests in just a few minutes.

Created by Andrew Roberts and Alejo Grigera Sutro this library will make it easier to adopt test-driven development with your Google Apps Script projects. The site is worth an explore to see what is possible…

Source: Home | QUnitGS2

Goa v8 changes and enhancements for OAuth2 and Google Apps Script

Goa tutorial

v8 and other htmlservice changes meant I had to make a few small changes to cGoa. The good news it’s easier to use than ever, and supports a few new services too. It’s best to look at the service list on github, as that’ll be kept up to date. Here’s a reminder of how to use it.

There are a couple of OAuth 2 Google Apps Script libraries out there but cGoa from Bruce Mcpherson is the easiest one I used, particularly, when it comes to setup. Bruce’s post has more details including various ways you can use the library.

Source: Goa v8 changes and enhancements

RichTextApp – a Google Apps Script library for copying rich text formatting from Google Docs and Sheets

This is a GAS library for copying the rich text with the text styles from Google Document to Google Spreadsheet or from Google Spreadsheet to Google Document using Google Apps Script (GAS). And, also the rich texts in the cells can be converted to HTML format.

Nice little helper library for copying rich text formatting from Google Docs and Sheets. You can view the project README for information on the formats that are currently supported. Personally,  the inclusion of the RichTextToHTMLForSpreadsheet method looks particularly useful for converting rich text formatting in Google Sheets cells to HTML for mail merge applications.

Source: tanaikech/RichTextApp

Proof of concept of how to get namespaces (sorta) in Google Apps Scripts libraries

Proof of concept of how to get namespaces (sorta) in Google Apps Scripts libraries – classroomtechtools/NamespacedLib

For the seasoned Google Apps Script library author a continual frustration is the inability to get the online Script Editor to autocomplete if you have sub methods within your namespace. Adam Morris has discovered that the @name attribute can be used to fake this behavior … to a degree.

Source: classroomtechtools/NamespacedLib