HTTPS SSH

Codeship Status for atlassianlabs/ac-koa-hipchat

What is this?

A Node.js and Koa.js-based library for building HipChat Connect add-ons.

While this is still a pre-1.0 release, the API has mostly stabilized. Future versions may still include backward-incompatible changes, but the risk of that now is relatively low.

Getting started

To create and install a simple HipChat add-on, please see our Getting Started guide.

Example Projects

The example illustrated in the Getting Started guide comes from the following example project:

See these additional add-ons for more complete examples:

  • Sassy (demonstrates multiple /commands)
  • Karma (demonstrates group based data storage independent of installation type)
  • Hearsay (demonstrates a configuration UI)
  • Mailroom (demonstrates a complex third party webhook integration)
  • Untappd (demonstrates integrations with multiple third party services)

Library Features

This library provides help with many aspects of add-on development, such as:

  • Creating an App - including support for creating multiple addons in a single Koa app
  • Multi-tenant registration and data partitioning
  • High-level conveniences for mounting webhook handlers
  • Configuration of commonly required Koa middleware
  • A REST API client with built-in OAuth2 token acquisition and refresh
  • JWT authentication validation, refresh, and token generation for web UI routes

In these documentation pages, we use the terms ctx and 'Koa context' interchangeably to refer to the context object that contains both standard Koa request/response data and objects and this library's request objects and services.

FAQ

Frequently asked questions, helpers and tips: FAQ