Skip to content

DR: Use of CLASP in Google Apps Script Development

Roslyn Wythe edited this page Feb 27, 2023 · 39 revisions

Issue

Problem Statement

  • The decision has already been made to bring Apps Scripts into the website GitHub repository, resulting in issue #3641. In the context of that issue, the suggestion to use clasp was made.
  • The Apps Script CLI, or clasp, is a tool with commands to create, edit, and deploy Apps Script projects locally. For Hack for LA, its most useful commands would be pull/push for transferring code modules between Google Drive and the local workstation, to facilitate local editing and committing of code. The tool would provide an alternative to copying/pasting code between Google Drive and the local workstation, which may be feasible for simple updates to our current small codebase, but would become unweildly if our codebase were to grow.

Feasibility Determination

  • Use of clasp is feasible and will provide benefits especially for devs who prefer to edit code in their local IDE, and especially if the codebase were to grow.
  • Use of clasp will create a larger learning curve and setup time for new devs, including installation of node.js, npm, clasp, @types/google-apps-script, Babel, and others.
  • It would be possible to combine clasp with other npm modules such as prettifier, ESLint, spell checker, Babel and tsgas, to create a custom "build/deploy" module.
  • Dev leads and PM can decide if use of clasp should be optional or mandatory.

Summary

  • Recommend a new issue to develop procedure and documentation for google apps scripts development, and optionally a separate issue to create a custom npm package combining clasp with other utilities such as spell-checking, ESLint, prettifier, and transpilers. These could be applied in VS Code and/or in a custom "build" npm module.
Clone this wiki locally