└── readme.md /readme.md: -------------------------------------------------------------------------------- 1 | # Google Apps Script List 2 | 3 | 4 | 5 | - [Google Apps Script List](#google-apps-script-list) 6 | - [Resources](#resources) 7 | - [Useful sites & blogs](#useful-sites--blogs) 8 | - [Awesome code & things](#awesome-code--things) 9 | - [Lists](#lists) 10 | - [Development](#development) 11 | - [Starter Kits](#starter-kits) 12 | - [Shims and polyfills](#shims-and-polyfills) 13 | - [Libraries & Modules](#libraries--modules) 14 | - [Using databases](#using-databases) 15 | - [ORM (O/RM and O/R mapping tool)](#orm-orm-and-or-mapping-tool) 16 | - [Utility](#utility) 17 | - [Parsing](#parsing) 18 | - [oAuth](#oauth) 19 | - [Images & Pictures](#images--pictures) 20 | - [Data Studio community connectors](#data-studio-community-connectors) 21 | - [Pack modules and universal libraries](#pack-modules-and-universal-libraries) 22 | - [Open Source Apps & Add-ons](#open-source-apps--add-ons) 23 | - [Testing](#testing) 24 | - [Logging](#logging) 25 | - [Snippets and assorted](#snippets-and-assorted) 26 | - [Snippets](#snippets) 27 | - [Lists & collections](#lists--collections) 28 | - [Spreadsheets](#spreadsheets) 29 | - [XML](#xml) 30 | - [Assorted](#assorted) 31 | 32 | 33 | 34 | ## Resources 35 | 36 | - [Google Apps Script](https://plus.google.com/communities/102471985047225101769) G+ Community 37 | - [Developing add-ons for Google Docs/Sheets/Forms](https://plus.google.com/u/0/communities/117193953428311185494) G+ Community 38 | - Search by label [[google-apps-script]](https://github.com/search?q=topic%3Agoogle-apps-script) on GitHub 39 | - SO [[google-apps-script]](http://stackoverflow.com/questions/tagged/google-apps-script) tag 40 | - Medium [Google Apps Script](https://medium.com/tag/google-apps-script) tag 41 | 42 | ### Useful sites & blogs 43 | 44 | - [ctrlq.org](https://ctrlq.org/dev/google-apps-script) Amit Agarwal's site 45 | - [mashe.hawksey.info](https://mashe.hawksey.info/category/google/google-apps-script) Martin Hawksey's site 46 | - [ramblings.mcpher.com](http://ramblings.mcpher.com/) Desktop Liberation - the definitive resource for Google Apps Script and Microsoft Office automation 47 | - [googleappscripting.com](http://googleappscripting.com) Google Apps Script Tutorials and Examples • Making Google Apps Script Accessible to Eveybody 48 | - [scriptsexamples](https://sites.google.com/site/scriptsexamples/custom-methods) A set of code samples and libraries to foster programming in Google AppsScript to be easy 49 | - [tanaikech.github.io](https://tanaikech.github.io/tags/google-apps-script/) The `Google Apps Script` tag of the Kanshi's blog 50 | - [andrewroberts.net](http://www.andrewroberts.net) The Andrew Roberts's site 51 | - [kutil.org](http://www.kutil.org/search/label/google%20apps%20script) The `google apps script` tag of Ivan Kutil's blog 52 | - [googleappsscript.org](http://www.googleappsscript.org/) Google Apps Script Tutorial 53 | - [scriptingwithshiva.blogspot.com](https://scriptingwithshiva.blogspot.com/) Scripting With Shiva It will help those wants to start Google Apps script Development from scratch 54 | - [benlcollins.com](https://www.benlcollins.com/) Ben Collins's site 55 | 56 | ### Awesome code & things 57 | 58 | - [Making a virtual machine in Google Sheets](http://briansteffens.com/2017/07/03/google-sheets-virtual-machine.html) 59 | - [Easy data scraping with Google Apps Script in 5 minutes](http://www.kutil.org/2016/01/easy-data-scrapping-with-google-apps.html) 60 | 61 | ### Lists 62 | 63 | - [Learning Google Apps Script](https://gist.github.com/labnol/0b67f812a827fd9babc5) The best resources for learning Google Apps Script, the glue that connects GSuite services including Gmail, Google Drive, Calendar, Maps, Analytics and more 64 | 65 | [goto top ⇑](#google-apps-script-list) 66 | 67 | ## Development 68 | 69 | - [google/clasp](https://github.com/google/clasp) Develop Apps Script projects locally using clasp (Command Line Apps Script Projects) CLI 70 | - [gas-local](https://github.com/mzagorny/gas-local) Execute and test your google app scripts locally in node.js 71 | - [gamified_journal](https://github.com/brainysmurf/gamified_journal) Proof of concept of a local development / push toolchain for Google Apps Scripting 72 | - [gas-github](https://github.com/leonhartX/gas-github) Chrome-extension to manage Google Apps Script(GAS) code with github/github enterprise 73 | - [ggsrun](https://github.com/tanaikech/ggsrun) This is a CLI tool to execute Google Apps Script (GAS) on a terminal 74 | - [gdrive](https://github.com/prasmussen/gdrive) Google Drive CLI Client 75 | - [MaartenDesnouck/google-apps-script](https://github.com/MaartenDesnouck/google-apps-script) gas, for locally developing Google Apps Script projects 76 | - [gas-lib](https://www.npmjs.com/package/gas-lib) NPM package to add code auto-completion for Google AppsScript in your prefered code editor 77 | - [AppsScriptColor](https://chrome.google.com/webstore/detail/appsscript-color/ciggahcpieccaejjdpkllokejakhkome) *(3 700+ users)* This Chrome extension provide 2 dark color themes for the google apps script editor. It also allows to use folders to sort your files more cleanly 78 | - [KaiShoya/autocomplete-gas](https://github.com/KaiShoya/autocomplete-gas) Google Apps Script autocompletions for [Atom editor](https://atom.io/packages/autocomplete-gas) 79 | - [rudimusmaximus/DevFlow](https://github.com/rudimusmaximus/DevFlow) A Dev Flow for Google Appscript 80 | - [fossamagna/gas-webpack-plugin](https://github.com/fossamagna/gas-webpack-plugin) Webpack plugin for Google Apps Script 81 | - [Andrew Roberts' Dev Flow](https://docs.google.com/document/d/1GgTZmY4VFzejVl7cTeKOc7PWtyZnhu-fFhysZ2ShRN4/edit#heading=h.v2f4oyhmg3cs) - Description of a dev flow using Github assistant. 82 | 83 | ### Starter Kits 84 | 85 | - [apps-script-starter](https://github.com/labnol/apps-script-starter) A starter kit for building Google Apps Script projects with modern JavaScript ES6, Webpack, Babel and ESLint inside Visual Studio Code 86 | - [gas-minimal-boilerplate](https://github.com/asciian/gas-minimal-boilerplate) A minimal boilerplate with webpack for Google Apps Script 87 | - [google-apps-script-template](https://github.com/nirazul/google-apps-script-template) A feature rich task runner for Google Apps Script to write, lint and push modern code to your documents 88 | - [gas-shell](https://github.com/JeanRemiDelteil/gas-shell) Starter template to develop locally Google AppsScript project with your prefered code editor (include build and publish as Add-on commands) 89 | - [artnc/gas-es6-webpack](https://github.com/artnc/gas-es6-webpack) ES6+Webpack boilerplate for Google Apps Script 90 | - [howdy39/gas-clasp-starter](https://github.com/howdy39/gas-clasp-starter) A starter template for Google Apps Script by clasp 91 | - [zaki-yama/webpack-google-apps-script-template](https://github.com/zaki-yama/webpack-google-apps-script-template) Template for developing Google Apps Script with Webpack 92 | - [JeanRemiDelteil/gas-starter-kit](https://github.com/JeanRemiDelteil/gas-starter-kit) Empty projet to start develop in Google AppsScript locally 93 | - [faresd/google-apps-script_travis-ci](https://github.com/faresd/google-apps-script_travis-ci) Automating Apps Script build, test, deployment and publishing in Chrome Webstore as an add-on using Travis CI 94 | - [sao-clasp](https://github.com/takanakahiko/sao-clasp) With one command, Generate a Google Apps Script project that uses clasp 95 | 96 | ### Shims and polyfills 97 | 98 | - [cEs6Shim. Using Es6 with Apps Script](http://ramblings.mcpher.com/Home/excelquirks/gassnips/es6shim) 99 | 100 | [goto top ⇑](#google-apps-script-list) 101 | 102 | ## Libraries & Modules 103 | 104 | ### Using databases 105 | 106 | - [FirebaseApp](https://github.com/RomainVialard/FirebaseApp) The Google Apps Script binding for the Firebase Realtime Database 107 | - [oshliaer/alasqlgs](https://github.com/oshliaer/alasqlgs) AlaSQLGS is a library that enables the use of the AlaSQL.js library in Google Apps Script 108 | 109 | ### ORM (O/RM and O/R mapping tool) 110 | 111 | - [Goodel](https://github.com/7imon7ays/Goodel) An ORM for Google Apps scripts 112 | - [gs-spreadsheet-manager](https://github.com/jsoma/gs-spreadsheet-manager) A slightly more object-oriented, ORM-y, and altogether pleasant way of dealing with Google Spreadsheets when using Google Apps Script 113 | - [Sheetfu](https://github.com/socialpoint-labs/sheetfu) An ORM to treat spreadsheet as database tables using Google Apps Scripts. [Sheetfu's Python version](https://github.com/socialpoint-labs/sheetfu) 114 | - [itmammoth/Tamotsu](https://github.com/itmammoth/Tamotsu) Object-Spreadsheet Mapping for Google Apps Script 115 | 116 | ### Utility 117 | 118 | - [gas-underscore](https://github.com/simula-innovation/gas-underscore) Underscore for Google Apps Script 119 | - [lodashgs](https://github.com/oshliaer/lodashgs) Lodash for Google Apps Script is a library that enables the use of the lodash.js library in Google Apps Script 120 | - [brucemcpherson/cUseful](https://github.com/brucemcpherson/cUseful) Various dependency free useful functions 121 | - [Gexpress](https://github.com/coderofsalvation/Gexpress) Express-ish middleware for google appscript (build NODEJS-ish applications) 122 | - [tanaikech/RangeListApp](https://github.com/tanaikech/RangeListApp) RangeListApp is a GAS library for retrieving, putting and replacing values for Spreadsheet by a range list with a1Notation using Google Apps Script (GAS) 123 | - [syslogic/google-apps-script](https://github.com/syslogic/google-apps-script) CloudDatastore.gs is a client for Google Cloud Datastore, which runs as a Service Account 124 | - [Sheetbase](https://sheetbase.net) Build REST API server, websites and apps using Google Apps Script. 125 | 126 | ### Parsing 127 | 128 | - [Apps-Script-htmlparser2-library](https://github.com/Spencer-Easton/Apps-Script-htmlparser2-library) A browserified version of fb55/htmlparser2 modified to work in Google Apps Script 129 | - [cheeriogs](https://github.com/asciian/cheeriogs) HTML manipulation library with jQuery-like interface 130 | 131 | ### oAuth 132 | 133 | - [apps-script-oauth1](https://github.com/gsuitedevs/apps-script-oauth1) An OAuth1 library for Google Apps Script 134 | - [apps-script-oauth2](https://github.com/gsuitedevs/apps-script-oauth2) An OAuth2 library for Google Apps Script 135 | - [brucemcpherson/cGoa](https://github.com/brucemcpherson/cGoa) OAuth2 for Apps Script in a few lines of code 136 | 137 | ### Images & Pictures 138 | 139 | - [ImgApp](https://github.com/tanaikech/ImgApp) This is a library of image tools for Google Apps Script 140 | 141 | ### Data Studio community connectors 142 | 143 | - [googledatastudio/community-connectors](https://github.com/googledatastudio/community-connectors) This repository contains open source content for Google Data Studio 144 | 145 | ### Pack modules and universal libraries 146 | 147 | - [classroomtechtools/modularLibraries](https://github.com/classroomtechtools/modularLibraries.gs) A collection of importable, modular libraries for any gas project 148 | 149 | [goto top ⇑](#google-apps-script-list) 150 | 151 | ## Open Source Apps & Add-ons 152 | 153 | - [google-docs-add-on](https://github.com/Automattic/google-docs-add-on) Publish to WordPress from Google Docs 154 | - [email-studio-gmail-addon](https://github.com/labnol/email-studio-gmail-addon) Gmail add-on for Mail Merge and Email Scheduler 155 | - [erickoledadevrel/crop-sheet](https://github.com/erickoledadevrel/crop-sheet) An add-on for Google Sheets that allows you to easily remove extra rows and columns 156 | - [ericyd/gdrive-transfer](https://github.com/ericyd/gdrive-transfer) Web app to transfer ownership of a Google Drive folder, including all sub-folders and documents 157 | - [ericyd/gdrive-copy](https://github.com/ericyd/gdrive-copy) Google Drive Copy Folder 158 | - [stardotbmp/slack-gas-signup](https://github.com/stardotbmp/slack-gas-signup) Google Apps Script Html Webapp as sign-up page for a slack channel 159 | - [Atlassian Cloud for Gmail add-on](https://bitbucket.org/atlassian/atlassian-cloud-for-gmail) An add-on to view information about items from Jira Cloud & Bitbucket Cloud, and take action on them from Gmail. 160 | - [Davepar/gcalendarsync](https://github.com/Davepar/gcalendarsync) Apps Script for syncing a Google Spreadsheet with Google Calendar 161 | - [Google Forms](https://github.com/labnol/google-forms) Google Scripts for sending emails, generating PDFs and setting response limits inside Google Forms. 162 | - [Website Monitor](https://github.com/labnol/website-monitor) Apps Script for monitoring the uptime of websites inside Google Sheets. 163 | 164 | [goto top ⇑](#google-apps-script-list) 165 | 166 | ## Testing 167 | 168 | - [gast](https://github.com/zixia/gast) Google Apps Script TAP Testing-framework 169 | - [GSUnit](https://sites.google.com/site/scriptsexamples/custom-methods/gsunit) is a Google Apps Script based testing framework based on JUnit by Kent Beck and JSUnit by Edward Hieatt. It will allow one to run tests while developing 170 | - [classroomtechtools/modularLibraries.gs/UnitTesting](https://github.com/classroomtechtools/modularLibraries.gs/tree/master/UnitTesting) Assertion and unit testing of modular libraries 171 | - [simula-innovation/qunit](https://github.com/simula-innovation/qunit) An easy-to-use JavaScript Unit Testing framework 172 | 173 | [goto top ⇑](#google-apps-script-list) 174 | 175 | ## Logging 176 | 177 | - [gasl](https://github.com/zixia/gasl) Google Apps Script Logging-framework 178 | - [BetterLog](https://github.com/peterherrmann/BetterLog) Logging library that extends the native apps script Logger, mainly to allow logging to a GSheet 179 | - [BBLog](https://github.com/andrewroberts/BBLog) Logging library that further extends BLog to give 180 | - logging to a Firebase DB 181 | - multiple logging instances 182 | - logging of function names and line numbers 183 | - log the user's email address or ID, in a full or disguised format 184 | - automatically format log GSheet 185 | 186 | [goto top ⇑](#google-apps-script-list) 187 | 188 | ## Snippets and assorted 189 | 190 | ### Snippets 191 | 192 | #### Lists & collections 193 | 194 | - [Google Apps Script Cheat Sheet](https://github.com/jychri/google-apps-script-cheat-sheet) 195 | - [Andrew Roberts' Scripts and Snippets](http://www.andrewroberts.net/scripts-and-snippets/) 196 | 197 | #### Spreadsheets 198 | 199 | - [[Apps Script] Getting the unmerged ranges within a range](https://gist.github.com/erickoledadevrel/6fa9b256f41b5d7646ba6ed37e0f8018) 200 | - [Google Apps Script to fill in a Document template with Spreadsheet data](https://gist.github.com/mhawksey/1170597) 201 | 202 | #### XML 203 | 204 | - [A function to convert an XML string to a JSON object in Apps Script, using logic similar to the sunset method Xml.parse()](https://gist.github.com/erickoledadevrel/6b1e9e2796e3c21f669f) 205 | 206 | ### Assorted 207 | 208 | - [GoogleSheets](https://github.com/Max-Makhrov/GoogleSheets) best code I've tested in Google Sheets 209 | - [google-apps-script-snippets](https://github.com/oshliaer/google-apps-script-snippets) Google Apps Script Snippets 210 | - [google-docs](https://github.com/fastfedora/google-docs) Libraries and functions used within Google Docs 211 | - [youtube/api-samples/apps-script](https://github.com/youtube/api-samples/tree/master/apps-script/snippets) The youtube-data-api.gs file in this directory contains code snippets that are generated by the Data API code snippet tool at: https://developers.google.com/youtube/v3/code_samples/code_snippets 212 | - [google/google-apps-script-samples](https://github.com/google/google-apps-script-samples) Various sample code and projects for the Google Apps Script platform 213 | - [googlesamples/apps-script-templates](https://github.com/googlesamples/apps-script-templates) This repository contains a number of code templates for Google Apps Script that provide example frameworks for Apps Script projects 214 | - [derekantrican/Google-Apps-Script-Library](https://github.com/derekantrican/Google-Apps-Script-Library) A variety of functions/programs written for Google Apps Script and Google services 215 | - [stardotbmp/google-sheet-functions](https://github.com/stardotbmp/google-sheet-functions) A single repository for open sharing of custom functions I have found to be useful generally 216 | - [googlesamples/apps-script](https://github.com/googlesamples/apps-script) Sample code for Google Apps Script, a cloud-based scripting service for Google Apps 217 | - [An Example of using an HTML form (e.g: "Contact Us" on a website) to send Email without a Backend Server (using a Google Script)](https://github.com/dwyl/html-form-send-email-via-google-script-without-server) 218 | - [googlescriptreference.com](http://googlescriptreference.com/) Google Script Reference 219 | - [rudimusmaximus/BurningGAS](https://github.com/rudimusmaximus/BurningGAS) Demonstrate various google apps script using a menu of functions inside a fresh google sheet and container bound editor 220 | - [GAS-Framework](https://github.com/andrewroberts/GAS-Framework) - library boilerplate that provides logging ([BBLog](https://github.com/andrewroberts/BBLog)) and error handling ([Assert](https://github.com/andrewroberts/Assert)) 221 | - [JSONPath](https://script.google.com/a/google.com/d/1BtmcVnmTKAxqdiHN9Q5cM6M6E5MUMzVtQjSfav-OIQxNIoACkDdlst53/edit) Extract data from complex data structures with simple expressions. Google Apps Script version of [this](https://github.com/dchester/jsonpath) library. 222 | 223 | [goto top ⇑](#google-apps-script-list) 224 | --------------------------------------------------------------------------------