Writing add-ons for Google Docs

By kristoffer,

  Filed under: Add-ons, Code, Google Docs
  Comments: Comments Off on Writing add-ons for Google Docs

I got my first add-on for Google Docs published today. I’ve been working on it for a couple of weeks, and now its finally in the add-on store. Its name is Heading Numbers, and it is a fairly simple piece of software. All it does is add automatic numbering to heading (Hence the name). Check it out in the Add-on store! This is a short post about the process leading up to publishing. I’m sure I’ll write some more technical stuff later.


The idea

I’ve been using Docs for a while for three reasons:

  1. It does instant backup of everything you do and you can trace back changes or recover previous versions.
  2. Working in the cloud makes it easier to switch between computers
  3. It is a great tool for collaborative writing or getting feedback

I’ve just started working on my master thesis and figured I’d try to use Docs for it. But, in my previous work, I’ve been missing a proper way to add heading numbering. Sure, there is a couple of add-ons that can do it, but to be honest, I don’t like them (and heading numbering is also just a side-feature in both of them). You know when you think: I can do this better! We’ll, I did, and decided to give it a go.

Does it qualify as a add-on?

So, my next step was to figure out how and what was required to publish an add-on. Luckily, Google has a page dedicated to this: Publishing an Add-on. Turns out the general requirements are pretty simple:

  • The add-on must be fully functional — it can’t be a “work in progress.”
  • The script has been tested with multiple active users.
  • The design adheres to the UI style guide.

That, and the fact that you need to apply to publish. Of course, there are a bunch of technical requirements, but that’s more details than you need. So then it was all about writing code for a while.

Developing an add-on

Add-ons are basically Google Apps Scripts that are bound to a document. That meas that when you have an open document, navigate to “Tools > Script editor…”, and your set to develop you add on. Here are a couple of resources I found useful in the process:

The publishing process

After a while I started to feel like my add-on was ready for publishing, so I applied. A week or two later, I got my review response, including a bunch of things that needed to be fixed. The reviewer at Google helped improve my add-ons UI/UX by heaps. Three review rounds later, I got white-listed for publishing add-ons. Then it was just to create a few graphical elements for the Add-on Store, and here we are.

My experience

All-in-all I feel that the process has been a great learning experience and that it was worth while. What I feared the most was the review process, but that turned out to be one of the most enjoyable parts of the process (getting professional input on how to improve your product). So, if you have an idea for an add-on in the back of your head, bring it forward and start developing today. I know I have a few ideas ready.