-
-
Notifications
You must be signed in to change notification settings - Fork 773
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge branch 'master' into fragments-take2
- Loading branch information
Showing
1 changed file
with
116 additions
and
48 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,54 +1,122 @@ | ||
{ | ||
"$schema": "http://json-schema.org/draft-07/schema#", | ||
"title": "JSON Schema for AsyncAPI tool discovery file.", | ||
"type": "object", | ||
"required": ["title", "filters"], | ||
"properties": { | ||
"title": { | ||
"type": "string", | ||
"description": "Human-readable name of the tool that will be visible to people in the list of tools", | ||
"examples": ["AsyncAPI Generator", "Cupid"] | ||
}, | ||
"description": { | ||
"type": "string" | ||
}, | ||
"links": { | ||
"type": "object", | ||
"properties": { | ||
"websiteUrl": { | ||
"type": "string" | ||
"$schema": "http://json-schema.org/draft-07/schema#", | ||
"title": "JSON Schema for AsyncAPI tool discovery file.", | ||
"type": "object", | ||
"additionalProperties": false, | ||
"required": [ | ||
"title", | ||
"filters" | ||
], | ||
"properties": { | ||
"title": { | ||
"type": "string", | ||
"description": "Human-readable name of the tool that will be visible to people in the list of tools.", | ||
"examples": [ | ||
"AsyncAPI Generator", | ||
"Cupid" | ||
] | ||
}, | ||
"docsUrl": { | ||
"type": "string" | ||
} | ||
} | ||
}, | ||
"filters": { | ||
"type": "object", | ||
"required": ["technology", "categories"], | ||
"properties": { | ||
"language": { | ||
"type": "string" | ||
}, | ||
"technology": { | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
}, | ||
"minItems": 1 | ||
"description": { | ||
"type": "string", | ||
"description": "By default scripts read description of repository there project is stored. You can override this behaviour by providing custom description." | ||
}, | ||
"categories": { | ||
"type": "array", | ||
"items": { | ||
"type": "string" | ||
}, | ||
"minItems": 1 | ||
"links": { | ||
"type": "object", | ||
"additionalProperties": false, | ||
"properties": { | ||
"websiteUrl": { | ||
"type": "string", | ||
"description": "You can provide URL to the website where your project hosts some demo or project landing page.", | ||
"format": "uri" | ||
}, | ||
"docsUrl": { | ||
"type": "string", | ||
"description": "You can provide URL to project documentation in case you have more than just a readme file.", | ||
"format": "uri" | ||
} | ||
} | ||
}, | ||
"hasCommercial": { | ||
"type": "boolean", | ||
"default": false | ||
"filters": { | ||
"type": "object", | ||
"additionalProperties": false, | ||
"required": [ | ||
"technology", | ||
"categories" | ||
], | ||
"properties": { | ||
"language": { | ||
"type": "string", | ||
"description": "Provide information on how other can integrate with the tool in case it is possible. If your code generator generates Python code, then specify Python, even if code generator itself is written in JavaScript. If we forgot about some language then please add it through a pull request to AsyncAPI website repository.", | ||
"enum": [ | ||
"Go", | ||
"Java", | ||
"JavaScript", | ||
"HTML", | ||
"C/C++", | ||
"C#", | ||
"Python", | ||
"TypeScript", | ||
"Kotlin", | ||
"Scala", | ||
"Markdown", | ||
"YAML", | ||
"R", | ||
"Rubby", | ||
"Rust", | ||
"Shell", | ||
"Groovy" | ||
] | ||
}, | ||
"technology": { | ||
"type": "array", | ||
"description": "Provide a list of different technologies used in the tool. Put details useful for tool user and tool contributor.", | ||
"items": { | ||
"type": "string" | ||
}, | ||
"minItems": 1, | ||
"examples": [ | ||
"Express.js", | ||
"Kafka" | ||
] | ||
}, | ||
"categories": { | ||
"type": "array", | ||
"description": "Categories are used to group tools by different use case, like documentation or code generation. If have a list of fixed categories. If you use different one that your tool lands under \"other\" category. Feel free to add your category through a pull request to AsyncAPI website repository.", | ||
"items": { | ||
"type": "string", | ||
"enum": [ | ||
"api", | ||
"code-first", | ||
"code generator", | ||
"converter", | ||
"directory", | ||
"documentation generator", | ||
"editor", | ||
"ui component", | ||
"dsl", | ||
"framework", | ||
"github-actions", | ||
"mocking and testing", | ||
"validator", | ||
"compare-tool", | ||
"other", | ||
"cli", | ||
"bundler", | ||
"ide-extension" | ||
] | ||
}, | ||
"minItems": 1, | ||
"examples": [ | ||
"Express.js", | ||
"Kafka" | ||
] | ||
}, | ||
"hasCommercial": { | ||
"type": "boolean", | ||
"description": "Indicate if your tool is open source or commercial offering, like SAAS for example", | ||
"default": false | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} | ||
} |