Config


The possible types of configuration files (this allows main files to be different from internationalization files).

Type: object

A root configuration file that defines languages that have their own configuration files.

Type: object

A map of the languages supported to filenames, a structure that separates each language into a separate Tribble file.

Each additional property must conform to the following schema

Type: string
Type: object

A configuration file for a single language.

Type: string Default: "This field is required, please enter a value."

The error message when a user doesn't fill out a mandatory field. This is allowed to enable i18n at an arbitrary scale. This field does not support Markdown.

Type: object

All the workflow in this Tribble instance. Each workflow is a separate contribution experience, and multiple workflows are generally best suited for things like separate products.

Each additional property must conform to the following schema

Type: object

The components of a workflow.

Type: object

The endpoints that the user can exit the process from.

Each additional property must conform to the following schema

Type: object

The possible endpoint types (endpoints are sections that allow the user to exit the contribution process).

Type: object

A report endpoint, which gives the user a formatted report in Markdown to send to the project.

Type: string

The text of a button for sending teh user to wherever they'll report the issue. This does not support Markdown.

Type: string

A URL to send the user to so that they can report the issue. If the platform supports interpolating text to be sent into the URL, you can do so by interpolating %s into this field.

Type: string

The preamble text to display before the actual formatted report. Markdown can be used here.

Type: string

The formatted report. The UI will not allow the user to edit this, but will provide a copy button. Interpolation of form values is allowed here with ${form_id} syntax. This should be written in the appropriate templating language for your issue reporting system (e.g. Markdown for GitHub issues), and will be displayed as a raw, pre-formatted string.

Type: string

An instructional endpoint, which tells the user to do something. This supports Markdown.

Type: string

The section to start on, which must be a valid key in the sections map.

Type: object

The sections that the page can make use of.

Each additional property must conform to the following schema

Type: array

Each item of this array must be:

Type: object

The possible parts of a section.

Type: string

Simple text to be displayed to the user. Markdown is supported here, and this will be rendered to HTML to be interpolated into the page.

Type: object

A progression option for moving to another section.

Type: array of string

Any tags that should be accumulated as a result of proceeding through this route.

Each item of this array must be:

Type: string

The text to display to the user. This does not support Markdown, as it goes inside an HTML button.


A form input that the user can fill out. This must have an associated ID, because its value can be referenced later in an endpoint.

Type: object

The properties of an input element. This needs to be passed around, so it's broken out of the SectionElem input.


Simple text.

Type: object

A datetime input, with no time offset (by UTC has been deprecated at the standard-level).

Type: object

A select element that provides a dropdown for the user to select a single option.

Type: boolean Default: false

Whether or not the user can select multiple options.

Type: array

The options that the user can select from.

Each item of this array must be:

Type: object

The properties for an option for a select element. The text of this MUST NOT contain commas, otherwise all sorts of runtime errors WILL occur!

Type: string or null

The default value for the input. If the input is optional, this will be the value used for interpolation. If the input is not optional, this will be the default, which means it will be left as this if the user doesn't fill it in. If a value should be provided, you should make it mandatory and set a default, as optional fields should be assumed to potentially not contain any value (even though they always will if a default value is provided).

If the input is a Select, this must correspond to an entry in options.

Type: string

The input's ID, which can be used to reference its value later for interpolation in a formatted report.

Type: string

The label for the input. This does not support Markdown.

Type: boolean Default: false

Whether or not the input is optional.

Type: string

The title of the page dedicated to this workflow (appears in tabs).