Tracks that are at least one hour long will have two colons so this commit should check whether there are one or two colons in the timestamp, and then calculate the seconds based on that, so as to not ignore seconds when the track exceeds an hour.
* Heading images and donation buttons are now centered.
* Improved tables
* System support more infromative now.
* Part of donation options are hidden now.
* Some improvements in code.
In the interest of fostering an open and welcoming environment, we as contributors and maintainers pledge to making participation in our project and our community a harassment-free experience for everyone, regardless of age, body size, disability, ethnicity, sex characteristics, gender identity and expression, level of experience, education, socio-economic status, nationality, personal appearance, race, religion, or sexual identity and orientation.
## Our Standards
Examples of behavior that contributes to creating a positive environment include:
- Using welcoming and inclusive language
- Being respectful of differing viewpoints and experiences
- Gracefully accepting constructive criticism
- Focusing on what is best for the community
- Showing empathy towards other community members
Examples of unacceptable behavior by participants include:
- The use of sexualized language or imagery and unwelcome sexual attention or advances
- Trolling, insulting/derogatory comments, and personal or political attacks
- Public or private harassment
- Publishing others' private information, such as a physical or electronic address, without explicit permission
- Other conduct which could reasonably be considered inappropriate in a professional setting
## Our Responsibilities
Project maintainers are responsible for clarifying the standards of acceptable behavior and are expected to take appropriate and fair corrective action in response to any instances of unacceptable behavior.
Project maintainers have the right and responsibility to remove, edit, or reject comments, commits, code, wiki edits, issues, and other contributions that are not aligned to this Code of Conduct, or to ban temporarily or permanently any contributor for other behaviors that they deem inappropriate, threatening, offensive, or harmful.
## Scope
This Code of Conduct applies both within project spaces and in public spaces when an individual is representing the project or its community. Examples of representing a project or community include using an official project e-mail address, posting via an official social media account, or acting as an appointed representative at an online or offline event. Representation of a project may be further defined and clarified by project maintainers.
## Enforcement
Instances of abusive, harassing, or otherwise unacceptable behavior may be reported by contacting the project team at contact@premid.app or by contacting a staff member on our [Discord server](https://discord.premid.app). All complaints will be reviewed and investigated and will result in a response that is deemed necessary and appropriate to the circumstances. The project team is obligated to maintain confidentiality with regard to the reporter of an incident. Further details of specific enforcement policies may be posted separately.
Project maintainers who do not follow or enforce the Code of Conduct in good faith may face temporary or permanent repercussions as determined by other members of the project's leadership.
PreMiD is a simple, configurable utility that lets you show what you're doing on the web in your Discord profile. Whether you're watching videos, listening to music, browsing your favorite sites, or playing browser games, PreMiD helps you share your online activities with your friends through Discord's Rich Presence feature.
# Table of contents
## Getting Started
- [Features](#features)
- [Support](#support)
- [Installation](#installation)
- [Installing the Extension](#installing-the-extension)
- Chrome
- Opera
- [Installing the Application](#installing-the-application)
- Mac OS
- Windows
- [FAQ](#faq-·-frequently-asked-questions)
- Is this project up to date?
- Will this project stay free?
**Looking to use PreMiD?** Head over to our [official website](https://premid.app) to add the browser extension!
# Features
**Want to create your own Activity?** All of our community-created activities are open source and available at [github.com/PreMiD/Activities](https://github.com/PreMiD/Activities). We'd love to see what you create!
- Discord Rich Presence Integration
- Media control keys
- Automatically clears Presence after 1 minute of inactivity
- _More soon_
## Features
# Support
- 🎵 Show what you're listening to on YouTube and more (Spotify has native Discord support)
- 📺 Display what you're watching on Netflix, Disney+, Twitch, and hundreds of other sites
- 🎮 Share your browser game activity with friends
- ✨ Fully customizable with thousands of user-created Activities
- 🌍 Available in multiple languages thanks to our amazing community translators
### **Operating Systems**
## Community
- Windows
- Mac OS
PreMiD is built by the community, for the community. Join us and help make PreMiD even better!
We love community contributions! While **PreMiD's Activities are fully open source** (the code that makes websites show up on your profile), the PreMiD extension is not currently open source. This decision allows our small team to move fast and iterate quickly to deliver the best experience possible.
## Extension
You can contribute by:
<details>
<summary><b><u>Installing the Chrome extension</u></b> (Click to expand)</summary>
<li>Install the <a href="#installing-the-application">application</a></li>
</ol>
</details>
<details>
<summary><b><u>Installing the Opera extension</u></b> (Click to expand)</summary>
<h1>Opera extension installation</h1>
<ol>
<li>Download the latest version of the <a href="https://github.com/Timeraa/YT-Presence/releases/latest">extension</a>
</li>
<li>Extract the downloaded <b>.zip</b> file</li>
<li>Open Opera</li>
<li>Go to <a href="chrome://extensions/">chrome://extensions/</a></li>
<li>Drag and drop the extension's folder on the page<br>
<li>Load the extracted <b>Extension</b> folder</li>
<li>Install the <a href="#installing-the-application">application</a></li>
</ol>
</details>
- Creating new Activities at [github.com/PreMiD/Activities](https://github.com/PreMiD/Activities)
- Helping translate PreMiD on [Crowdin](https://crowdin.com/project/premid)
- Reporting bugs and suggesting features at [feedback.premid.app](https://feedback.premid.app)
- Supporting the project and spreading the word!
## Application
### Release
<details>
<summary><b><u>Mac OS</u></b> (Click to expand)</summary>
<h1>Installation on Mac OS</h1>
<ol>
<li>Download the latest version of the <a href="https://github.com/Timeraa/YT-Presence/releases/latest">application</a>
</li>
<li>Open the downloaded <b>.dmg</b> file</li>
<li>Drag <b>YT Presence</b> Into your <b>Applications</b> Folder</li>
<li>Open your Launchpad</li>
<li>Open <b>YT Presence</b></li>
<li>Install Extension if not already</li>
</ol>
</details>
To release a new version of a package, run the following command:
<details>
<summary><b><u>Windows</u></b> (Click to expand)</summary>
<h1>Installation on Windows</h1>
<ol>
<li>Download the latest installer from <a href="https://github.com/Timeraa/YT-Presence/releases/">here</a></li>
<li>Open the downloaded <b>.exe</b> installer</li>
<li>If SmartScreen comes up press more informations then press run anyways. (Its not a virus, i promise)</li>
<li>YouTube Presence should install itself and start automatically (You can tell by looking at the taskbar)</li>
<li>Install Extension if not already</li>
</ol>
</details>
<br>
```bash
cd apps/<app>
pnpm bumpp -y -t <app>-v
```
# FAQ · Frequently Asked Questions
Replace `<app>` with the name of the package you want to release. For example, to release a new version of the `schema-server` package, you would run:
> ## Is this project still up to date?<br>
```bash
cd apps/schema-server
pnpm bumpp -y -t schema-server-v
```
- Yes! I use and work on this program and extension almost everyday!<br>There are currently no plans on discontinuing this Project.
This will use bumpp to bump the version of the package in the `package.json` file, create a tag for the new version, and push the changes to the remote repository.
> ## Will this project stay free?<br>
## License
- Of course! Its open source! But i would highly appreciate a little bit of Money it helps me for my Future, like a **Driving license**. <br><br><a href="https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=ZU8Q766ACS2WS&lc=US">Donate here</a>
---
### YT Presence V1.1 · By Timeraa
This project is licensed under the [MPL-2.0 License](LICENSE).
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"pattern":"^[a-z]{2}(_[A-Z]{2})?$"
},
"patternProperties":{
"^[a-z]{2}(_[A-Z]{2})?$":{
"type":"string",
"description":"The description of the presence in the key's language."
}
},
"additionalProperties":false,
"required":["en"]
},
"url":{
"type":["string","array"],
"description":"The service's website URL, or an array of URLs. Protocols should not be added.",
"description":"Whether or not the presence should run in IFrames."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"pattern":"^fa[bs] fa-[0-9a-z-]+$"
},
"if":{
"type":"object",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"pattern":"^[a-z]{2}(_[A-Z]{2})?$"
},
"patternProperties":{
"^[a-z]{2}(_[A-Z]{2})?$":{
"type":"string",
"description":"The description of the presence in the key's language."
}
},
"additionalProperties":false,
"required":["en"]
},
"url":{
"type":["string","array"],
"description":"The service's website URL, or an array of URLs. Protocols should not be added.",
"description":"Whether or not the presence should run in IFrames."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"pattern":"^fa[bs] fa-[0-9a-z-]+$"
},
"if":{
"type":"object",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"description":"Whether or not the presence should run in IFrames."
},
"readLogs":{
"type":"boolean",
"description":"Whether or not the extension should be reading logs."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"matches":{
"type":"array",
"description":"A glob pattern required to match Google's match pattern (https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns). This is required for Presences.",
"items":{
"type":"string",
"description":"A glob pattern.",
"pattern":"^(https|http|[*])://.*/.*"
}
},
"iFrameMatches":{
"type":"array",
"description":"A glob pattern required to match Google's match pattern (https://developer.chrome.com/docs/extensions/develop/concepts/match-patterns). This is required for Presences.",
"items":{
"type":"string",
"description":"A glob pattern.",
"pattern":"^(https|http|[*])://.*/.*"
}
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":[
"name",
"id"
]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":[
"string",
"number",
"boolean"
],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":[
"string",
"number",
"boolean"
],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":[
"string",
"number",
"boolean"
],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":[
"string",
"boolean",
"array"
],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":[
"name",
"id"
]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"description":"Metadata that describes a activity.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":[
"name",
"id"
]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this activity."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this activity.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this activity is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the activity in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(-regioncode).",
"description":"Metadata that describes a activity.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":[
"name",
"id"
]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this activity."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this activity.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this activity is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the activity in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(-regioncode).",
"description":"Metadata that describes a activity.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":[
"name",
"id"
]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this activity."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this activity.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this activity is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the activity in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(-regioncode).",
"description":"Metadata that describes an activity.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":[
"name",
"id"
]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this activity."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this activity.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this activity is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the activity in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key in the format: languagecode or languagecode-regioncode.",
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"pattern":"^[a-z]{2}(_[A-Z]{2})?$"
},
"patternProperties":{
"^[a-z]{2}(_[A-Z]{2})?$":{
"type":"string",
"description":"The description of the presence in the key's language."
}
},
"additionalProperties":false,
"required":["en"]
},
"url":{
"type":["string","array"],
"description":"The service's website URL, or an array of URLs. Protocols should not be added.",
"description":"Whether or not the presence should run in IFrames."
},
"readLogs":{
"type":"boolean",
"description":"Whether or not the extension should be reading logs."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"pattern":"^fa[bs] fa-[0-9a-z-]+$"
},
"if":{
"type":"object",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"pattern":"^[a-z]{2}(_[A-Z]{2})?$"
},
"patternProperties":{
"^[a-z]{2}(_[A-Z]{2})?$":{
"type":"string",
"description":"The description of the presence in the key's language."
}
},
"additionalProperties":false,
"required":["en"]
},
"url":{
"type":["string","array"],
"description":"The service's website URL, or an array of URLs. Protocols should not be added.",
"description":"Whether or not the presence should run in IFrames."
},
"readLogs":{
"type":"boolean",
"description":"Whether or not the extension should be reading logs."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"pattern":"^fa[bsd] fa-[0-9a-z-]+$"
},
"if":{
"type":"object",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"pattern":"^[a-z]{2}(_[A-Z]{2})?$"
},
"patternProperties":{
"^[a-z]{2}(_[A-Z]{2})?$":{
"type":"string",
"description":"The description of the presence in the key's language."
}
},
"additionalProperties":false,
"required":["en"]
},
"url":{
"type":["string","array"],
"description":"The service's website URL, or an array of URLs. Protocols should not be added.",
"description":"Whether or not the presence should run in IFrames."
},
"readLogs":{
"type":"boolean",
"description":"Whether or not the extension should be reading logs."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"pattern":"^fa[bsd] fa-[0-9a-z-]+$"
},
"if":{
"type":"object",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"pattern":"^[a-z]{2}(_[A-Z]{2})?$"
},
"patternProperties":{
"^[a-z]{2}(_[A-Z]{2})?$":{
"type":"string",
"description":"The description of the presence in the key's language."
}
},
"additionalProperties":false,
"required":["en"]
},
"url":{
"type":["string","array"],
"description":"The service's website URL, or an array of URLs. Protocols should not be added.",
"description":"Whether or not the presence should run in IFrames."
},
"readLogs":{
"type":"boolean",
"description":"Whether or not the extension should be reading logs."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"pattern":"^fa[bsd] fa-[0-9a-z-]+$"
},
"if":{
"type":"object",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"description":"Whether or not the presence should run in IFrames."
},
"readLogs":{
"type":"boolean",
"description":"Whether or not the extension should be reading logs."
},
"regExp":{
"type":"string",
"description":"A regular expression used to match URLs for the presence to inject into."
},
"iFrameRegExp":{
"type":"string",
"description":"A regular expression used to match IFrames for the presence to inject into."
},
"button":{
"type":"boolean",
"description":"Controls whether the presence is automatically added when the extension is installed. For partner presences only."
},
"warning":{
"type":"boolean",
"description":"Shows a warning saying that it requires additional steps for the presence to function correctly."
},
"settings":{
"type":"array",
"description":"An array of settings the user can change in the presence.",
"items":{
"type":"object",
"description":"A setting.",
"properties":{
"id":{
"type":"string",
"description":"The ID of the setting."
},
"title":{
"type":"string",
"description":"The title of the setting. Required only if `multiLanguage` is disabled."
},
"icon":{
"type":"string",
"description":"The icon of the setting. Required only if `multiLanguage` is disabled.",
"pattern":"^fa[bsd] fa-[0-9a-z-]+$"
},
"if":{
"type":"object",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"Metadata that describes a presence.",
"definitions":{
"user":{
"type":"object",
"description":"User information.",
"properties":{
"name":{
"type":"string",
"description":"The name of the user."
},
"id":{
"type":"string",
"description":"The Discord snowflake of the user.",
"pattern":"^\\d+$"
}
},
"additionalProperties":false,
"required":["name","id"]
}
},
"properties":{
"$schema":{
"$comment":"This is required otherwise the schema will fail itself when it is applied to a document via $schema. This is optional so that validators that use this schema don't fail if the metadata doesn't have the $schema property.",
"type":"string",
"description":"The metadata schema URL."
},
"author":{
"$ref":"#/definitions/user",
"description":"The author of this presence."
},
"contributors":{
"type":"array",
"description":"Any extra contributors to this presence.",
"items":{
"$ref":"#/definitions/user"
}
},
"service":{
"type":"string",
"description":"The service this presence is for."
},
"altnames":{
"type":"array",
"description":"Alternative names for the service.",
"items":{
"type":"string",
"description":"An alternative name."
},
"minItems":1
},
"description":{
"type":"object",
"description":"A description of the presence in multiple languages.",
"propertyNames":{
"type":"string",
"description":"The language key. The key must be languagecode(_REGIONCODE).",
"description":"Restrict showing this setting if another setting is the defined value.",
"propertyNames":{
"type":"string",
"description":"The ID of the setting."
},
"patternProperties":{
"":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"additionalProperties":false
},
"placeholder":{
"type":"string",
"description":"The placeholder for settings that require input. Shown when the input is empty."
},
"value":{
"type":["string","number","boolean"],
"description":"The default value of the setting. Not compatible with `values`."
},
"values":{
"type":"array",
"description":"The default values of the setting. Not compatible with `value`.",
"items":{
"type":["string","number","boolean"],
"description":"The value of the setting."
}
},
"multiLanguage":{
"type":["string","boolean","array"],
"description":"When false, multi-localization is disabled. When true, strings from the `general.json` file are available for use. When a string, it is the name of a file (excluding .json) of a used language from the localization GitHub repo. When an array of strings, it is all of the file names (excluding .json) of used languages from the localization GitHub repo.",
"items":{
"type":"string",
"description":"The name of a file from the localization GitHub repository."
"description":"YT Presence adds cool Features to YouTube/YouTube Music. Like for example Discord Rich Presence integration, Media controls and much more.",
Some files were not shown because too many files have changed in this diff
Show More
Reference in New Issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.