From d7b6830fbb090b0782a86d842462452c0ccad329 Mon Sep 17 00:00:00 2001 From: Prospector <6166773+Prospector@users.noreply.github.com> Date: Fri, 31 Jul 2026 15:29:04 -0700 Subject: [PATCH 01/69] begin project disclosures --- packages/assets/generated-icons.ts | 8 ++ packages/assets/icons/circle-dollar-sign.svg | 17 ++++ packages/assets/icons/git-fork.svg | 19 ++++ packages/assets/icons/megaphone.svg | 17 ++++ packages/assets/icons/radio-tower.svg | 21 ++++ .../project/ProjectSidebarDetails.vue | 97 ++++++++++++++++++- packages/ui/src/locales/en-US/index.json | 15 +++ 7 files changed, 192 insertions(+), 2 deletions(-) create mode 100644 packages/assets/icons/circle-dollar-sign.svg create mode 100644 packages/assets/icons/git-fork.svg create mode 100644 packages/assets/icons/megaphone.svg create mode 100644 packages/assets/icons/radio-tower.svg diff --git a/packages/assets/generated-icons.ts b/packages/assets/generated-icons.ts index 0b524d52ad..033b1e7559 100644 --- a/packages/assets/generated-icons.ts +++ b/packages/assets/generated-icons.ts @@ -80,6 +80,7 @@ import _ChevronUpIcon from './icons/chevron-up.svg?component' import _CircleAlertIcon from './icons/circle-alert.svg?component' import _CircleArrowRightIcon from './icons/circle-arrow-right.svg?component' import _CircleDashedIcon from './icons/circle-dashed.svg?component' +import _CircleDollarSignIcon from './icons/circle-dollar-sign.svg?component' import _CircleUserIcon from './icons/circle-user.svg?component' import _ClearIcon from './icons/clear.svg?component' import _ClientIcon from './icons/client.svg?component' @@ -135,6 +136,7 @@ import _GapIcon from './icons/gap.svg?component' import _GaugeIcon from './icons/gauge.svg?component' import _GenericListIcon from './icons/generic-list.svg?component' import _GiftIcon from './icons/gift.svg?component' +import _GitForkIcon from './icons/git-fork.svg?component' import _GitGraphIcon from './icons/git-graph.svg?component' import _GlassesIcon from './icons/glasses.svg?component' import _GlobeIcon from './icons/globe.svg?component' @@ -183,6 +185,7 @@ import _LogOutIcon from './icons/log-out.svg?component' import _MailIcon from './icons/mail.svg?component' import _ManageIcon from './icons/manage.svg?component' import _MaximizeIcon from './icons/maximize.svg?component' +import _MegaphoneIcon from './icons/megaphone.svg?component' import _MemoryStickIcon from './icons/memory-stick.svg?component' import _MessageIcon from './icons/message.svg?component' import _MessagesSquareIcon from './icons/messages-square.svg?component' @@ -218,6 +221,7 @@ import _PowerIcon from './icons/power.svg?component' import _PowerOffIcon from './icons/power-off.svg?component' import _RadioButtonIcon from './icons/radio-button.svg?component' import _RadioButtonCheckedIcon from './icons/radio-button-checked.svg?component' +import _RadioTowerIcon from './icons/radio-tower.svg?component' import _ReceiptTextIcon from './icons/receipt-text.svg?component' import _RedoIcon from './icons/redo.svg?component' import _RefreshCwIcon from './icons/refresh-cw.svg?component' @@ -512,6 +516,7 @@ export const ChevronUpIcon = _ChevronUpIcon export const CircleAlertIcon = _CircleAlertIcon export const CircleArrowRightIcon = _CircleArrowRightIcon export const CircleDashedIcon = _CircleDashedIcon +export const CircleDollarSignIcon = _CircleDollarSignIcon export const CircleUserIcon = _CircleUserIcon export const ClearIcon = _ClearIcon export const ClientIcon = _ClientIcon @@ -567,6 +572,7 @@ export const GapIcon = _GapIcon export const GaugeIcon = _GaugeIcon export const GenericListIcon = _GenericListIcon export const GiftIcon = _GiftIcon +export const GitForkIcon = _GitForkIcon export const GitGraphIcon = _GitGraphIcon export const GlassesIcon = _GlassesIcon export const GlobeIcon = _GlobeIcon @@ -615,6 +621,7 @@ export const LogOutIcon = _LogOutIcon export const MailIcon = _MailIcon export const ManageIcon = _ManageIcon export const MaximizeIcon = _MaximizeIcon +export const MegaphoneIcon = _MegaphoneIcon export const MemoryStickIcon = _MemoryStickIcon export const MessageIcon = _MessageIcon export const MessagesSquareIcon = _MessagesSquareIcon @@ -650,6 +657,7 @@ export const PowerIcon = _PowerIcon export const PowerOffIcon = _PowerOffIcon export const RadioButtonIcon = _RadioButtonIcon export const RadioButtonCheckedIcon = _RadioButtonCheckedIcon +export const RadioTowerIcon = _RadioTowerIcon export const ReceiptTextIcon = _ReceiptTextIcon export const RedoIcon = _RedoIcon export const RefreshCwIcon = _RefreshCwIcon diff --git a/packages/assets/icons/circle-dollar-sign.svg b/packages/assets/icons/circle-dollar-sign.svg new file mode 100644 index 0000000000..0df8dc3e65 --- /dev/null +++ b/packages/assets/icons/circle-dollar-sign.svg @@ -0,0 +1,17 @@ + + diff --git a/packages/assets/icons/git-fork.svg b/packages/assets/icons/git-fork.svg new file mode 100644 index 0000000000..23f47b1729 --- /dev/null +++ b/packages/assets/icons/git-fork.svg @@ -0,0 +1,19 @@ + + diff --git a/packages/assets/icons/megaphone.svg b/packages/assets/icons/megaphone.svg new file mode 100644 index 0000000000..a2fe8be6f8 --- /dev/null +++ b/packages/assets/icons/megaphone.svg @@ -0,0 +1,17 @@ + + diff --git a/packages/assets/icons/radio-tower.svg b/packages/assets/icons/radio-tower.svg new file mode 100644 index 0000000000..8776e18f64 --- /dev/null +++ b/packages/assets/icons/radio-tower.svg @@ -0,0 +1,21 @@ + + diff --git a/packages/ui/src/components/project/ProjectSidebarDetails.vue b/packages/ui/src/components/project/ProjectSidebarDetails.vue index bfe45a68c3..c7f39cb7e9 100644 --- a/packages/ui/src/components/project/ProjectSidebarDetails.vue +++ b/packages/ui/src/components/project/ProjectSidebarDetails.vue @@ -13,7 +13,52 @@
+ You must enable this if this project contains a substantial amount of AI-generated code, + any assets that are substantially AI-generated, the project's design relies on the use of + generative AI, or if any element of your project's page such as description or publishing + relies on generative AI. +
+
+ Please refer to Section 6 of Modrinth's
+
Last modified: TODO
These Content Rules are to be considered part of our @@ -72,8 +73,12 @@
Projects, a form of Content, must make a clear and honest attempt to describe their purpose in - designated areas on the project page. Necessary information must not be obscured in any way. - Using confusing language or technical jargon when it is not necessary constitutes a violation. + designated areas on the project page. Necessary information must not be obscured in any way or + use confusing language or technical jargon when it is unnecessary. +
++ Important information like content disclosures must always be described accurately and + appropriately.
+ Projects must be forthright and honest about the usage of generative AI when producing + projects or any other posted content and cannot be entirely or primarily comprised of content + created or derived from generative AI output. +
+Projects must abide by all of the following requirements:
++ You must enable this if this project contains a substantial amount of AI-generated code, any + assets that are substantially AI-generated, the project's design relies on the use of + generative AI, or if any element of your project's page such as description or publishing + relies on generative AI. +
+
+ Please refer to Section 6 of Modrinth's
+
the contents within
-- You must enable this if this project contains a substantial amount of AI-generated code, - any assets that are substantially AI-generated, the project's design relies on the use of - generative AI, or if any element of your project's page such as description or publishing - relies on generative AI. -
-
- Please refer to Section 6 of Modrinth's
-
- Projects must be forthright and honest about the usage of generative AI when producing - projects or any other posted content and cannot be entirely or primarily comprised of content - created or derived from generative AI output. + Projects must be forthright and honest about the usage of generative AI in their production, + publication, and within the project itself. Projects cannot be entirely or primarily comprised + of content created or derived from generative AI output.
Projects must abide by all of the following requirements:
- You must enable this if this project contains a substantial amount of AI-generated code, any - assets that are substantially AI-generated, the project's design relies on the use of - generative AI, or if any element of your project's page such as description or publishing - relies on generative AI. -
-
- Please refer to Section 6 of Modrinth's
-
+
the contents within
- - ++ {{ formatMessage(aiDisclosureMessages.description) }} +
+
+
+ {{ formatMessage(aiDisclosureMessages.typesDescription) }} +
++ {{ formatMessage(advertisingDisclosureMessages.description1) }} +
+
+
+ {{ formatMessage(paidFeaturesDisclosureMessages.description) }} +
+ ++ {{ formatMessage(paidFeaturesDisclosureMessages.featuresDescription) }} +
++ {{ formatMessage(telemetryDisclosureMessages.description) }} +
+ ++ {{ formatMessage(telemetryDisclosureMessages.consentDescription) }} +
++ {{ formatMessage(telemetryDisclosureMessages.dataLabel) }} +
++ {{ formatMessage(telemetryDisclosureMessages.dataDescription) }} +
+{{ formatMessage(messages.description1) }}
+
+
+
- {{ formatMessage(aiDisclosureMessages.description) }} -
-
-
- {{ formatMessage(aiDisclosureMessages.typesDescription) }} -
-- {{ formatMessage(advertisingDisclosureMessages.description1) }} -
-
-
- {{ formatMessage(paidFeaturesDisclosureMessages.description) }} -
- -- {{ formatMessage(paidFeaturesDisclosureMessages.featuresDescription) }} -
-- {{ formatMessage(telemetryDisclosureMessages.description) }} -
- -- {{ formatMessage(telemetryDisclosureMessages.consentDescription) }} -
-- {{ formatMessage(telemetryDisclosureMessages.dataLabel) }} -
-- {{ formatMessage(telemetryDisclosureMessages.dataDescription) }} -
-+ {{ title }} +
++ {{ description }} +
+{{ description }}
+{{ formatMessage(messages.description1) }}
+{{ formatMessage(messages.description2) }}
+ +
+
- Removes your project from Modrinth's servers and search. Clicking on this will delete your - project, so be extra careful! -
- -
+
+ {{ formatMessage(messages.deleteProjectDescription2) }} +
+ + + +Last modified: September 16, 2023
+Last modified: August 13, 2026
These terms of use are entered into by and between You and Rinth, Inc. @@ -223,6 +223,10 @@ Use any manual process to monitor or copy any of the material contained in the Service or for any other unauthorized purpose without our prior written consent. +
This year, nearly fully AI-generated garbage content has begun flooding Modrinth. Project submissions have gone up from about 2,500 per week at the start of the year to over 5,000 per week now.
We’ve never had a quality threshold for uploading to Modrinth, and we continue to believe that you should not need to make professional, perfect work in order to publish on Modrinth. But we do believe that it has to be your work, and generating it completely with AI is not your work. Modrinth is a community of creators. In order to be creators, you need to actually create something.
Today, we’re announcing a set of new features and policies aimed at informing users about things they may want to know about a project before downloading, eliminating fully AI-generated content, and enforcing transparency for content that has been made in part with generative AI.
We have introduced content disclosures to provide a standardized place for certain things that we feel it is important for users to understand before downloading a project on Modrinth.

Here’s the current list of content disclosures available at this time:

Projects with disclosures you’d like to avoid can be filtered out in search under the “Advanced exclusions” options. When filtering out projects with photosensitivity warnings, we will warn the user that not all projects without the warning are guaranteed to be safe for users with photosensitivities. Advanced exclusion filters will be persistent across searches in your browser so that you don't have to apply them every time you search.

We’ve added Section 6 to the Content Rules, which is as follows:
To summarize:
Obviously, this is a big change and creators will need to take some time to update their projects to have all necessary disclosures or take down projects that are no longer allowed. For this reason, we will have a 30 day grace period to give everyone enough time to get their projects in order.
During this grace period, we will not be accepting reports for projects in violation of the new AI policy or for missing content disclosures to give them a fair chance to update them. The 30-day grace period ends on September 12, 2026.
In addition, we will not tolerate witch-hunting on the Modrinth platform. These disclosures are to inform users and provide transparency between user and creator. Anyone using them to shame, insult, belittle, or harass others will be swiftly and permanently removed from the Modrinth platform and community Discord server. Be kind to each other.
—
Thank you for your patience with us on this feature. We know it’s been long-requested and overdue, but we wanted to make sure we shipped something comprehensive, enforceable, and more than just a publicity stunt.
Thank you as always for continuing to support us. It means a lot. 💚
`; +export const html = `This year, fully AI-generated content has begun flooding Modrinth. Project submissions have gone up from about 2,500 per week at the start of the year to over 5,000 per week now.
We’ve never had a quality threshold for uploading to Modrinth, and we continue to believe that you should not need to make professional, perfect work in order to publish on Modrinth. But we do believe that it has to be your work, and generating it completely with AI is not your work. Modrinth is a community of creators. In order to be creators, you need to actually create something.
Today, we’re announcing a set of new features and policies aimed at informing users about things they may want to know about a project before downloading, eliminating fully AI-generated content, and enforcing transparency for content that has been made in part with generative AI.
In addition, we have made a very minor update to our Terms of Use, to prohibit the use of data on Modrinth to train AI models.
We have introduced content disclosures to provide a standardized place for certain things that we feel it is important for users to understand before downloading a project on Modrinth.

Here’s the current list of content disclosures available at this time:

Projects with disclosures you’d like to avoid can be filtered out in search under the “Advanced exclusions” options. When filtering out projects with photosensitivity warnings, we will warn the user that not all projects without the warning are guaranteed to be safe for users with photosensitivities. Advanced exclusion filters will be persistent across searches in your browser so that you don't have to apply them every time you search.

We’ve added Section 6 to the Content Rules, which is as follows:
To summarize:
Obviously, this is a big change and creators will need to take some time to update their projects to have all necessary disclosures or take down projects that are no longer allowed. For this reason, we will have a 30 day grace period to give everyone enough time to get their projects in order.
During this grace period, we will not be accepting reports for projects in violation of the new AI policy or for missing content disclosures to give them a fair chance to update them. The 30-day grace period ends on September 12, 2026.
In addition, we will not tolerate witch-hunting on the Modrinth platform. These disclosures are to inform users and provide transparency between user and creator. Anyone using them to shame, insult, belittle, or harass others will be swiftly and permanently removed from the Modrinth platform and community Discord server. Be kind to each other.
Modrinth's Terms of Use have been updated in a very minor way to prohibit the use of data on Modrinth to train AI models. The exact change is as follows:
Additionally, you agree not to:
- [...]
- Use any data, content, or materials available on or through the Service to train, develop, or improve any artificial intelligence or machine learning models.
A larger TOU update will be coming in the future to address other issues since the last update was in 2023, but we felt it was important to address this sooner rather than later.
—
Thank you for your patience with us on this feature. We know it’s been long-requested and overdue, but we wanted to make sure we shipped something comprehensive, enforceable, and more than just a publicity stunt.
Thank you as always for continuing to support us. It means a lot. 💚
`; From af21cfc6b73a354a05321247a29dcd7508eab8b6 Mon Sep 17 00:00:00 2001 From: Prospector <6166773+Prospector@users.noreply.github.com> Date: Thu, 13 Aug 2026 08:55:18 -0700 Subject: [PATCH 69/69] 45 day grace --- apps/frontend/src/public/news/feed/rss.xml | 4 ++-- packages/blog/articles/ai-policy-and-disclosures.md | 4 ++-- packages/blog/compiled/ai_policy_and_disclosures.content.ts | 2 +- 3 files changed, 5 insertions(+), 5 deletions(-) diff --git a/apps/frontend/src/public/news/feed/rss.xml b/apps/frontend/src/public/news/feed/rss.xml index 4c3c1bb4f8..32457f0121 100644 --- a/apps/frontend/src/public/news/feed/rss.xml +++ b/apps/frontend/src/public/news/feed/rss.xml @@ -4,7 +4,7 @@This year, fully AI-generated content has begun flooding Modrinth. Project submissions have gone up from about 2,500 per week at the start of the year to over 5,000 per week now.
We’ve never had a quality threshold for uploading to Modrinth, and we continue to believe that you should not need to make professional, perfect work in order to publish on Modrinth. But we do believe that it has to be your work, and generating it completely with AI is not your work. Modrinth is a community of creators. In order to be creators, you need to actually create something.
Today, we’re announcing a set of new features and policies aimed at informing users about things they may want to know about a project before downloading, eliminating fully AI-generated content, and enforcing transparency for content that has been made in part with generative AI.
In addition, we have made a very minor update to our Terms of Use, to prohibit the use of data on Modrinth to train AI models.
We have introduced content disclosures to provide a standardized place for certain things that we feel it is important for users to understand before downloading a project on Modrinth.

Here’s the current list of content disclosures available at this time:

Projects with disclosures you’d like to avoid can be filtered out in search under the “Advanced exclusions” options. When filtering out projects with photosensitivity warnings, we will warn the user that not all projects without the warning are guaranteed to be safe for users with photosensitivities. Advanced exclusion filters will be persistent across searches in your browser so that you don't have to apply them every time you search.

We’ve added Section 6 to the Content Rules, which is as follows:
To summarize:
Obviously, this is a big change and creators will need to take some time to update their projects to have all necessary disclosures or take down projects that are no longer allowed. For this reason, we will have a 30 day grace period to give everyone enough time to get their projects in order.
During this grace period, we will not be accepting reports for projects in violation of the new AI policy or for missing content disclosures to give them a fair chance to update them. The 30-day grace period ends on September 12, 2026.
In addition, we will not tolerate witch-hunting on the Modrinth platform. These disclosures are to inform users and provide transparency between user and creator. Anyone using them to shame, insult, belittle, or harass others will be swiftly and permanently removed from the Modrinth platform and community Discord server. Be kind to each other.
Modrinth's Terms of Use have been updated in a very minor way to prohibit the use of data on Modrinth to train AI models. The exact change is as follows:
Additionally, you agree not to:
- [...]
- Use any data, content, or materials available on or through the Service to train, develop, or improve any artificial intelligence or machine learning models.
A larger TOU update will be coming in the future to address other issues since the last update was in 2023, but we felt it was important to address this sooner rather than later.
—
Thank you for your patience with us on this feature. We know it’s been long-requested and overdue, but we wanted to make sure we shipped something comprehensive, enforceable, and more than just a publicity stunt.
Thank you as always for continuing to support us. It means a lot. 💚
`; +export const html = `This year, fully AI-generated content has begun flooding Modrinth. Project submissions have gone up from about 2,500 per week at the start of the year to over 5,000 per week now.
We’ve never had a quality threshold for uploading to Modrinth, and we continue to believe that you should not need to make professional, perfect work in order to publish on Modrinth. But we do believe that it has to be your work, and generating it completely with AI is not your work. Modrinth is a community of creators. In order to be creators, you need to actually create something.
Today, we’re announcing a set of new features and policies aimed at informing users about things they may want to know about a project before downloading, eliminating fully AI-generated content, and enforcing transparency for content that has been made in part with generative AI.
In addition, we have made a very minor update to our Terms of Use, to prohibit the use of data on Modrinth to train AI models.
We have introduced content disclosures to provide a standardized place for certain things that we feel it is important for users to understand before downloading a project on Modrinth.

Here’s the current list of content disclosures available at this time:

Projects with disclosures you’d like to avoid can be filtered out in search under the “Advanced exclusions” options. When filtering out projects with photosensitivity warnings, we will warn the user that not all projects without the warning are guaranteed to be safe for users with photosensitivities. Advanced exclusion filters will be persistent across searches in your browser so that you don't have to apply them every time you search.

We’ve added Section 6 to the Content Rules, which is as follows:
To summarize:
Obviously, this is a big change and creators will need to take some time to update their projects to have all necessary disclosures or take down projects that are no longer allowed. For this reason, we will have a 45 day grace period to give everyone enough time to get their projects in order.
During this grace period, we will not be accepting reports for projects in violation of the new AI policy or for missing content disclosures to give them a fair chance to update them. The 45-day grace period ends on September 27, 2026.
In addition, we will not tolerate witch-hunting on the Modrinth platform. These disclosures are to inform users and provide transparency between user and creator. Anyone using them to shame, insult, belittle, or harass others will be swiftly and permanently removed from the Modrinth platform and community Discord server. Be kind to each other.
Modrinth's Terms of Use have been updated in a very minor way to prohibit the use of data on Modrinth to train AI models. The exact change is as follows:
Additionally, you agree not to:
- [...]
- Use any data, content, or materials available on or through the Service to train, develop, or improve any artificial intelligence or machine learning models.
A larger TOU update will be coming in the future to address other issues since the last update was in 2023, but we felt it was important to address this sooner rather than later.
—
Thank you for your patience with us on this feature. We know it’s been long-requested and overdue, but we wanted to make sure we shipped something comprehensive, enforceable, and more than just a publicity stunt.
Thank you as always for continuing to support us. It means a lot. 💚
`;