@dstil/google-drive-persistence

Simplify writing data to Google Drive.

Usage no npm install needed!

<script type="module">
  import dstilGoogleDrivePersistence from 'https://cdn.skypack.dev/@dstil/google-drive-persistence';
</script>

README

google-drive-persistence NPM version

This package is designed to abstract away the complexities of writing files to Google Drive.

Currently this package is capable of authorising a Google OAuth2 client, writing a file to Drive, as well as listing directories from Google Drive.

Getting started

In order to get up and running you need a Google Drive account, Google Drive Developer Project, and an OAuth Token.

Installing this package

Install via npm by running:

$ npm install @dstil/google-drive-persistence

Getting everything Google

These instructions are based on Google's NodeJS Quickstart Guide however they have been changed to provide clarity and adapted to suit the current context.

In order to achieve a result from this package, the following are required:

  • Google Drive account
  • New or existing Google Developer Project
  • Google Drive OAuth Credentials
  • Google Drive OAuth Token

Google Drive account

Sign up for a Google Drive account

Google Developer Project & OAuth Credentials

  1. Use this wizard to create or select a project in the Google Developers Console and automatically turn on the API.
  2. From the drop down select an existing project or select Create a project to create a new project. Select Continue (this will take a few minutes).
  3. Upon a successful result, you should be presented with a page saying The API is enabled, select Go to credentials.
  4. Select Credentials from the menu on the left hand side, and from the drop down button select OAuth client ID.
  5. Select the Configure consent screen button.
  6. Add a product name and Save.
  7. Select the Other radio button, and when prompted for a name please enter in your product's name or a memorable name, press Create.
  8. Click OK on the resulting dialog.
  9. Press the Download JSON button (downward arrow button) to download the client secret JSON.
  10. Rename the downloaded file to client_secret.json and place it in the root of the repo directory.

Google Drive OAuth token

This must be generated during run time, please see the examples folder for how code this functionality.

Examples

Example code for how to generate a Google Drive Document, and how to list directories at the root of a users Google Drive can be found in the examples folder. To run them, use one of the following npm scripts:

Create a Google Drive Document: $ npm run create-drive-file

List all directories at the root of a Google Drive account: $ npm run list-drive-root-folders

License

This package is licensed under the terms of the BSD 3-Clause license. Lease see the LICENSE file.