Skip to content

russokj/nodejs-docs-samples

 
 

Repository files navigation

Google Cloud Platform logo

Google Cloud Platform Node.js Samples Slack Build Coverage

Node.js samples for Google Cloud Platform products.

See cloud.google.com/nodejs to get up and running with Node.js on Google Cloud Platform.

Table of Contents

Setup

Prerequisites

  1. Install Node.js (and NPM)

  2. Clone this repository:

     git clone https://github.com/GoogleCloudPlatform/nodejs-docs-samples.git
    
  3. Change directory in to the project:

     cd nodejs-docs-samples
    
  4. Set the GCLOUD_PROJECT environment variable:

    Linux:

     export GCLOUD_PROJECT=your-project-id
    

    Windows:

     set GCLOUD_PROJECT=your-project-id
    

    Windows (PowerShell):

     $env:GCLOUD_PROJECT="your-project-id"
    
  5. Obtain authentication credentials.

    Create local credentials by running the following command and following the oauth2 flow (read more about the command here):

     gcloud beta auth application-default login
    

    In non-Google Cloud environments, GCE instances created without the correct scopes, or local workstations where the gcloud beta auth application-default login command fails, use a service account by doing the following:

    • Go to API Manager -> Credentials
    • Click "New Credentials", and create a service account or click here
    • Download the JSON for this service account, and set the GOOGLE_APPLICATION_CREDENTIALS environment variable to point to the file containing the JSON credentials.

    Set the GOOGLE_APPLICATION_CREDENTIALS environment variable:

    Linux:

     export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service_account_file.json
    

    Windows:

     set GOOGLE_APPLICATION_CREDENTIALS=/path/to/service_account_file.json
    

    Windows (PowerShell):

     $env:GOOGLE_APPLICATION_CREDENTIALS="/path/to/service_account_file.json"
    

    Note for code running on GCE, GAE, or other environments:

    On Google App Engine, the credentials should be found automatically.

    On Google Compute Engine, the credentials should be found automatically, but require that you create the instance with the correct scopes.

     gcloud compute instances create --scopes="https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/compute.readonly" test-instance
    

    If you did not create the instance with the right scopes, you can still upload a JSON service account and set GOOGLE_APPLICATION_CREDENTIALS as described.

    Read more about Google Cloud Platform Authentication.

How to run a sample

  1. Change directory to one of the sample folders, e.g. bigquery:

     cd bigquery/
    
  2. Install the sample's dependencies (see the sample's README for details):

     npm install
    
  3. Run the sample:

     node sample_file.js [args]...
    

How to run the tests

  1. Read the Contributing Guide.

  2. Set the TEST_BUCKET_NAME environment variable to the name of a test Google Cloud Storage bucket:

    Linux:

     export TEST_BUCKET_NAME=your-bucket-name
    

    Windows:

     set TEST_BUCKET_NAME=your-bucket-name
    

    Windows (PowerShell):

     $env:TEST_BUCKET_NAME="your-bucket-name"
    
  3. In a terminal, start Redis:

     redis-server
    
  4. In another terminal, start memcached:

     memcached
    
  5. In another terminal, run the unit tests from the root of the project:

     npm test
    

    or with coverage:

     npm run coverage
    
  6. Then run the system tests from the root of the project:

     npm run system-test
    

    or with coverage:

     npm run system-cover
    
  7. Or run all the tests at once with coverage:

     npm run all-cover
    

Client libraries

Google Cloud Platform logoGoogle Cloud Node.js client library

The idiomatic client for Google Cloud Platform services.

Google logoGoogle API Node.js client library

Node.js client library for Google APIs.

Code samples

Google App Engine (flexible environment)

The App Engine flexible environment is based on Google Compute Engine and automatically scales your app up and down while balancing the load.

View the App Engine flexible environment Node.js samples.

Google BigQuery

BigQuery is Google's fully managed, petabyte scale, low cost analytics data warehouse.

View the BigQuery Node.js samples.

Google Compute Engine

Compute Engine lets you create and run virtual machines on Google infrastructure.

View the Compute Engine Node.js samples.

Google Container Engine

Container Engine: Run Docker containers on Google Cloud Platform, powered by Kubernetes.

View the Container Engine Node.js samples.

Google Cloud Datastore (Beta)

Cloud Datastore is a NoSQL document database built for automatic scaling, high performance, and ease of application development.

View the Cloud Datastore Node.js samples.

Google Cloud Functions (Alpha)

Sign up for the Alpha.

Cloud Functions is a lightweight, event-based, asynchronous compute solution that allows you to create small, single-purpose functions that respond to Cloud events without the need to manage a server or a runtime environment.

View the Cloud Functions Node.js samples.

Google Cloud Natural Language API (Beta)

Cloud Natural Language API provides natural language understanding technologies to developers, including sentiment analysis, entity recognition, and syntax analysis. This API is part of the larger Cloud Machine Learning API.

View the Cloud Natural Language API Node.js samples.

Google Cloud Prediction API

The Cloud Prediction API provides a RESTful API to build Machine Learning models.

View the Cloud Prediction API Node.js samples.

Google Cloud Pub/Sub

Cloud Pub/Sub is a fully-managed real-time messaging service that allows you to send and receive messages between independent applications.

View the Cloud Pub/Sub Node.js samples.

Google Cloud Speech API (Beta)

The Cloud Speech API enables easy integration of Google speech recognition technologies into developer applications.

View the Cloud Speech API Node.js samples.

Google Cloud Storage

Cloud Storage allows world-wide storage and retrieval of any amount of data at any time.

View the Cloud Storage Node.js samples.

Google Cloud Vision API

The Cloud Vision API allows developers to easily integrate vision detection features within applications, including image labeling, face and landmark detection, optical character recognition (OCR), and tagging of explicit content.

View the Cloud Vision API Node.js samples.

Stackdriver Debugger (Beta)

Stackdriver Debugger makes it easier to view the application state without adding logging statements.

View the Stackdriver Debugger Node.js sample.

Stackdriver Logging (Beta)

Stackdriver Logging allows you to store, search, analyze, monitor, and alert on log data and events from Google Cloud Platform and Amazon Web Services.

View the Stackdriver Logging Node.js samples.

Stackdriver Monitoring (Beta)

Stackdriver Monitoring collects metrics, events, and metadata from Google Cloud Platform, Amazon Web Services (AWS), hosted uptime probes, application instrumentation, and a variety of common application components including Cassandra, Nginx, Apache Web Server, Elasticsearch and many others.

View the Stackdriver Monitoring Node.js samples.

Stackdriver Trace (Beta)

Stackdriver Trace is a distributed tracing system for Google Cloud Platform that collects latency data from App Engine applications and displays it in near real time in the Google Cloud Platform Console.

View the Stackdriver Trace Node.js sample.

Other sample applications

Bookshelf tutorial app

The Bookshelf app is a sample web app written in Node.js that shows you how to use a variety of Google Cloud Platform features.

View the tutorial or the source code.

LabelCat

LabelCat is a NodeJS app that uses the Google Cloud Prediction API to automatically label GitHub Issues as they are created.

View the tutorial or the source code.

Node.js Codelab

In the Node.js Web App Google Cloud Platform codelab, you learn how to integrate Google Cloud Platform services into a Node.js web application to store data, upload images, and authenticate users.

View the tutorial or the source code.

Contributing

Contributions welcome! See the Contributing Guide.

License

Apache Version 2.0

See LICENSE

About

Node.js samples for Google Cloud Platform products.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • JavaScript 89.1%
  • HTML 10.5%
  • CSS 0.4%