Samples and libraries

This page provides links to samples and libraries that helps with Google smart home integrations.

End-to-end samples

These samples use virtual devices to highlight the functionality of the Google smart home platform, showing how you can sync device state to Google's Home Graph and execute user's device control commands.

End-to-end sample Description
Java sample This is a Google smart home end-to-end sample implemented in Java.
Node.js sample This is a Google smart home end-to-end sample implemented in Node.js.

Libraries

This table shows links to libraries that helps with Smart Home integrations.

Library Description
Actions on Google Node.js library This is the Node.js library for implementing Google smart home fulfillment. For more information about Smart Home integrations, see the smart home module.
Actions on Google Java library This is the Java library for implementing Google smart home fulfillment. For more information about Google smart home integrations, see the smart home module.
Google smart home JSON schemas Repositories of JSON schemas definitions for Google smart home intents and traits interfaces. See JSON schemas generators options to generate libraries artifact for supported languages.
Home Graph API Node.js Client This is the Node.js client for the Home Graph API. For more information, see the API reference.
Home Graph API Java Client This is the Java client for the Home Graph API. For more information, see the API reference.
Home Graph API Go Client This is the Go client for the Home Graph API.
Home Graph API Python Client This is the Python client for the Home Graph API. For more information, see the API reference.
Home Graph API .NET Client This is the .NET client for the Home Graph API. For more information, see the API reference.
Home Graph API PHP Client This is the PHP client for the Home Graph API. For more information, see the generated types.
Home Graph API Ruby Client This is the Ruby client for the Home Graph API. For more information, see the API reference.
Home Graph API gRPC service definitions This is the gRPC service definitions for the Home Graph API. See gRPC languages documentation to generate client libraries artifacts for supported languages.
Local Home SDK typings library This is the TypeScript library for implementing Local Home SDK fulfillment. For more information, see the local fulfillment guide.

Other samples

This table shows links to Google smart home samples on GitHub.

Sample Description
Report State dashboard This is a dashboard that developers can use to help them debug their Google smart home integration. It obtains data from the Home Graph API and presents it to you, allowing you to verify the data that is stored in it. See deploy the report state dashboard.
Error reporting This is a tool that pushes errors from Cloud Logging to your server to identify common errors in your fulfillment.
Smart home device manager This project contains sample code that demonstrates the use of Firebase and Google Cloud IoT Core to build a cloud service for consumer Google smart home devices.
Local Home SDK This project shows how to integrate with the Local Home SDK. The SDK lets you add a local path to execute Google smart home intents by running a TypeScript or JavaScript app directly on Google Home smart speakers and Nest smart displays.