publiccode.json

description: While the standard is structured to be meaningful on an international level, there are additional information that can be added that makes sense in specific countries, such as declaring compliance with local laws or regulations. The provided extension mechanism is the usage of country-specific sections.

description:
This key specifies the version to which the current extension schema adheres to, for forward compatibility.

Please note how the value of this key is independent from the top-level publiccodeYmlVersion one (see The Standard (core)). In such a way, the extensions schema versioning is independent both from the core version of the schema and from every other Country.

description: This key contains the full name of one of the technical contacts. It must be a real person; do NOT populate this key with generic contact information, company departments, associations, etc.

description: This key contains the e-mail address of the technical contact. It must be an email address of where the technical contact can be directly reached; do NOT populate this key with mailing-lists or generic contact points like "info@acme.inc". The e-mail address must not be obfuscated. To improve resistance against e-mail collection, use \x64 to replace @, as allowed by the YAML specification.

format: email

description: phone number (with international prefix). This has to be a string.

description: This key contains an explicit affiliation information for the technical contact. In case of multiple maintainers, this can be used to create a relation between each technical contact and each maintainer entity. It can contain for instance a company name, an association name, etc.

required: name until

description: The name of the contractor, whether it's a company or a physical person.

description: This is a date (YYYY-MM-DD). This key must contain the date at which the maintenance is going to end. In case of community maintenance, the value should not be more than 2 years in the future, and thus will need to be regularly updated as the community continues working on the project.

format: date

description: This key points to the maintainer website. It can either point to the main institutional website, or to a more project-specific page or website.

format: uri

description: The name of the dependency (e.g. MySQL, NFC Reader)

description: The first compatible version

description: The latest compatible version

description: The only major version for which the software is compatible. It assumes compatibility with all patches and bugfixes later applied to this version.

description: Whether the dependency is optional or mandatory

description:
publiccode.yml is a metadata standard for repositories containing software developed or acquired by the Public Administration, aimed at making them easily discoverabile and thus reusable by other entities.

By including a publiccode.yml file in the root of a repository, and populating it with information about the software, technicians and civil servants can evaluate it. Automatic indexing tools can also be built, since the format is easily readable by both humans and machines.

publiccode.yml is mandatory for all public software developed in Italy, according to the national guidelines: this enables the Developers Italia crawler to build the national software catalog. The standard is designed to be interoperable internationally, thus the country-specific keys are separated by the core part and are defined in specific sections that each government can rule.

description: This key specifies the version to which the current publiccode.yml adheres to, for forward compatibility.

description: This key contains the name of the software. It contains the (short) public name of the product, which can be localised in the specific localisation section. It should be the name most people usually refer to the software. In case the software has both an internal "code" name and a commercial name, use the commercial name.

description: This key contains the name of the "suite" to which the software belongs.

description:
A unique identifier for this software. This string must be a URL to the source code repository (git, svn, …) in which the software is published. If the repository is available under multiple protocols, prefer HTTP/HTTPS URLs which don't require user authentication.

Forks created for the purpose of contributing upstream should not modify this file; this helps software parsing publiccode.yml to immediately skip technical forks. On the contrary, a complete fork that is meant to be maintained separately from the original software should modify this line, to give themselves the status of a different project.

description: If the url parameter does not serve a human readable or browsable page, but only serves source code to a source control client, with this key you have an option to specify a landing page. This page, ideally, is where your users will land when they will click a button labeled something like "Go to the application source code". In case the product provides an automated graphical installer, this URL can point to a page which contains a reference to the source code but also offers the download of such an installer.

description:
In case this software is a variant or a fork of another software, which might or might not contain a publiccode.yml file, this key will contain the url of the original project(s).

The existence of this key identifies the fork as a software variant, descending from the specified repositories.

description:
This key contains the latest stable version number of the software. The version number is a string that is not meant to be interpreted and parsed but just displayed; parsers should not assume semantic versioning or any other specific version format.

The key can be omitted if the software is currently in initial development and has never been released yet.

description: This key contains the date at which the latest version was released. This date is mandatory if the software has been released at least once and thus the version number is present.

description: This key contains the path to the logo of the software. Logos should be in vector format; raster formats are only allowed as a fallback. In this case, they should be transparent PNGs, minimum 1000px of width. The key value can be the relative path to the file starting from the root of the repository, or it can be an absolute URL pointing to the logo in raw version. In both cases, the file must reside inside the same repository where the publiccode.yml file is stored.

description: A monochromatic (black) logo. The logo should be in vector format; raster formats are only allowed as a fallback. In this case, they should be transparent PNGs, minimum 1000px of width. The key value can be the relative path to the file starting from the root of the repository, or it can be an absolute URL pointing to the logo in raw version. In both cases, the file must reside inside the same repository where the publiccode.yml file is stored.

description:
A list of Media Types (MIME Types) as mandated in RFC 6838 which the application can handle as input.

In case the software does not support any input, you can skip this field or use application/x.empty.

description:
A list of Media Types (MIME Types) as mandated in RFC 6838 which the application can handle as output.

In case the software does not support any output, you can skip this field or use application/x.empty.

description:
This key specifies which platform the software runs on. It is meant to describe the platforms that users will use to access and operate the software, rather than the platform the software itself runs on.

Use the predefined values if possible. If the software runs on a platform for which a predefined value is not available, a different value can be used.

enum: web windows mac linux ios android

description: A list of words that can be used to describe the software and can help building catalogs of open software.

enum: accounting agile-project-management applicant-tracking application-development appointment-scheduling backup billing-and-invoicing blog budgeting business-intelligence business-process-management cad call-center-management cloud-management collaboration communications compliance-management contact-management content-management crm customer-service-and-support data-analytics data-collection data-visualization digital-asset-management digital-citizenship document-management donor-management e-commerce e-signature email-management email-marketing employee-management enterprise-project-management enterprise-social-networking erp event-management facility-management feedback-and-reviews-management financial-reporting fleet-management fundraising gamification geographic-information-systems grant-management graphic-design help-desk hr ide identity-management instant-messaging inventory-management it-asset-management it-development it-management it-security it-service-management knowledge-management learning-management-system marketing mind-mapping mobile-marketing mobile-payment network-management office online-booking online-community payment-gateway payroll predictive-analysis procurement productivity-suite project-collaboration project-management property-management real-estate-management remote-support resource-management sales-management seo service-desk social-media-management survey talent-management task-management taxes-management test-management time-management time-tracking translation video-conferencing video-editing visitor-management voip warehouse-management web-collaboration web-conferencing website-builder workflow-management

description:
A list of the names of prominent public administrations (that will serve as "testimonials") that are currently known to the software maintainer to be using this software.

Parsers are encouraged to enhance this list also with other information that can obtain independently; for instance, a fork of a software, owned by an administration, could be used as a signal of usage of the software.

description: A link to a public roadmap of the software.

enum: concept development beta stable obsolete

enum: standalone/mobile standalone/iot standalone/desktop standalone/web standalone/backend standalone/other addon library configurationFiles

description: This key explicitly includes certain countries in the intended audience, i.e. the software explicitly claims compliance with specific processes, technologies or laws. All countries are specified using lowercase ISO 3166-1 alpha-2 two-letter country codes.

description: This key explicitly marks countries as NOT supported. This might be the case if there is a conflict between how software is working and a specific law, process or technology. All countries are specified using lowercase ISO 3166-1 alpha-2 two-letter country codes.

description: This key contains a list of tags related to the field of application of the software.

enum: agriculture culture defence education emergency-services employment energy environment finance-and-economic-development foreign-affairs government healthcare infrastructures justice local-authorities manufacturing research science-and-technology security society sport tourism transportation welfare

description:
This section contains a general description of the software. Parsers can use this section for instance to create a web page describing the software.,

Note: since all the strings contained in this section are user-visible and written in a specific language, you must specify the language you are editing the text in (using the IETF BCP 47 specifications) by creating a sub-section with that name. The primary language subtag cannot be omitted, as mandated by the BCP 47.

required: genericName shortDescription

description: This key is an opportunity to localise the name in a specific language. It contains the (short) public name of the product. It should be the name most people usually refer to the software. In case the software has both an internal "code" name and a commercial name, use the commercial name.

description: This key is the "Generic name", which refers to the specific category to which the software belongs. You can usually find the generic name in the presentation of the software, when you write: "Software xxx is a yyy". Notable examples include "Text Editor", "Word Processor", "Web Browser", "Chat" and so on… The generic name can be up to 35 characters long.

description: This key contains a short description of the software. It should be a single line containing a single sentence. Maximum 150 characters are allowed.

description:
This key contains a longer description of the software, between 500 and 10000 chars. It is meant to provide an overview of the capabilities of the software for a potential user. The audience for this text should be that of users of the software, not developers. You can think of this text as the description of the software that would be in its website (if the software had one).

This description can contain some basic markdown: *italic*, **bold**, bullet points and [links](#).

description:
This key contains a reference to the user-level (not developer-level) documentation of the software. The value must be a URL to a hosted version of the documentation.

It is suggested that the URL points to a hosted version of the documentation that is immediately readable through a common web browser in both desktop and mobile format. The documentation should be rendered in HTML and browsable like a website (with a navigation index, a search bar, etc.).

If the documentation is instead available only as a document, put a direct view/download link as URL in this key. You should commit the document as part of the source code repository, and then link to it using the code hosting source browser URL (e.g.: GitHub URL to the file). Prefer using open formats like PDF or ODT for maximum interoperability.

Whichever the format for the documentation, remember to make its source files available under an open license, possibly by committing them as part of the repository itself.

description:
This key contains a reference to the API documentation of the software. The value must be a URL to a hosted version of the documentation.

It is suggested that the URL points to a hosted version of the documentation that is immediately readable through a common web browser. The documentation should be rendered in HTML and browsable like a website (with a navigation index, a search bar, etc.), and if there is a reference or test deployment, possibly offer an interactive interface (e.g. Swagger).

If the documentation is instead available only as a document, put a direct view/download link as URL in this key. You should commit the document as part of the source code repository, and then link to it using the code hosting source browser URL (e.g.: GitHub URL to the file). Prefer using open formats like PDF or ODT for maximum interoperability.

Whichever the format for the documentation, remember to make its source files available under an open license, possibly by committing them as part of the repository itself.

description:
This key contains a list of software features, describing what capabilities the software allows to do. The audience for this text should be that of public decision makers who will be commissioning the software. The features should thus not target developers; instead of listing technical features referring to implementation details, prefer listing user-visible functionalities of the software.

While the key is mandatory, there is no mandatory minimum or maximum number of features that should be listed in this key. Each feature must use a maximum of 100 characters.

The suggested number of features to list is between 5 and 20, depending on the software size and complexity. There is no need for exhaustiveness, as users can always read the documentation for additional information.

description: This key contains one or multiple paths to files showing screenshots of the software. They are meant to give a quick idea on how the software looks like and how it works. The key value can be the relative path to the file starting from the root of the repository, or it can be an absolute URL pointing to the screenshot in raw version. In both cases, the file must reside inside the same repository where the publiccode.yml file is stored.

description:
This key contains one or multiple URLs of videos showing how the software works. Like screenshots, videos should be used to give a quick overview on how the software looks like and how it works. Videos must be hosted on a video sharing website that supports the oEmbed standard; popular options are YouTube and Vimeo.

Since videos are an integral part of the documentation, it is recommended to publish them with an open license.

description: A list of awards won by the software.

description: This string describes the license under which the software is distributed. The string must contain a valid SPDX expression, referring to one (or multiple) open-source license. Please refer to the SPDX documentation for further information.

description:
This string describes the entity that owns the copyright on "most" of the code in the repository. Normally, this is the line that is reported with the copyright symbol at the top of most files in the repo.

It is possible to list multiple owners if required so, using an English sentence. It is also possible to informally refer to a community of group of people like "Linus Torvalds and all Linux contributors".

In case it is not possible to name a main copyright owner, it is possible to omit this key; in those cases, if the repo has a authors file, you can point to it through legal/authorsFile.

description: This string describes the entity that owns this repository; this might or might not be the same entity who owns the copyright on the code itself. For instance, in case of a fork of the original software, the repoOwner is probably different from the mainCopyrightOwner.

description: Some open-source software adopt a convention of identify the copyright holders through a file that lists all the entities that own the copyright. This is common in projects strongly backed by a community where there are many external contributors and no clear single/main copyright owner. In such cases, this key can be used to refer to the authors file, using a path relative to the root of the repository.

description: This section provides information on the maintenance status of the software, useful to evaluate whether the software is actively developed or not.

description: This key describes how the software is currently maintained.

enum: internal contract community none

description: This key describes the entity or entities, if any, that are currently contracted for maintaining the software. They can be companies, organizations, or other collective names.

$ref: #/definitions/Contractor

description:
One or more contacts maintaining this software.

This key describes the technical people currently responsible for maintaining the software. All contacts need to be a physical person, not a company or an organisation. If somebody is acting as a representative of an institution, it must be listed within the affiliation of the contact.

In case of a commercial agreement (or a chain of such agreements), specify the final entities actually contracted to deliver the maintenance. Do not specify the software owner unless it is technically involved with the maintenance of the product as well.

$ref: #/definitions/Contact

description: This section provides an overview of the localization features of the software.

required: localisationReady availableLanguages

description: If yes, the software has infrastructure in place or is otherwise designed to be multilingual. It does not need to be available in more than one language.

description: If present, this is the list of languages in which the software is available. Of course, this list will contain at least one language. The primary language subtag cannot be omitted, as mandated by the BCP 47.

description:
This section provides an overview on the system-level dependencies required to install and use this software.

NOTE: do not list dependencies at the source code level (e.g.: software libraries being used), and focus only on runtime and/or system-level dependencies that must be installed and maintained separately. For instance, a database is a good example of such dependencies.

description: This key contains a list of runtime dependencies that are distributed under an open-source license.

$ref: #/definitions/Dependency

description: This key contains a list of runtime dependencies that are distributed under a proprietary license.

description: This key contains a list of hardware dependencies that must be owned to use the software.

description: This section contains the keys for auto-declaring the compliance with the current legislation, with respect to the following sections. Not including these keys implies that the compliance is not known or not declared.

description: If present and set to yes, the software is compliant with the Italian accessibility laws (L. 4/2004), as further explained in the linee guida di design (Italian language).

description:
If present and set to yes, the software is compliant with the linee guida sull'interoperabilità.

Regulatory reference: Art. 73 del CAD (Italian language).

description: If present and set to yes, the software is compliant with the Misure minime di sicurezza ICT per le Pubbliche amministrazioni (Italian language).

description: If present and set to yes, the software interfaces with SPID - il Sistema Pubblico di Identità Digitale.

description: If present and set to yes, the software interfaces with the Italian electronic ID card (Carta di Identità Elettronica).

description: If present and set to yes, the software interfaces with ANPR.

description: If present and set to yes, the software interfaces with pagoPA.

description: This key represents the administration code inside the Public Administration index (codice IPA).

required: publiccodeYmlVersion name url releaseDate platforms categories developmentStatus softwareType description legal maintenance localisation

title: JSON schema for publiccode.yml


hadolint.json

title: JSON Schema for Hadolint, a Dockerfile linter tool

description: Dockerfile linter, validate inline bash, written in Haskell

type: object

type: boolean

description: Disable inline ignore pragmas `# hadolint ignore=DLxxxx`

type: string

description: A threshold controlling how severe a rule violation must be before the return code indicates failure.

const: error

description: Never return failure.

const: warning

description: Return failure if only rules of severity above `warning` are violated

const: info

description: Return failure if only rules of severity above `info` are violated

const: style

description: Return failure if only rules of severity above `style` are violated

const: ignore

description: Return failure if any rule is violated.

description: Return failure if any rule is violated.

enum: tty json checkstyle codeclimate gitlab_codeclimate gnu codacy

description: Output format

description: Strictly adhere to label-schem, don't allow additional labels.

description: A label-schema. See https://github.com/hadolint/hadolint#linting-labels for reference.

description: Don't colorize output.

description: Don't exit with a failure status code when any rule is violated.

type: array

description: A list of rules to be treated with "error" severity

$ref: #/properties/ignored/items

description: A list of rules to be treated with "warning" severity

description: A list of rules to be treated with "info" severity

description: A list of rules to be treated with "style" severity

description: A list of rules to be ignored

description: Use absolute WORKDIR.

description: For some bash commands it makes no sense running them in a Docker container like ssh, vim, shutdown, service, ps, free, top, kill, mount, ifconfig.

description: Last user should not be root.

description: Use WORKDIR to switch to a directory.

description: Do not use sudo as it leads to unpredictable behavior. Use a tool like gosu to enforce root.

description: Do not use apt-get upgrade or dist-upgrade.

description: Always tag the version of an image explicitly.

description: Using latest is prone to errors if the image will ever update. Pin the version explicitly to a release tag.

description: Pin versions in apt-get install.

description: Delete the apt-get lists after installing something.

description: Use ADD for extracting archives into an image.

description: Valid UNIX ports range from 0 to 65535.

description: Multiple `HEALTHCHECK` instructions.

description: Pin versions in pip.

description: Use the `-y` switch.

description: Avoid additional packages by specifying --no-install-recommends.

description: Pin versions in `npm`.

description: Pin versions in apk add. Instead of `apk add <package>` use `apk add <package>=<version>`.

description: Use the `--no-cache` switch to avoid the need to use `--update` and remove `/var/cache/apk/*` when done installing packages.

description: Use `COPY` instead of `ADD` for files and folders.

description: `COPY` with more than 2 arguments requires the last argument to end with `/`

description: `COPY --from` should reference a previously defined `FROM` alias

description: `COPY --from` cannot reference its own `FROM` alias

description: `FROM` aliases (stage names) must be unique

description: Use arguments JSON notation for CMD and ENTRYPOINT arguments

description: Use only an allowed registry in the FROM image

description: Do not use `apt` as it is meant to be an end-user tool, use `apt-get` or `apt-cache` instead

description: Pin versions in gem install. Instead of `gem install <gem>` use `gem install <gem>:<version>`

description: Do not use --platform flag with FROM.

description: Use the `-y` switch to avoid manual input `yum install -y <package>`

description: `yum clean all` missing after yum command.

description: Specify version with `yum install -y <package>-<version>`

description: Non-interactive switch missing from `zypper` command: `zypper install -y`

description: Do not use `zypper dist-upgrade`.

description: `zypper clean` missing after zypper use.

description: Specify version with `zypper install -y <package>[=]<version>`.

description: Use the `-y` switch to avoid manual input `dnf install -y <package>`

description: `dnf clean all` missing after dnf command.

description: Specify version with `dnf install -y <package>-<version>`

description: Avoid cache directory with `pip install --no-cache-dir <package>`.

description: `ONBUILD`, `FROM` or `MAINTAINER` triggered from within `ONBUILD` instruction.

description: Do not refer to an environment variable within the same `ENV` statement where it is defined.

description: `COPY` to a relative destination without `WORKDIR` set.

description: `useradd` without flag `-l` and high UID will result in excessively large Image.

description: `wget` without flag `--progress` will result in excessively bloated build logs when downloading larger files.

description: Invalid Label Key

description: Label `<label>` is missing.

description: Superfluous label(s) present.

description: Label `<label>` is empty.

description: Label `<label>` is not a valid URL.

description: Label `<label>` is not a valid time format - must conform to RFC3339.

description: Label `<label>` is not a valid SPDX license identifier.

description: Label `<label>` is not a valid git hash.

description: Label `<label>` does not conform to semantic versioning.

description: `HEALTHCHECK` instruction missing.

description: Label `<label>` is not a valid email format - must conform to RFC5322.

description: Multiple consecutive `RUN` instructions. Consider consolidation.

description: `yarn cache clean` missing after `yarn install` was run.

description: MAINTAINER is deprecated.

description: Either use Wget or Curl but not both.

description: Multiple `CMD` instructions found.

description: Multiple `ENTRYPOINT` instructions found.

description: Use `SHELL` to change the default shell.

description: Set the `SHELL` option -o pipefail before `RUN` with a pipe in it

description: `$` is not used specially and should therefore be escaped.

description: This `\c` will be a regular `'c'`  in this context.

description: Remove space after `=` if trying to assign a value (or for empty string, use `var='' ...`).

description: Use semicolon or linefeed before `done` (or quote to make it literal).

description: This is a unicode non-breaking space. Delete it and retype as space.

description: You need a space here

description: It's not `foo &; bar`, just `foo & bar`.

description: Trying to declare parameters? Don't. Use `()` and refer to params as `$1`, `$2` etc.

description: Don't use $ on the left side of assignments.

description: Don't put spaces around the `=` in assignments.

description: For command expansion, the tick should slant left (\` vs ´).

description: Did you forget to close this double-quoted string?

description: This is actually an end quote, but due to next char, it looks suspect.

description: Scripts are case sensitive. Use `if`, not `If`.

description: This `{/}` is literal. Check expression (missing `;/\n`?) or quote it.

description: Don't use `$` on the iterator name in for loops.

description: Braces are required when expanding arrays, as in `${array[idx]}`.

description: You need a space or linefeed between the function name and body.

description: Unexpected `==`. For assignment, use `=`. For comparison, use `[ .. ]` or `[[ .. ]]`.

description: Quote/escape special characters when using `eval`, e.g. `eval "a=(b)"`.

description: You need a space before the `#`.

description: Useless cat. Consider `cmd < file | ..` or `cmd file | ..` instead.

description: Note that `A && B || C` is not if-then-else. C may run when A is true.

description: This word is outside of quotes. Did you intend to 'nest '"'single quotes'"' instead'?

description: `echo` won't expand escape sequences. Consider `printf`.

description: Use `./*glob*` or `-- *glob*` so names with dashes won't become options.

description: In POSIX sh, something is undefined.

description: Quote this to prevent word splitting

description: Double quote to prevent globbing and word splitting.

description: Word is in the form `"A"B"C"` (B indicated). Did you mean `"ABC"` or `"A\"B\"C"`?

description: var is referenced but not assigned.

description: Declare and assign separately to avoid masking return values.

description: Use `cd ... || exit` in case `cd` fails.

description: In POSIX sh, 'source' in place of '.' is undefined.

description: A list of trusted registries. Ex: docker.io


monika-config-schema.json

type: integer

description: Number of times an alert should return true before Monika sends incident notifications

description: Number of times an alert should return false before Monika sends recovery notifications

title: Interval

description: The number of seconds to repeat the probe

title: Postgres

description: Monitor postgres readiness

title: URI connection

description: Postgres uri connection configuration

required: host port database

description: Postgres host address to connect to

title: Port

description: Postgres port to connect to

title: Database

description: Name of the database

title: Username

description: Username with access to the database

title: Password

description: User's database password

title: Redis

description: Monitor redis health

title: URI connection

description: redis uri connection configuration

required: host port

title: Redis host

description: The hostname or IP address of the redis server

title: Port number

description: Port number used for the redis

title: Password

description: Password used for the redis AUTH, if set.

title: Username

description: Username used for the redis AUTH, if set.

title: MongoDB

description: Monitor MongoDB health

title: MongoDB URI

description: The hostname or IP address of the MongoDB server

title: MongoDB host

title: Port number

description: Port number used for the MongoDB

title: Password

description: Password used for the MongoDB AUTH, if set.

title: Username

description: Username used for the MongoDB AUTH, if set.

title: MariaDB/Mysql

description: Monitor MariaDB/Mysql health

required: host port username password database

title: Database host

description: The hostname or IP address of the database server

title: Port number

description: Port number used by your database server

title: Username

description: User with access to the database

title: Password

description: User password for authentication

title: Database

default: Name of the database

title: Requests

description: The http or ping request to probe for

title: HTTP Method

description: The http method

enum: GET POST DELETE PUT PATCH

default: GET

title: Url

description: The remote URL address to probe

title: Timeout

description: Set the timeout for the request in milliseconds, default is 10 seconds

title: SaveBody

description: Should response body be saved in the database

$ref: #/definitions/alerts

title: Ping

description: If defined and to true, the request is an ICMP ping

title: AllowUnauthorized

description: If defined and to true, the request will ignore SSL certificate validity

$ref: #/definitions/body

$ref: #/definitions/headers

title: Socket

description: Socket is a TCP type request

required: host port data

description: Address to your host

title: Port

description: Host port to connect to

title: Data

description: Data payload for the request

title: Alerts

description: The condition which will trigger an alert and the subsequent notification

required: assertion message

title: Assertion

description: An expression that will trigger an alert when its is logically true. See the assertions here: https://monika.hyperjump.tech/guides/alerts#alert-query

default: response.status != 200

title: Message

description: Message that will be sent to the notification channel

default: Http Response status code is not 200!

required: query message

title: Query

description: Note: Query is deprecated, please use assertion

title: Message

title: Body

description: The data bytes transmitted in an HTTP transaction message immediately following the headers if there are any

title: Headers

description: A list of strings sent and received by both the client program and server on every HTTP request and response

description: Media type(s) that is/are acceptable for the response

description: Character sets that are acceptable

description: List of acceptable encodings

description: Authentication credentials for HTTP authentication

description: Used to specify directives that must be obeyed by all caching mechanisms along the request-response chain

description: An HTTP cookie previously sent by the server with Set-Cookie

description: General header that allows the sender or client to specify options that are desired for that particular connection

description: The Media type of the body of the request (used with POST and PUT requests

description: General header used to inform how long a persistent connection should stay open

description: Initiates a request for cross-origin resource sharing (asks server for Access-Control-* response fields)

description: This is the address of the previous web page (referrer) from which a link to the currently requested page was followed

description: The user agent string of the user agent

description: Monika monitoring configuration schema

title: Probes

description: Probe is a description of the target, methods, timing and payloads to begin monitoring/probing a target.

title: Id

description: Unique string identification of the probe

title: Name

description: A human-readible probe name

examples: get-user login-check web-heatlh-check

title: Description

description: Description of the probe

default: Ensure connectivity to github is successful

$ref: #/definitions/interval

$ref: #/definitions/postgres

$ref: #/definitions/redis

$ref: #/definitions/mongo

$ref: #/definitions/mariadb

$ref: #/definitions/requests

$ref: #/definitions/socket

$ref: #/definitions/incidentThreshold

$ref: #/definitions/recoveryThreshold

title: Notifications

description: Alerts of incidents and recoveries will be sent via these notification channels

title: Desktop

required: id type

description: Unique notification id

const: desktop

title: Discord

description: Unique notification id

description: Data for your payload

description: The URL of the Discord Webhook that will receive notification

title: Workplace

description: Unique notification id

description: Data for your payload

description: Thread id is the set of numbers at the end of the url

description: Workplace access token for custom integration

title: Google Chat

description: Unique notification id

description: Data for your payload

description: The webhook URL for your google chat

title: Lark

description: Unique notification id

description: Data for your payload

description: The webhook URL for your lark suite

title: Mailgun

description: Data for your payload

description: An array of email addresses that will receive the e-mail from Monika

description: Mailgun account API key, mailgun registered key to identify your account

description: The domain to set in Mailgun

title: Microsoft Teams

description: Unique notification id

description: Data for your payload

description: Your teams webhook URL

title: Monika Notification

description: Unique notification id

description: Data for your payload

description: Your Monika notification URL

title: Pagerduty

description: Unique pagerduty notif id

description: Data for your payload

description: Pagerduty integration key

description: Monika Probe ID

title: Sendgrid

description: Unique sendgrid notification id

description: Data for your payload

description: A string of email addresses that has been verified in your sendgrid account

description: Sendgrid account api key, sendgrid registered key to identify your account

title: Slack

description: Unique slack notification id

description: Data for your payload

description: The URL webhook for Slack

title: SMTP

description: Unique smtp notification id

description: Data for your payload

description: An array of email address that will receive the email from Monika

description: The smtp host that you will be using for sending the email

description: The port allowed to be used for sending mail in your host

description: Registered username on your smtp server

description: The password set for your username

title: Statuspage

description: Notification identity number

description: Data for your payload

description: Statuspage API key

description: Statuspage page ID

title: Telegram

description: Unique telegram notification id

description: Data for your payload

description: The ID of the group where the bot should send the messages

description: Token for your telegram bot

title: Webhook

description: Unique webhook notification id

description: Data for your payload

description: The URL of the server that will receive the webhook notification

title: WhatsApp for Business

description: Unique whatsapp notification id

description: Data for your payload

description: An array of phone numbers registered for WhatsApp, should start with your controu code number

description: Your WhatsApp API username

description: Your Whatsapp API user password

title: Dingtalk

description: Unique Dingtalk notification id

description: Data for your payload

description: the token of your Dingtalk account

title: Pushover

description: Unique Pushover notification id

description: Data for your payload

description: Pushover application token

description: Pushover user key

title: Gotify

description: Unique Gotify notification id

description: Data for your payload

description: Gotify application token

description: Gotify base url

title: Opsgenie

description: Unique opsgenie notification id

description: Data for your payload

description: Opsgenie application token

title: Pushbullet

description: Unique notification id

description: Data for your payload

description: Pushbullet application token.

description: Pushbullet device identifier (optional)

title: Instatus

description: The type of notification

description: Data for your payload

description: Instatus API key

description: Instatus Page ID

description: Database internal configuration

description: Maximum Monika database size

description: Delete strategy when limit reached

description: Schedule to trim the db in crontab

title: Status notification

description: Sends status notification periodically according to a cron schedule. Set to false to disable.

title: Certificate

description: Check validity of your TLS certificate(s).

description: The list of domains to check

description: Hostname to check

description: Custom HTTPs Options

description: The number of days to send notification to user before the domain expires


docfx.json

$ref: #/definitions/fileMappingContent

$ref: #/definitions/fileMappingResource

$ref: #/definitions/fileMappingOverwrite

$ref: #/definitions/xref

description: Contains metadata that will be applied to every file, in key-value pair format.

$ref: #/definitions/globalMetadataFiles

description: Contains metadata that will be applied to specific files.

$ref: #/definitions/fileMetadataFiles

$ref: #/definitions/template

$ref: #/definitions/theme

description: Force to re-process the documentation in post processors. It will be cascaded from force option.

description: Run in debug mode. With debug mode, raw model and view model will be exported automatically when it encounters error when applying templates. If not specified, it is false.

description: The output folder for files generated for debugging purpose when in debug mode. If not specified, it is ${TempPath}/docfx.

description: Specify the port of the hosted website.

description: If set to true, data model to run template script will be extracted in `.raw.json` extension.

description: Specify the output folder for the raw model. If not set, the raw model will be generated to the same folder as the output documentation.

description: If set to true, data model to apply template will be extracted in `.view.json` extension.

description: Specify the output folder for the view model. If not set, the view model will be generated to the same folder as the output documentation.

description: If set to true, template will not be actually applied to the documents. This option is always used with `--exportRawModel` or `--exportViewModel`, so that only raw model files or view model files are generated.

description: Set the max parallelism, 0 (default) is same as the count of CPU cores.

description: Set the LRU cached model count (approximately the same as the count of input files). By default, it is 8192 for 64bit and 3072 for 32bit process. With LRU cache enabled, memory usage decreases and time consumed increases. If set to 0, Lru cache is disabled.

description: Set the name of markdown engine, default is dfm, and another build-in engine is gfm.

description: Set the parameters for markdown engine.

description: Disable default lang keyword, e.g. `null`.

$ref: #/definitions/disableGitFeatures

description: If set to true, DocFX does not copy file to the output folder. Instead, it saves a link_to_path property inside manifest.json.

description: If set to true, cleans up historical cache data when building.

description: Build section defines configuration values for the build command.

$ref: #/definitions/metadataConfigItem

description: Metadata section defines an array of source projects and their output folder.

$ref: #/definitions/fileMappingSrc

description: Defines the output folder of the generated metadata files.

description: If set to true, disables default API visibility filter rule.

description: If set to true, it would disable incremental build.

description: If set to true, DocFX would not render triple-slash-comments in source code as markdown.

description: Defines the filter configuration file.

description: If set to true, DocFX would keep ` in comment id instead of replacing it with -.

required: src dest

$ref: #/definitions/fileMappingItem

description: Contains all the files to generate documentation, including metadata `yml` files and conceptual `md` files.

description: Contains all the resource files that conceptual and metadata files dependent on, e.g. image files.

description: Contains all the conceptual files which contains yaml header with `uid` and is intended to override the existing metadata `yml` files.

description: [Obsoleted] Contains `rpk` files that define the external references.

description: Defines the source projects to have metadata generated.

description: The name of current item, the value is not used for now.

$ref: #/definitions/files

$ref: #/definitions/exclude

description: Defines the root folder for the source files, it has the same meaning as `cwd`

description: [Obsoleted] Defines the root folder for the source files, it has the same meaning as `src`

description: The destination folder for the files if copy/transform is used.

description:
Version name for the current file-mapping item.
If not set, treat the current file-mapping item as in default version.
Mappings with the same version name will be built together.
Cross reference doesn't support cross different versions.

description:
The Root TOC Path used for navbar in current version, relative to output root.
If not set, will use the toc in output root in current version if exists.

description:
Pattern match will be case sensitive.
By default the pattern is case insensitive.

description:
Disable pattern begin with `!` to mean negate.
By default the usage is enabled.

description: Disable `{a,b}c` => `["ac", "bc"]`. By default the usage is enabled.

description:
Disable the usage of `\` to escape values.
By default the usage is enabled.

description:
Disable the usage of `**` to match everything including `/` when it is the beginning of the pattern or is after `/`.
By default the usage is enable.

description:
Allow files start with `.` to be matched even if `.` is not explicitly specified in the pattern.
By default files start with `.` will not be matched by `*` unless the pattern starts with `.`.

description: Specifies the urls of xrefmap used by content files. Currently, it supports following scheme: http, https, ftp, file, embedded.

description: Specify a list of JSON file path containing globalMetadata settings, as similar to `{"key":"value"}`.

description: Specify a list of JSON file path containing fileMetadata settings, as similar to `{"key":"value"}`.

description: The latter ones will override the former ones if the name of the file inside the template collides. If omitted, embedded default template will be used.

description: The themes applied to the documentation. Theme is used to customize the styles generated by `template`. It can be a string or an array. The latter ones will override the former ones if the name of the file inside the template collides. If omitted, no theme will be applied, the default theme inside the template will be used.

description: The file glob pattern collection, with path relative to property `src`/`cwd` if value is set.

description: The file glob pattern collection for files that should be excluded, with path relative to property `src`/`cwd` if value is set.

description: If set to true, DocFX would not fetch Git related information for articles.

title: DocFx configuration file


bashly.json

title: argument

description:
A positional argument of the current script or sub-command
https://bashly.dannyb.co/configuration/argument/

title: name

description:
A name of the current positional argument
https://bashly.dannyb.co/configuration/argument/#name

title: help

description:
A description of the current positional argument
https://bashly.dannyb.co/configuration/argument/#help

title: default

description:
A default value of the current positional argument
https://bashly.dannyb.co/configuration/argument/#default

title: required

description:
Whether the current positional argument is required
https://bashly.dannyb.co/configuration/argument/#required

title: allowed

description:
Valid values of the current positional argument
https://bashly.dannyb.co/configuration/argument/#allowed

description: A valid value of the current positional argument

title: repeatable

description:
Whether the current positional argument can be repeated
https://bashly.dannyb.co/configuration/argument/#repeatable

title: validate

description:
A validation function of the current positional argument
https://bashly.dannyb.co/configuration/argument/#validate

title: flag

description:
A flag of the current script or sub-command
https://bashly.dannyb.co/configuration/flag/

title: long

description:
A long form of the current flag
https://bashly.dannyb.co/configuration/flag/#long

title: short

description:
A short form of the current flag
https://bashly.dannyb.co/configuration/flag/#short

title: help

description:
A description of the current flag
https://bashly.dannyb.co/configuration/flag/#help

title: arg

description:
An argument name of the current flag
https://bashly.dannyb.co/configuration/flag/#arg

title: default

description:
A default value of the current flag
https://bashly.dannyb.co/configuration/flag/#default

title: required

description:
Whether the current flag is required
https://bashly.dannyb.co/configuration/flag/#required

title: allowed

description:
Valid values of the current flag
https://bashly.dannyb.co/configuration/flag/#allowed

title: conflicts

description:
Mutually exclusive flags of the current flag
https://bashly.dannyb.co/configuration/flag/#conflicts

description: A mutually exclusive flag of the current flag

title: completions

description:
Completions of the current flag
https://bashly.dannyb.co/configuration/flag/#completions

description: A completion of the current flag

title: private

description:
Whether the current flag is hidden from help
https://bashly.dannyb.co/configuration/flag/#private

title: repeatable

description:
Whether the current flag can be repeated
https://bashly.dannyb.co/configuration/flag/#repeatable

title: validate

description:
A validation function of the current flag
https://bashly.dannyb.co/configuration/flag/#validate

title: name

description:
A name of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#name

$comment: 'sub-command-' prefix is used as this property is marked with 'Sub-Commands Only' badge

title: alias

description:
An alias of the current sub-command
https://bashly.dannyb.co/configuration/command/#alias

description:
Aliases of the current sub-command
https://bashly.dannyb.co/configuration/command/#alias

description: An alias of the current sub-command

title: help

description:
A description of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#help

title: args

description:
Arguments of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#args

$ref: #/definitions/argument

title: flags

description:
Flags of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#flags

$ref: #/definitions/flag

title: commands

description:
Subcommands of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#commands

$ref: #/definitions/command-property

$comment: 'root-' prefix is used as this property is marked with 'Root Command Only' badge

title: version

description:
A version of the current script
https://bashly.dannyb.co/configuration/command/#version

title: default

description:
Whether to use the current command as a fallback when CLI used incorrectly
https://bashly.dannyb.co/configuration/command/#default

$comment: 'environment-variables-' prefix is used as this property is related to https://bashly.dannyb.co/configuration/environment-variable/#environment-variable

title: name

description:
A name of the current environment variable
https://bashly.dannyb.co/configuration/environment-variable/#name

title: help

description:
A description of the current environment variable
https://bashly.dannyb.co/configuration/environment-variable/#help

title: default

description:
A default value of the current environment variable
https://bashly.dannyb.co/configuration/environment-variable/#default

title: private

description:
Whether the current environment variable is hidden from help
https://bashly.dannyb.co/configuration/environment-variable/#private

title: required

description:
Whether the current environment variable is required
https://bashly.dannyb.co/configuration/environment-variable/#required

title: environment variables

description:
Environment variables of the current application
https://bashly.dannyb.co/configuration/environment-variable/#environment-variable

title: environment variable

description:
An environment variable of the current application
https://bashly.dannyb.co/configuration/environment-variable/#environment-variable

title: examples

description:
An example of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#examples

examples: cli upload profile.png -u admin -p s3cr3t

description:
Examples of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#examples

title: footer

description:
A description footer for the current script or sub-command
https://bashly.dannyb.co/configuration/command/#footer

examples: This will appear at the end of the --help message

title: group

description:
A group of the current sub-command
https://bashly.dannyb.co/configuration/command/#group

title: catch all

description:
Whether to allow additional arguments or flags for the current command
https://bashly.dannyb.co/configuration/command/#catch_all

examples: Additional arguments or flags for AWS CLI

description:
A label for the current argument or flag
https://bashly.dannyb.co/configuration/command/#catch_all

description:
A description for the current argument or flag
https://bashly.dannyb.co/configuration/command/#catch_all

description:
Whether the current argument or flag is required
https://bashly.dannyb.co/configuration/command/#catch_all

title: completions

description:
Completions of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#completions

description: A completion of the current script or sub-command

examples: <alias> <arrayvar> <binding> <builtin> <command> <directory> <disabled> <enabled> <export> <file> <function> <group> <helptopic> <hostname> <job> <keyword> <running> <service> <setopt> <shopt> <signal> <stopped> <user> <variable>

title: command

description:
Dependencies of the current script or sub-command
https://bashly.dannyb.co/configuration/dependency/#command

description:
A dependency of the current script or sub-command
https://bashly.dannyb.co/configuration/dependency/#command

title: help

description:
A help for the current dependency
https://bashly.dannyb.co/configuration/dependency/#help

title: dependencies

description:
Dependencies of the current script or sub-command
https://bashly.dannyb.co/configuration/dependency/#dependency

description:
A dependency of the current script or sub-command
https://bashly.dannyb.co/configuration/dependency/#dependency

title: expose

description:
Whether to expose the current sub-command if it has sub-commands
https://bashly.dannyb.co/configuration/command/#expose

title: extensible

description:
Whether to delegate the current unknown command to an external executable
https://bashly.dannyb.co/configuration/command/#extensible

title: filename

description:
A partial file path of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#filename

title: filters

description:
Filters of the current script or sub-command
https://bashly.dannyb.co/configuration/command/#filters

description: A filter of the current script or sub-command

title: function

description:
An internal function for the current script or sub-command
https://bashly.dannyb.co/configuration/command/#function

title: private

description:
Whether hide the current sub-command from help
https://bashly.dannyb.co/configuration/command/#private

title: import

description:
A file import for the current sub-command
https://bashly.dannyb.co/configuration/command/#import

title: command

description:
A command of the current application
https://bashly.dannyb.co/configuration/command/#command

$ref: #/definitions/name-property

$ref: #/definitions/help-property

$ref: #/definitions/args-property

$ref: #/definitions/flags-property

$ref: #/definitions/commands-property

$ref: #/definitions/examples-property

$ref: #/definitions/footer-property

$ref: #/definitions/catch-all-property

$ref: #/definitions/completions-property

$ref: #/definitions/dependencies-property

$ref: #/definitions/filename-property

$ref: #/definitions/filters-property

$ref: #/definitions/function-property

title: cli

description:
A CLI of the current application
https://bashly.dannyb.co/usage/getting-started/

$ref: #/definitions/root-version-property


backportrc.json

description: A Backport config schema

description:
A repo name for the current project
https://github.com/sqren/backport/blob/main/docs/config-file-options.md#reponame-required

description:
A repo owner for the current project
https://github.com/sqren/backport/blob/main/docs/config-file-options.md#repoowner-required

description:
Target branches for the current project
https://github.com/sqren/backport/blob/main/docs/config-file-options.md#targetbranchchoices-required

description:
A target branch for the current project
https://github.com/sqren/backport/blob/main/docs/config-file-options.md#targetbranchchoices-required

title: target branch

required: name checked

description:
Whether to pre-select a target branch for the current project
https://github.com/sqren/backport/blob/main/docs/config-file-options.md#targetbranchchoices-required

description: Identifier for the GitHub project as `{owner}/{repoName}`

description: Branches to backport to

description: Labels that will be added to the pull request

description: Whether to only show the current user's commits or commits from anyone

required: repoName repoOwner targetBranchChoices


composer-schema.json

title: Package

description: Package name, including 'vendor-name/' prefix.

description: Short package description.

type: string array

description: License name. Or an array of license names.

description: Package type, either 'library' for common packages, 'composer-plugin' for plugins, 'metapackage' for empty packages, or a custom type ([a-z0-9-]+) defined by whatever project this package applies to.

type: boolean string

description: Indicates whether this package has been abandoned, it can be boolean or a package name/URL pointing to a recommended alternative. Defaults to false.

description: Package version, see https://getcomposer.org/doc/04-schema.md#version for more info on valid schemes.

description: Internal use only, do not specify this in composer.json. Indicates whether this version is the default branch of the linked VCS repository. Defaults to false.

description: A set of string or regex patterns for non-numeric branch names that will not be handled as feature branches.

description: A tag/keyword that this package relates to.

description: Relative path to the readme document.

description: Package release date, in 'YYYY-MM-DD', 'YYYY-MM-DD HH:MM:SS' or 'YYYY-MM-DDTHH:MM:SSZ' format.

$ref: #/definitions/authors

description: Homepage URL for the project.

description: Email address for support.

description: URL to the issue tracker.

description: URL to the forum.

description: URL to the wiki.

description: IRC channel for support, as irc://server/channel.

description: URL to the support chat.

description: URL to browse or download the sources.

description: URL to the documentation.

description: URL to the RSS feed.

description: URL to the vulnerability disclosure policy (VDP).

description: A list of options to fund the development and maintenance of the package.

description: Type of funding or platform through which funding is possible.

description: URL to a website with details on funding and a way to fund the package.

$ref: #/definitions/source

$ref: #/definitions/dist

type: array string

description: A key to store comments in

description: This is an object of package name (keys) and version constraints (values) that are required to run this package.

description: This is an object of package name (keys) and version constraints (values) that this package requires for developing it (testing tools and such).

description: This is an object of package name (keys) and version constraints (values) that can be replaced by this package.

description: This is an object of package name (keys) and version constraints (values) that conflict with this package.

description: This is an object of package name (keys) and version constraints (values) that this package provides in addition to this package's name.

description: This is an object of package name (keys) and descriptions (values) that this package suggests work well with it (this will be suggested to the user during installation).

type: object array

description: A set of additional repositories where packages can be found.

$ref: #/definitions/repository

description: The minimum stability the packages must have to be install-able. Possible values are: dev, alpha, beta, RC, stable.

enum: dev alpha beta rc RC stable

description: If set to true, stable packages will be preferred to dev packages when possible, even if the minimum-stability allows unstable packages.

$ref: #/definitions/autoload

description: Description of additional autoload rules for development purpose (eg. a test suite).

description: This is an object of namespaces (keys) and the directories they can be found into (values, can be arrays of paths) by the autoloader.

description: This is an object of namespaces (keys) and the PSR-4 directories they can map to (values, can be arrays of paths) by the autoloader.

description: This is an array of paths that contain classes to be included in the class-map generation process.

description: This is an array of files that are always required on every request.

description: DEPRECATED: Forces the package to be installed into the given subdirectory path. This is used for autoloading PSR-0 packages that do not contain their full path. Use forward slashes for cross-platform compatibility.

description: DEPRECATED: A list of directories which should get added to PHP's include path. This is only present to support legacy projects, and all new code should preferably use autoloading.

description: A set of files, or a single file, that should be treated as binaries and symlinked into bin-dir (from config).

description: Options for creating package archives for distribution.

description: A base name for archive.

description: A list of patterns for paths to exclude or include if prefixed with an exclamation mark.

description: Composer options.

description: This is an object of package name (keys) and version (values) that will be used to mock the platform packages on this machine, the version can be set to false to make it appear like the package is not present.

type: string boolean

type: object boolean

description: This is an object of {"pattern": true|false} with packages which are allowed to be loaded as plugins, or true to allow all, false to allow none. Defaults to {} which prompts when an unknown plugin is added.

description: The timeout in seconds for process executions, defaults to 300 (5mins).

description: If true, the Composer autoloader will also look for classes in the PHP include path.

description: When running Composer in a directory where there is no composer.json, if there is one present in a directory above Composer will by default ask you whether you want to use that directory's composer.json instead. One of: true (always use parent if needed), false (never ask or use it) or "prompt" (ask every time), defaults to prompt.

type: string object

description: The install method Composer will prefer to use, defaults to auto and can be any of source, dist, auto, or an object of {"pattern": "preference"}.

description: Security audit configuration options

description: A set of advisory ids, remote ids or CVE ids that should be ignored and not reported as part of an audit.

description: Composer allows repositories to define a notification URL, so that they get notified whenever a package from that repository is installed. This option allows you to disable that behaviour, defaults to true.

description: A list of protocols to use for github.com clones, in priority order, defaults to ["https", "ssh", "git"].

description: An object of domain name => github API oauth tokens, typically {"github.com":"<token>"}.

description: An object of domain name => gitlab API oauth tokens, typically {"gitlab.com":{"expires-at":"<expiration date>", "refresh-token":"<refresh token>", "token":"<token>"}}.

description: The expiration date for this GitLab token

description: The refresh token used for GitLab authentication

description: The token used for GitLab authentication

description: An object of domain name => gitlab private tokens, typically {"gitlab.com":"<token>"}, or an object with username and token keys.

description: The username used for GitLab authentication

description: A protocol to force use of when creating a repository URL for the `source` value of the package metadata. One of `git` or `http`. By default, Composer will generate a git URL for private repositories and http one for public repos.

description: An object of domain name => bearer authentication token, for example {"example.com":"<token>"}.

description: Defaults to `false`. If set to true all HTTPS URLs will be tried with HTTP instead and no network level encryption is performed. Enabling this is a security risk and is NOT recommended. The better way is to enable the php_openssl extension in php.ini.

description: Defaults to `true`. If set to true only HTTPS URLs are allowed to be downloaded via Composer. If you really absolutely need HTTP access to something then you can disable it, but using "Let's Encrypt" to get a free SSL certificate is generally a better alternative.

description: A list of domains which should be trusted/marked as using a secure Subversion/SVN transport. By default svn:// protocol is seen as insecure and will throw. This is a better/safer alternative to disabling `secure-http` altogether.

description: A way to set the path to the openssl CA file. In PHP 5.6+ you should rather set this via openssl.cafile in php.ini, although PHP 5.6+ should be able to detect your system CA file automatically.

description: If cafile is not specified or if the certificate is not found there, the directory pointed to by capath is searched for a suitable certificate. capath must be a correctly hashed certificate directory.

description: An object of domain name => {"username": "...", "password": "..."}.

description: The username used for HTTP Basic authentication

description: The password used for HTTP Basic authentication

description: What to do after prompting for authentication, one of: true (store), false (do not store) or "prompt" (ask every time), defaults to prompt.

description: The location where all packages are installed, defaults to "vendor".

description: The location where all binaries are linked, defaults to "vendor/bin".

description: The location where old phar files are stored, defaults to "$home" except on XDG Base Directory compliant unixes.

description: The location where all caches are located, defaults to "~/.composer/cache" on *nix and "%LOCALAPPDATA%\Composer" on windows.

description: The location where files (zip downloads) are cached, defaults to "{$cache-dir}/files".

description: The location where repo (git/hg repo clones) are cached, defaults to "{$cache-dir}/repo".

description: The location where vcs infos (git clones, github api calls, etc. when reading vcs repos) are cached, defaults to "{$cache-dir}/vcs".

description: The default cache time-to-live, defaults to 15552000 (6 months).

description: The cache time-to-live for files, defaults to the value of cache-ttl.

description: The cache max size for the files cache, defaults to "300MiB".

description: Whether to use the Composer cache in read-only mode.

description: The compatibility of the binaries, defaults to "auto" (automatically guessed), can be "full" (compatible with both Windows and Unix-based systems) and "proxy" (only bash-style proxy).

description: The default style of handling dirty updates, defaults to false and can be any of true, false or "stash".

description: Optional string to be used as a suffix for the generated Composer autoloader. When null a random one will be generated.

description: Always optimize when dumping the autoloader.

description: If false, the composer autoloader will not be prepended to existing autoloaders, defaults to true.

description: If true, the composer autoloader will not scan the filesystem for classes that are not found in the class map, defaults to false.

description: If true, the Composer autoloader will check for APCu and use it to cache found/not-found classes when the extension is enabled, defaults to false.

description: A list of domains to use in github mode. This is used for GitHub Enterprise setups, defaults to ["github.com"].

description: Defaults to true. If set to false, the OAuth tokens created to access the github API will have a date instead of the machine hostname.

description: A list of domains to use in gitlab mode. This is used for custom GitLab setups, defaults to ["gitlab.com"].

description: An object of domain name => {"consumer-key": "...", "consumer-secret": "..."}.

description: The consumer-key used for OAuth authentication

description: The consumer-secret used for OAuth authentication

description: The OAuth token retrieved from Bitbucket's API, this is written by Composer and you should not set it nor modify it.

description: The generated token's expiration timestamp, this is written by Composer and you should not set it nor modify it.

description: Defaults to true.  If set to false, globally disables the use of the GitHub API for all GitHub repositories and clones the repository as it would for any other repository.

description: The default archiving format when not provided on cli, defaults to "tar".

description: The default archive path when not provided on cli, defaults to ".".

description: Defaults to true. If set to false, Composer will not create .htaccess files in the composer home, cache, and data directories.

description: Defaults to false. If set to true, Composer will sort packages when adding/updating a new dependency.

description: Defaults to true. If set to false, Composer will not create a composer.lock file.

description: Defaults to "php-only" which checks only the PHP version. Setting to true will also check the presence of required PHP extensions. If set to false, Composer will not create and require a platform_check.php file as part of the autoloader bootstrap.

description: Arbitrary extra data that can be used by plugins, for example, package of type composer-plugin may have a 'class' key defining an installer class name.

description: Script listeners that will be executed before/after some events.

description: Occurs before the install command is executed, contains one or more Class::method callables or shell commands.

description: Occurs after the install command is executed, contains one or more Class::method callables or shell commands.

description: Occurs before the update command is executed, contains one or more Class::method callables or shell commands.

description: Occurs after the update command is executed, contains one or more Class::method callables or shell commands.

description: Occurs before the status command is executed, contains one or more Class::method callables or shell commands.

description: Occurs after the status command is executed, contains one or more Class::method callables or shell commands.

description: Occurs before a package is installed, contains one or more Class::method callables or shell commands.

description: Occurs after a package is installed, contains one or more Class::method callables or shell commands.

description: Occurs before a package is updated, contains one or more Class::method callables or shell commands.

description: Occurs after a package is updated, contains one or more Class::method callables or shell commands.

description: Occurs before a package has been uninstalled, contains one or more Class::method callables or shell commands.

description: Occurs after a package has been uninstalled, contains one or more Class::method callables or shell commands.

description: Occurs before the autoloader is dumped, contains one or more Class::method callables or shell commands.

description: Occurs after the autoloader is dumped, contains one or more Class::method callables or shell commands.

description: Occurs after the root-package is installed, contains one or more Class::method callables or shell commands.

description: Occurs after the create-project command is executed, contains one or more Class::method callables or shell commands.

description: Descriptions for custom commands, shown in console help.

description: List of authors that contributed to the package. This is typically the main maintainers, not the full list.

description: Full name of the author.

description: Email address of the author.

description: Homepage URL for the author.

description: Author's role in the project.

description: Description of how the package can be autoloaded.

description: This is an object of namespaces (keys) and the directories they can be found in (values, can be arrays of paths) by the autoloader.

description: This is an array of patterns to exclude from autoload classmap generation. (e.g. "exclude-from-classmap": ["/test/", "/tests/", "/Tests/"]

enum: vcs github git gitlab bitbucket git-bitbucket hg fossil perforce svn


jasmine.json

$ref: #/definitions/root-items

$ref: #/definitions/env-items

description: Spec directory path relative to the current working dir when jasmine is executed.

description: Array of filepaths (and globs) relative to spec_dir to include and exclude.

description: Array of filepaths (and globs) relative to spec_dir to include before jasmine specs

description: Configuration of the Jasmine environment

description: Clean closures when a suite is done running (done by clearing the stored function reference). This prevents memory leaks, but you won't be able to run jasmine multiple times.

description: Whether to fail the spec if it ran no expectations. By default a spec that ran no expectations is reported as passed. Setting this to true will report such spec as a failure.

description: Whether or not reporters should hide disabled specs from their output. Currently only supported by Jasmine's HTMLReporter.

description: Whether to randomize spec execution order.

description: Seed to use as the basis of randomization. Null causes the seed to be determined randomly at the start of execution.

type: number

description: Whether to stop execution of the suite after the first spec failure.

description: Whether to cause specs to only have one expectation failure.

description: Whether or not to issue warnings for certain deprecated functionality every time it's used. If not set or set to false, deprecation warnings for methods that tend to be called frequently will be issued only once or otherwise throttled to to prevent the suite output from being flooded with warnings.

title: Schema for jasmine JSON config file


foundryvtt-base-package-manifest.json

format: regex

description: Relative path to a file, case sensitive.

format: uri-reference

$ref: #/definitions/File

description: A public URL.

description: Flag data.

description: The module will not function for versions earlier than this.

$ref: #/definitions/Version

description: The module has been verified to be compatible up to this version.

description: The module will not function for newer versions than this.

description: Dependency entries require the id attribute. If only an id is provided, additional details about the module will be discovered from the Foundry VTT website listing.

$ref: #/definitions/Identifier

description: The type attribute instructs FoundryVTT that the dependency may be on a different type of package. By default dependencies are assumed to be a module, so if you want to depend on a system or world you should be explicit.

default: module

enum: module system world

description: The manifest attribute provides an explicit manifest url to be used for downloading the dependency. If a manifest is not provided, the dependency package must exist in the Foundry website directory.

$ref: #/definitions/URL

description: As above, the compatibility of a dependency can be defined, ensuring that the dependency will not be installed if it does not meet the defined requirements.

$ref: #/definitions/PackageCompatibility

description: (undocumented, intended to be used by core Foundry in the future)

$ref: #/definitions/NonBlankString

$ref: #/definitions/Flags

description: Choose a unique package identifier. This must be an all lower-case string with no special characters and should use hyphens (not underscores) to separate multiple terms. This name must match exactly with the name of the parent directory within which you create the package.

deprecationMessage: Use id instead. Deprecated since V10.

description: Provide a human readable title for the package which is displayed as the visible name for the package in the Setup menu and elsewhere.

examples:
Simple World-Building
Unfulfilled Rolls

description: This field can contain a more lengthy description of the package. This text can be used to describe the functionality, list contact information, provide recommendations to contributors or testers, or any other information you feel is important to provide. This field can contain HTML to structure and style your text. For a system, this is also a good place to include any special licensing or attribution information that you need to distribute.

examples: A minimalist game system which provides configurable Actor and Item templates to support free-form system agnostic game-play.

examples: A module to integrate World Anvil with Foundry Virtual Tabletop.

deprecationMessage: Use authors instead. Deprecated since V10.

description: An array listing each author as an object that contains a name and potentially some contact details.

description: The only required field for an author.  This can be your username, your full name, etc.

description: (Manifest+ field)

description: (Manifest+ field)

description: (Manifest+ field)

description: (Manifest+ field)

description: A public URL that links to the repository or documentation pages for the package. This link will be displayed for users to allow them to find more information about your package. If your package is hosted in version control like GitHub or GitLab, linking to the repository in this field is a good choice.

description: A path to a license file relative to the root package folder or a publicly accessible URL which contains the software license that applies to this package.

description: A path to a read-me file relative to the root package folder or a publicly accessible URL which contains instructions or information about the package.

description: A publicly accessible URL where issues, suggestions, and bug reports may be filed.

description: A publicly accessible URL where update and release notes about the package may be found.

description: The package version number can be a number or a string which denotes the version of your module/system/world. When making changes to your package, incrementing the version number in your manifest file is used to signal to users that an update is available. We discuss some supported options for versioning in the Introduction to Development article.

description: The compatibility field is an object key for capturing the sub-fields which defines the limits of your package's compatibility based on Foundry Virtual Tabletop version.

deprecationMessage: Use compatibility.minimum instead. Deprecated since V10.

deprecationMessage: Use compatibility.verified instead. Deprecated since V10.

description: A less common way of including Javascript with the increasing adoption of ESModules, this field allows you to define an array of JavaScript file paths which should be included whenever this package is being used. Each listed script path should be relative to the package root directory. All scripts which exist will be automatically included in the game session and loaded in their listed order.

$ref: #/definitions/FileArray

description: The preferred method for including Javascript with your project. This field allows you to define an array of JS files which use the newer ES6 modules specification. As with scripts, this should be declared as an array. These files are identified separately in the manifest so they may be correctly loaded as a module rather than a script.

description: You can designate an array of CSS files which should be included in the game session whenever this package is used. Each listed stylesheet path should be relative to the package root directory. All stylesheets which exist will be automatically included in the game session and loaded in their listed order.

description: A list of localization files that Foundry can use to translate strings.

description: The language definition

description: A language code in lower-case letters, for example "en" for English. See https://en.wikipedia.org/wiki/List_of_ISO_639-2_codes

examples: en fr de zh-tw

description: The formal and readable name for the language, for example "English".

examples:
English
Français
Deutsch
简体中文（Simplified Chinese）

description: A path relative to the root directory of the manifest where localization strings are provided in JSON format.

description: (undocumented)

description: (undocumented)

required: lang path

description: Packages may come bundled with Compendium packs which include game content for various Document types. Compendium packs are defined as objects which have their own internal metadata structure.

description: The definition of a Compendium pack.

description: Name of the Compendium pack. This should be a lowercase string with no special characters other than hyphens.

examples: abomination-vaults-bestiary fxmaster

description: Human readable label of the Compendium pack. This is displayed in the Compendium sidebar.

examples:
TokenMagic Portfolio
Premade Items

description: The relative path to the Compendium .db file. Best practice is to put these in the /packs subdirectory. Required until V11; afterwards, can be omitted if pack resides in `package-id/packs/`.

description: (undocumented, will hide pack from non-GMs)

description: Each Compendium pack must designate which type of Entity it contains.

enum: Actor Cards Adventure Item Journal JournalEntry Macro Playlist RollTable Table Scene

deprecationMessage: Use type instead. Deprecated since V9.

description: The id of the system/s the Compendium pack is created for. This ensures Foundry knows this Compendium only works for that system. This may be a string or an array of strings. Important: Actor, Item, and Adventure compendium packs MUST define a system field.

required: name label path type

description: Packages can require modules, systems, or worlds be installed to allow their use. If a package has been installed with dependencies, but its dependencies are missing, it cannot be enabled.

description: Will only allow the package to activated within Worlds which are running one of these systems and with a compatible version.

$ref: #/definitions/PackageRelationship

deprecationMessage: Use relationships instead. Deprecated since V10.

description: The definition of a dependency package.

description: ID of the package this package depends on.

description: The type of dependency.

description: Provides an explicit URL to the dependency's manifest to be able to install the package. If not provided, Foundry will check the website package list.

description: A package may request for a specialized socket namespace to be provided. If set to true, a socket event will be handled by the server with the name `system.${id}` (for a system) or `module.${id}` (for a module), and will transact a arbitrary data object by broadcasting that data to all connected clients. This allows the package to have a reserved channel for messaging events which are needed to coordinate actions across multiple connected clients.

description: A stable URL that describes the latest release version of your manifest file. This URL is used for automatic system installation in the Foundry VTT setup screen. This manifest URL is consulted during the system/module update check to see whether a new version is available for download. It is important that this address remain stable, otherwise updates will not be detected.

description: A public URL that provides a zip archive of the package for the manifest version which points to it. The archive at this URL is retrieved during the installation or update process. If you are using version control for your package - it is recommended to manage download archives using the tags and releases features which are supported by most git repositories.

description: (undocumented, used for premium packages)

description: (undocumented)

description: (intended to be used by core Foundry in the future, see Module Sub-Types article)

description: (Manifest+ field)

description: (Manifest+ field)

description: (Manifest+ field)

description: (Manifest+ field)

title: JSON schema for Foundry VTT manifest files - module.json, system.json, or world.json.  This is the base from which others inherit.


webjobs-list.json

description: A list of Azure Webjobs.

title: JSON schema for Azure Webjobs collection files


schema-versions.json

title: All Versions of the Common Catalog Schema

description: This is the fallback to the latest version (the first one in this schema) in case no version is specified.


hammerkit.json

title: environment variables

description:
Environment values for the current build task
https://no0dles.gitbook.io/hammerkit/build-file/environment-variables

description: environment variable

title: tasks

description:
Task for the current build file
https://no0dles.gitbook.io/hammerkit/task

$ref: #/definitions/task

title: services

description:
Services for the current build file
https://no0dles.gitbook.io/hammerkit/service

$ref: #/definitions/service

title: includes

description:
Includes to other build files
https://no0dles.gitbook.io/hammerkit/build-file/includes

title: references

description:
References to other build files
https://no0dles.gitbook.io/hammerkit/build-file/references

title: task

$ref: #/definitions/containerTask

$ref: #/definitions/localTask

title: local task

description: Task that gets executed in the local shell in the current directory

$ref: #/definitions/taskCommand

$ref: #/definitions/taskLabels

$ref: #/definitions/taskExtend

$ref: #/definitions/taskCache

$ref: #/definitions/taskContinuous

$ref: #/definitions/taskEnvs

$ref: #/definitions/taskNeeds

$ref: #/definitions/taskDeps

$ref: #/definitions/taskSrc

$ref: #/definitions/taskGenerates

description: Commands for the current task

title: container task

description:
Container task for the current build file
https://no0dles.gitbook.io/hammerkit/task/container

required: image cmds

description: Commands for the current task

title: task shell

description: Define which shell is used to execute the commands

title: task image

description: Container image for the current task to run commands in

description: <localPort>:<targetPort>

description:
File paths that get mounted into the container
https://no0dles.gitbook.io/hammerkit/task/container#adding-mounts

title: command

description: Command to be executed for the current task

title: task command with path extension

description: Command to be executed in sub directory for the current task

title: command

description: Command to be executed for the task

title: command path

description: Path below build file path

description: Description for the current task

description:
Extension task as a base template
https://no0dles.gitbook.io/hammerkit/task/extending

description:
compare type for detecting changes in source files
https://no0dles.gitbook.io/hammerkit/task/caching

enum: checksum modify-date none

description:
The task runs continuous and does not end without cancellation
https://no0dles.gitbook.io/hammerkit/task/watching#continuous-tasks

title: label options

description:
A map of label values for the current task
https://no0dles.gitbook.io/hammerkit/labels

description: label value

title: task environment variables

description:
Environment values for the current build file
https://no0dles.gitbook.io/hammerkit/build-file/environment-variables

description: environment value

description:
Service needs that need to get ready before the current task
https://no0dles.gitbook.io/hammerkit/task/needs

description:
Task dependencies that get executed before the current task
https://no0dles.gitbook.io/hammerkit/task/dependencies

description:
Source files and folders for the current task
https://no0dles.gitbook.io/hammerkit/task#source

description:
Generated files and folders for the current task

https://no0dles.gitbook.io/hammerkit/task#generate

title: service

description: A daemon in the background

$ref: #/definitions/containerService

$ref: #/definitions/kubernetesService

title: kubernetes service

description:
Kubernetes service for the current build file
https://no0dles.gitbook.io/hammerkit/service/kubernetes

required: context selector ports

description:
Kube config for the current service
https://no0dles.gitbook.io/hammerkit/service/kubernetes#config

description:
Kubernetes context for the current service
https://no0dles.gitbook.io/hammerkit/service/kubernetes#config

description: A list of ports that get exposed on the host from the service <localPort>:<targetPort>

description: <localPort>:<targetPort>

title: service selector

description:
Selector to specify which resource gets forwarded to
https://no0dles.gitbook.io/hammerkit/service/kubernetes

required: type name

description: resource type for the current service

enum: deployment service pod

description: resource name for the kubernetes resource

title: container service

description:
Container service for the current build file
https://no0dles.gitbook.io/hammerkit/service/kubernetes

title: label options

description:
A map of label values for the current service
https://no0dles.gitbook.io/hammerkit/labels

title: service environment variables

description:
Environment values for the current service
https://no0dles.gitbook.io/hammerkit/build-file/environment-variables

description: environment value

title: service healthcheck

description:
Check to detect if the service is started and ready
https://no0dles.gitbook.io/hammerkit/service/container#healthcheck

description: task to check if the service is healthy

description: Container image for the current service to run commands in

description:
A list of ports that get exposed on the host from the container <localPort>:<targetPort>
https://no0dles.gitbook.io/hammerkit/service/container#mounts

description: <localPort>:<targetPort>

description:
A list of volumes that get attached to the container <name>:<containerPath>
https://no0dles.gitbook.io/hammerkit/service/container#mounts

description: <name>:<containerPath>

description:
File paths that get mounted into the container <localPath>:<containerPath>
https://no0dles.gitbook.io/hammerkit/service/container#mounts

description: <localPath>:<containerPath>

description:
Build tool with support for containerization
https://no0dles.gitbook.io/hammerkit/build-file

$ref: #/definitions/buildFileEnvs

$ref: #/definitions/buildFileTasks

$ref: #/definitions/buildFileServices

$ref: #/definitions/buildFileIncludes

$ref: #/definitions/buildFileReferences

title: JSON Schema for hammerkit's build file