Recently we’ve published our first Google Workspace Addon for Gmail and Calendar. We’ve also prepared this add-on for white-labeling by the Aurinko users. Here are some of the key insights we gained from this experience:

  1. Technology Stack: Native Google Workspace add-ons are built using Google’s official API and development framework, specifically designed for integrating with Google Workspace (formerly G Suite) applications such as Gmail, Calendar, and Google Drive. These add-ons leverage the core functionality and capabilities provided by Google Workspace, ensuring seamless integration and compatibility.

    Prior to this relatively new framework developers had to use a third-party JavaScript library like InboxSDK and build Chrome extensions to integrate into Gmail UI. Many great Gmail plugins are built this way, including our own Yoxel Add-ons, and will continue using InboxSDK. However, it is important to note that InboxSDK is not an official Google product and there is always a risk that it will break with the next update of Gmail UI.

    The most attractive part about building the native add-ons is that they will work in Gmail mobile app or any other web browser besides Chrome. Plus, they can open for Google Calendar and Drive which is not supported by InboxSDK at all. Also the administration of such add-ons is better, they can be installed by an admin for all users at once.

  2. Server generated UI: The approach Google took in their Workspace Addon framework is quite similar to Slack’s (building with blocks / adaptive cards), that is, you need to generate UI on the server side and there is no frontend code like for Outlook addins or MS Teams tabs. Although your AppScript code may seem like your frontend code, it is not, it runs on Google servers. Google even offers alternative runtimes, so you could serve UI json right from your servers.

    That is how they achieve a universal UI in different Google apps on different devices, I guess, but this seems to come at a cost. Their Card-based interfaces are quite limited and definitely are not dynamic. For example, you can’t have a dynamic dropdown or a search box that loads necessary data from your server without navigating away from the current page. You will have to create a new page and show your options there. Then after selecting an option, go to the previous page and regenerate it from scratch.

    There are just certain things you won’t be able to do in this framework with the widgets that are available. The true frontend approach like InboxSDK allows alot more UI flexibility. That is why I think many Gmail plugins will remain Chrome extensions.

  3. AppScript: NodeJS/JavaScript fans will love it as it’s essentially that, but it maybe quite a turn off for developers programming in other languages. For them, alternative runtimes might be the way to go.

    We decided to plow through using AppScript with a goal of creating a universal AppScript code which could generate UI (Google widgets) from a simplified “sections and cards” format similar to Slack’s blocks or MS adaptive cards. We intend to give this AppScript code to our clients so that they could generate “sections and cards” in Aurinko and not worry about AppScript development or Google widgets.

    There are some advantages in using the AppScript, like collaborative development and deployment. You can also define various custom triggers and timed executions for your addons.

    This article, Google Workspace Addons: Unveiling the Technology Behind Our Integrated Addons, shows how our addon uses Aurinko as its backend and the AppScript runtime just as a proxy.

  4. Addon capabilities: The 1st version of our Google Workspace Addon offers fewer capabilities than our Chrome extension, but the main feature is that it runs in the mobile Gmail app and allows users to operate on the Go. The other key capabilities are:

Conclusion

Our first Google Workspace Add-on for Salesforce represents a significant milestone for us. The insights gained throughout the development process have reaffirmed the value of integrating with the Google Workspace ecosystem. We are excited to provide Aurinko users a way to white-label this addon to significantly shorter the integration delivery. We look forward to further refining and expanding Aurinko’s support of Google Workspace add-ons.