Element cards represent discrete units of content. For instance, a Video, a Paragraph, and a List are each element cards.

Several elements can contain other elements (a Slideshow can include several Image elements, for example). Structure your story by organizing these elements together.

  1. Section
  2. Paragraph
  3. Quote
  4. List
  5. Table
  6. Image
  7. Video
  8. Map
  9. Embed
  10. Slideshow

Section

Summary

A section is a collection of elements– even other sections. You can use sections to group similar ideas, add headings, and annotate regions with audio, geotags, and more.

Example

{
  "type": "Section",
  "body": [...]
}

Fields

Field Type Default Purpose Caveats Version
body array of Element [] The elements comprising the section. Ordering is preserved. 1


Paragraph

Summary

Your content is divided into paragraphs, each consisting of formatted text. Links and formatting can be inserted using a simple shorthand called Markdown.

Example

{
  "type": "Paragraph",
  "text": "*Hello* and _welcome_ to the Internet. This is a [link](#) and this is a [mention](http://fb.com/zuck)"
}

Fields

Field Type Default Purpose Caveats Version
text string null The text comprising the paragraph. Markdown enabled. 1


Quote

Summary

Your content is divided into quotes, each consisting of formatted text. Links and formatting can be inserted using a simple shorthand called Markdown.

Example

{
  "type": "Quote",
  "text": "We can complain that *rose bushes have thorns*, or rejoice that *thorn bushes have roses*.",
  "external": true
}

Fields

Field Type Default Purpose Caveats Version
text string null The text comprising the quote. Markdown enabled. 1
external boolean null A flag indicating the quote’s origin. Used for blockquotes. 1


List

Summary

A list is an ordered (or unordered) collection of Element cards.

Example

{
  "type": "List",
  "ordered": true,
  "items": [...]
}

Fields

Field Type Default Purpose Caveats Version
items array of Element [] The elements comprising the list. 1
ordered boolean false A flag indicating whether order is significant. 1


Table

Summary

Coming soon

Example

// TODO

Fields

Field Type Default Purpose Caveats Version

Image

Summary

Any image element.

Example

{
  "type": "Image",
  "source": "http://example.com/image.jpg" 
}

Fields

Field Type Default Purpose Caveats Version
source string null The URL associated with this media. Must be a valid URL. 1


Video

Summary

Any video element.

Example

{
  "type": "Video",
  "loop": "off",
  "play": "auto",
  "controls": "hide",
  "source": "http://example.com/movie.mpg" 
}

Fields

Field Type Default Purpose Caveats Version
source string The URL associated with this media. Must be a valid URL. 1
loop LOOP_MODE null The looping mode to use. 1
play PLAY_MODE null The playback mode to use. 1
controls CONTROL_MODE null The control scheme to use. 1


Map

Summary

A geographic rendering of one or more locations.

Example

{
  "type": "Map",
  "geography": {...}
}

Fields

Field Type Default Purpose Caveats Version
geography Geography The data to map. This field is distinct from the Location trait. 1


Embed

Summary

Arbitrary markup to be included within the content. This will likely be rendered in a sanitized environment.

Example

{
  "type": "Embed",
  "mode": "feature",
  "content": "<h1>Hello, World!</h1>"
}

Fields

Field Type Default Purpose Caveats Version
mode EMBED_MODE null The type of embed to display. 1
source string null The URL to load into the embed. Must be a valid URL. 1
content string null Arbitrary markup to be embedded. Source or content must be provided. 1


Slideshow

Summary

A sequence of elements to display as a slideshow.

Example

{
  "type": "Slideshow",
  "items": [...]
}

Fields

Field Type Default Purpose Caveats Version
items array of Element [] The elements to be presented. Ordering is preserved. 1