Rich media technologies like streaming video, gigapixel panoramas, and terapixel maps are becoming broadly available on the Internet. Although rich media offer wonderful opportunities for creating experiences that have strong interactive and narrative elements, the ways in which users experience these media are widely disparate, involving a plethora of similar-yet-different web sites and mobile applications, each with its own proprietary rendering logic, data formats, and back-end services.

We introduce RIN, which is, at it’s heart, a declarative specification for orchestrating interactive, cinematic narratives that thread through an extensible set of rich media experiences. RIN’s JSON makes it straightforward to represent complex, cinematic fly-throughs that fluidly compose diverse media technologies, including gigapixel panoramas, terapixel online maps, traditional paginated documents, and data visualizations, choreographed together with audio, text, and video. We believe RIN can serve as the foundation for the next generation of standards-based rich media on the Internet, enabling a variety of new and compelling scenarios.

Rin.js is a JavaScript library that plays Rich Interactive Narratives (RIN). RIN content may be presented to the RIN player either as URLs to pre-existing JSON files or as JSON content given at runtime. On this site you will find information on how to use the RIN player, the RIN Data Model and SDK, extending RIN with custom providers and more. The RIN SDK is available for download. Also check out the RIN REPL where you can try out a few sample RINs.

Please see the MSR Technical Report MSR-TR-2012-78 for a technical overview of RIN.

Please review the license terms. The license permits only non-commercial use of the RIN SDK . This allows anyone to freely experiment with the technology. If you are interested in commercial use please contact us at

Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s