Skip to content

slackapi/manifest-schema

Repository files navigation

Manifest Schema

This project contains publicly availableJSONschemas that define Slack's manifest.json file file. JSON schemas can be used for a number of tasks but the purpose of this specific schema is to provide developers validation and prediction capabilities while editing manifest.json files in IDEs.

Guide Outline:


Usage

To take advantage of intellisense / typeahead capabilities, include a $schema key at the top level of a JSON file and point it to the main JSON schema from this repo:

{
  "$schema": "https://raw.githubusercontent.com/slackapi/manifest-schema/main/manifest.schema.json",
  "_metadata":{
    "major_version": 2
  },
  "settings": { ... }
  ...
}

Project Structure

This schema is the main schema definition for manifest.json, this file allows to map versioned schemas based on the version data the user defines in their manifest definition.

/schemas

This folder contains generated schemas for different versions of the manifest.json

/tests

This folder contains python test that validate the schema against example manifest.json files

/scripts

This folder contains bash scripts used by maintainers to execute actions on the project. The github actions of this project also uses the script in this folder to execute its actions.

Resources

Refer to the maintainers_guide in order to contribute to this project