-
diff --git a/packages/blog/articles/russian-censorship.md b/packages/blog/articles/russian-censorship.md
index 924e53f7..9ff0ddb9 100644
--- a/packages/blog/articles/russian-censorship.md
+++ b/packages/blog/articles/russian-censorship.md
@@ -2,8 +2,11 @@
title: Russia forced us to do this
summary: Update on censorship for Russian users and our continued support for those affected.
date: 2025-09-30T18:30:00-07:00
+unlisted: true
---
+**This post has been preserved for archival reasons, but no longer reflects Modrinth policy on compliance with government censorship. Please see our updated post [here](../standing-by-our-values) on our choice to stand up to the Russian government.**
+
Hi everyone,
We want to be upfront about censorship on the Modrinth platform. Recently, the Russian government contacted us and required us to restrict LGBTQ+ projects for Russian users. If we didn’t, they threatened to block Modrinth entirely in Russia.
diff --git a/packages/blog/articles/standing-by-our-values-russian.md b/packages/blog/articles/standing-by-our-values-russian.md
new file mode 100644
index 00000000..a01682d4
--- /dev/null
+++ b/packages/blog/articles/standing-by-our-values-russian.md
@@ -0,0 +1,53 @@
+---
+title: Сохраняя достоинство
+summary: Keeping LGBTQIA+ content visible despite demands from Russia.
+date: 2025-10-01T17:00:00-07:00
+unlisted: true
+---
+
+Вчера, нас поставили в положение, в котором не должно оказаться ни одно сообщество. Российское правительство связалось с нами и потребовало немедленно удалить четыре ЛГБТК+ проекта с Modrinth. И если мы не согласимся, то весь сайт был бы заблокирован в России целиком.
+
+У нас был всего день на решение. Вся команда Modrinth провела 5 часов, взвешивая наши опции. Одна хуже другой:
+
+- Заблокировать весь Modrinth целиком более чем миллиону российских пользователей
+- Напрямую повлиять на жизни авторов: и собственно авторов-россиян, и тех, чьи работы популярны у россиян
+- Согласиться с запросами цензоров, которые идут против нашего достоинства
+
+Деньги не были фактором нашего решения. Мы теряем деньги на контенте, который скачивают российские пользователи, но мы всё равно продолжаем поддерживать их. Для нас были значимы последствия для людей.
+
+
+_Доход от рекламы, показанной в России, за август._
+
+В итоге, мы пришли к выводу, что мы выберем путь „наименьшего зла“. Мы были убеждены, что удалить те четыре проекта будет меньшей цензурой, чем если все пользователи из России утратят доступ к Modrinth. Но такое решение, сделанное под давлением и в отсутствие времени, было близоруким. Оно не соответствует нашим ценностям, нашей поддержке ЛГБТК+ сообщества и нашей позиции против цензуры.
+
+Для полной ясности: решение подчиниться, даже кратковременно, было ошибкой. И мы очень просим за него прощения.
+
+## Что теперь
+
+Мы решили откатить прошлое решение. Все четыре проекта будут восстановлены.
+
+Наши ценности не подлежать обсуждению. Идя дальше, мы не будем подчиняться нарушающим их требованиям никаких правительственных организаций. Modrinth существует, чтобы сделать моддинг игр открытым и доступным каждому, и мы следуем этой цели.
+
+Мы знаем, что рано или поздно Modrinth будет заблокирован российским правительством, но мы постараемся сделать всё, что в наших силах, чтобы подготовить к этому российских пользователей. Мы оповестим их о надвигающемся бане и укажем как они могут сохранить доступ к веб-сайту.
+
+
+
+## Последствия для авторов
+
+Хоть этот откат и не повлияет на авторские отчисления напрямую, так как Modrinth не получали значимого дохода от российских пользователей, мы знаем, что он возымеет иное влияние на авторов.
+
+Эта ситуация может подорвать Вашу жизнь и труды, если Вы - из России или у Вас в России большая публика. Это болезненно и несправедливо. Мы глубоко сожалеем о происходящем, и мы продолжим делать всё возможное, чтобы Вам помочь.
+
+## Наш долг
+
+Ото всей нашей команды: мы просим прощения. Мы позволили срочности и давлению увести нас к решению, которое не отражает того, кто мы и за что мы ратуем. Мы хотели бы быть искренни в том, что совершили ошибку и что возьмём ответственность за её исправление.
+
+Наша цель остаётся прежней: поддерживать авторов, сохранять моддинг доступным и обеспечивать безопасное и гостеприимное место для каждого.
+
+Спасибо за то, что призываете нас к ответственности. Спасибо за то, что доверяете, что мы исправимся. И мы надеемся, вы сможете продолжить нас поддерживать.
+
+Если Вы в опасности или вам нужна информация, примите во внимание [Rainbow Railroad](https://www.rainbowrailroad.org/) - организацию, призванную помочь ЛГБТК+-людям спастись от угнетения.
+
+💚 The Modrinth Team
+
+(translated from [English](../standing-by-our-values))
diff --git a/packages/blog/articles/standing-by-our-values.md b/packages/blog/articles/standing-by-our-values.md
index eba09b9e..e0d15f23 100644
--- a/packages/blog/articles/standing-by-our-values.md
+++ b/packages/blog/articles/standing-by-our-values.md
@@ -1,6 +1,6 @@
---
title: Standing By Our Values
-summary: Keeping LGBTQIA+ content visible despite demands from Russia
+summary: Keeping LGBTQIA+ content visible despite demands from Russia.
date: 2025-10-01T17:00:00-07:00
---
@@ -46,3 +46,7 @@ Thank you for holding us accountable. Thank you for trusting us to do better. An
If you are in danger or need resources, please consider reaching out to [Rainbow Railroad](https://www.rainbowrailroad.org/), an organization dedicated to helping LGBTQ+ people escape oppression.
💚 The Modrinth Team
+
+[Also available in Russian / Перевод на русский](../standing-by-our-values-russian)
+
+Our previous, outdated post announcing the Russian censorship can be found archived [here](../russian-censorship).
diff --git a/packages/blog/compile.ts b/packages/blog/compile.ts
index 276e7ac6..504e7715 100644
--- a/packages/blog/compile.ts
+++ b/packages/blog/compile.ts
@@ -62,7 +62,15 @@ async function compileArticles() {
const src = await fs.readFile(file, 'utf8')
const { content, data } = matter(src)
- const { title, summary, date, slug: frontSlug, authors: authorsData, ...rest } = data
+ const {
+ title,
+ summary,
+ date,
+ slug: frontSlug,
+ authors: authorsData,
+ unlisted: unlistedRaw,
+ ...rest
+ } = data
if (!title || !summary || !date) {
console.error(`❌ Missing required frontmatter in ${file}. Required: title, summary, date`)
process.exit(1)
@@ -102,6 +110,7 @@ async function compileArticles() {
})
const authors = authorsData ? authorsData : []
+ const unlisted = !!unlistedRaw
const varName = toVarName(slug)
const exportFile = path.posix.join(COMPILED_DIR, `${varName}.ts`)
@@ -123,6 +132,7 @@ export const article = {
date: ${JSON.stringify(date)},
slug: ${JSON.stringify(slug)},
authors: ${JSON.stringify(authors)},
+ unlisted: ${JSON.stringify(unlisted)},
thumbnail: ${thumbnailPresent},
${Object.keys(rest)
.map((k) => `${k}: ${JSON.stringify(rest[k])},`)
@@ -134,21 +144,23 @@ export const article = {
articleExports.push(`import { article as ${varName} } from "./${varName}";`)
articlesArray.push(varName)
- articlesForRss.push({
- title,
- summary,
- date,
- slug,
- html: minifiedHtml,
- } as never)
+ if (!unlisted) {
+ articlesForRss.push({
+ title,
+ summary,
+ date,
+ slug,
+ html: minifiedHtml,
+ } as never)
- articlesForJson.push({
- title,
- summary,
- thumbnail: getThumbnailUrl(slug, thumbnailPresent),
- date: new Date(date).toISOString(),
- link: getArticleLink(slug),
- } as never)
+ articlesForJson.push({
+ title,
+ summary,
+ thumbnail: getThumbnailUrl(slug, thumbnailPresent),
+ date: new Date(date).toISOString(),
+ link: getArticleLink(slug),
+ } as never)
+ }
}
console.log(`📂 Compiled ${files.length} articles.`)
diff --git a/packages/blog/compiled/a_new_chapter_for_modrinth_servers.ts b/packages/blog/compiled/a_new_chapter_for_modrinth_servers.ts
index e9a5e948..f1b4c6ee 100644
--- a/packages/blog/compiled/a_new_chapter_for_modrinth_servers.ts
+++ b/packages/blog/compiled/a_new_chapter_for_modrinth_servers.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-03-13T00:00:00.000Z",
slug: "a-new-chapter-for-modrinth-servers",
authors: ["MpxzqsyW","Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/accelerating_development.ts b/packages/blog/compiled/accelerating_development.ts
index 6bc20567..0324b419 100644
--- a/packages/blog/compiled/accelerating_development.ts
+++ b/packages/blog/compiled/accelerating_development.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2023-02-01T20:00:00.000Z",
slug: "accelerating-development",
authors: ["MpxzqsyW","Dc7EYhxG","6plzAzU4"],
+ unlisted: false,
thumbnail: false,
};
diff --git a/packages/blog/compiled/becoming_sustainable.ts b/packages/blog/compiled/becoming_sustainable.ts
index d0a2ac19..2fa76baa 100644
--- a/packages/blog/compiled/becoming_sustainable.ts
+++ b/packages/blog/compiled/becoming_sustainable.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2024-09-13T20:00:00.000Z",
slug: "becoming-sustainable",
authors: ["MpxzqsyW","Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
short_title: "Becoming Sustainable",
short_summary: "Announcing 5x creator revenue and updates to the monetization program.",
diff --git a/packages/blog/compiled/capital_return.ts b/packages/blog/compiled/capital_return.ts
index 9abf9822..5cd55671 100644
--- a/packages/blog/compiled/capital_return.ts
+++ b/packages/blog/compiled/capital_return.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2024-04-04T20:00:00.000Z",
slug: "capital-return",
authors: ["MpxzqsyW"],
+ unlisted: false,
thumbnail: false,
};
diff --git a/packages/blog/compiled/carbon_ads.ts b/packages/blog/compiled/carbon_ads.ts
index 95c3a21a..78f1774f 100644
--- a/packages/blog/compiled/carbon_ads.ts
+++ b/packages/blog/compiled/carbon_ads.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2022-09-08T00:00:00.000Z",
slug: "carbon-ads",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/creator_monetization.ts b/packages/blog/compiled/creator_monetization.ts
index 51cbef7f..de55f5e1 100644
--- a/packages/blog/compiled/creator_monetization.ts
+++ b/packages/blog/compiled/creator_monetization.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2022-11-12T00:00:00.000Z",
slug: "creator-monetization",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/creator_update.ts b/packages/blog/compiled/creator_update.ts
index 8931a0e1..568c8df9 100644
--- a/packages/blog/compiled/creator_update.ts
+++ b/packages/blog/compiled/creator_update.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2024-01-06T20:00:00.000Z",
slug: "creator-update",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: true,
short_title: "The Creator Update",
short_summary: "Adding analytics, orgs, collections, and more!",
diff --git a/packages/blog/compiled/creator_updates_july_2025.ts b/packages/blog/compiled/creator_updates_july_2025.ts
index 2937a1d2..4b256d1e 100644
--- a/packages/blog/compiled/creator_updates_july_2025.ts
+++ b/packages/blog/compiled/creator_updates_july_2025.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-07-02T04:20:00.000Z",
slug: "creator-updates-july-2025",
authors: ["MpxzqsyW"],
+ unlisted: false,
thumbnail: false,
};
diff --git a/packages/blog/compiled/design_refresh.ts b/packages/blog/compiled/design_refresh.ts
index 81aaeb30..5633b8af 100644
--- a/packages/blog/compiled/design_refresh.ts
+++ b/packages/blog/compiled/design_refresh.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2024-08-21T20:00:00.000Z",
slug: "design-refresh",
authors: ["MpxzqsyW","Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
short_title: "Modrinth+ and New Ads",
short_summary: "Introducing a new ad system, a subscription to remove ads, and a redesign of the website!",
diff --git a/packages/blog/compiled/download_adjustment.ts b/packages/blog/compiled/download_adjustment.ts
index d6ee3eee..e162eef2 100644
--- a/packages/blog/compiled/download_adjustment.ts
+++ b/packages/blog/compiled/download_adjustment.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2023-11-10T20:00:00.000Z",
slug: "download-adjustment",
authors: ["6plzAzU4","MpxzqsyW"],
+ unlisted: false,
thumbnail: false,
short_title: "Correcting Inflated Download Counts",
};
diff --git a/packages/blog/compiled/free_server_medal.ts b/packages/blog/compiled/free_server_medal.ts
index 316f749a..4ae6bc96 100644
--- a/packages/blog/compiled/free_server_medal.ts
+++ b/packages/blog/compiled/free_server_medal.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-08-20T22:25:00.000Z",
slug: "free-server-medal",
authors: ["AJfd8YH6"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/index.ts b/packages/blog/compiled/index.ts
index 220b8710..33ce60b1 100644
--- a/packages/blog/compiled/index.ts
+++ b/packages/blog/compiled/index.ts
@@ -26,6 +26,7 @@ import { article as redesign } from "./redesign";
import { article as russian_censorship } from "./russian_censorship";
import { article as skins_now_in_modrinth_app } from "./skins_now_in_modrinth_app";
import { article as standing_by_our_values } from "./standing_by_our_values";
+import { article as standing_by_our_values_russian } from "./standing_by_our_values_russian";
import { article as two_years_of_modrinth } from "./two_years_of_modrinth";
import { article as two_years_of_modrinth_history } from "./two_years_of_modrinth_history";
import { article as whats_modrinth } from "./whats_modrinth";
@@ -37,6 +38,7 @@ export const articles = [
two_years_of_modrinth,
two_years_of_modrinth_history,
standing_by_our_values,
+ standing_by_our_values_russian,
skins_now_in_modrinth_app,
russian_censorship,
redesign,
diff --git a/packages/blog/compiled/knossos_v2_1_0.ts b/packages/blog/compiled/knossos_v2_1_0.ts
index 27326c4b..6ab23e8a 100644
--- a/packages/blog/compiled/knossos_v2_1_0.ts
+++ b/packages/blog/compiled/knossos_v2_1_0.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2022-03-09T00:00:00.000Z",
slug: "knossos-v2.1.0",
authors: ["Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/licensing_guide.ts b/packages/blog/compiled/licensing_guide.ts
index d23bdc35..0e366da2 100644
--- a/packages/blog/compiled/licensing_guide.ts
+++ b/packages/blog/compiled/licensing_guide.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2021-05-16T00:00:00.000Z",
slug: "licensing-guide",
authors: ["6plzAzU4","aNd6VJql"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/modpack_changes.ts b/packages/blog/compiled/modpack_changes.ts
index 29a06063..0c7f229d 100644
--- a/packages/blog/compiled/modpack_changes.ts
+++ b/packages/blog/compiled/modpack_changes.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2022-05-28T00:00:00.000Z",
slug: "modpack-changes",
authors: ["MpxzqsyW","Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/modpacks_alpha.ts b/packages/blog/compiled/modpacks_alpha.ts
index 69b2eeb4..a2f38913 100644
--- a/packages/blog/compiled/modpacks_alpha.ts
+++ b/packages/blog/compiled/modpacks_alpha.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2022-05-15T00:00:00.000Z",
slug: "modpacks-alpha",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/modrinth_app_beta.ts b/packages/blog/compiled/modrinth_app_beta.ts
index 6ef15674..dca33311 100644
--- a/packages/blog/compiled/modrinth_app_beta.ts
+++ b/packages/blog/compiled/modrinth_app_beta.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2023-08-05T20:00:00.000Z",
slug: "modrinth-app-beta",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: false,
short_title: "Modrinth App Beta and Upgraded Authentication",
short_summary: "Launching Modrinth App Beta and upgrading authentication.",
diff --git a/packages/blog/compiled/modrinth_beta.ts b/packages/blog/compiled/modrinth_beta.ts
index 47eae074..2bef1cb2 100644
--- a/packages/blog/compiled/modrinth_beta.ts
+++ b/packages/blog/compiled/modrinth_beta.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2020-12-01T00:00:00.000Z",
slug: "modrinth-beta",
authors: ["Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/modrinth_servers_asia.ts b/packages/blog/compiled/modrinth_servers_asia.ts
index 79a5ce64..5d3e236f 100644
--- a/packages/blog/compiled/modrinth_servers_asia.ts
+++ b/packages/blog/compiled/modrinth_servers_asia.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-09-08T21:45:00.000Z",
slug: "modrinth-servers-asia",
authors: ["AJfd8YH6","Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/modrinth_servers_beta.ts b/packages/blog/compiled/modrinth_servers_beta.ts
index f29cc1a5..c8caf8b2 100644
--- a/packages/blog/compiled/modrinth_servers_beta.ts
+++ b/packages/blog/compiled/modrinth_servers_beta.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2024-11-03T06:00:00.000Z",
slug: "modrinth-servers-beta",
authors: ["MpxzqsyW","Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
short_title: "Introducing Modrinth Servers",
short_summary: "Host your next Minecraft server with Modrinth.",
diff --git a/packages/blog/compiled/new_environments.ts b/packages/blog/compiled/new_environments.ts
index c78a1748..87c4a248 100644
--- a/packages/blog/compiled/new_environments.ts
+++ b/packages/blog/compiled/new_environments.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-08-28T23:50:00.000Z",
slug: "new-environments",
authors: ["Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/new_site_beta.ts b/packages/blog/compiled/new_site_beta.ts
index 2f7eb3bd..072b63ea 100644
--- a/packages/blog/compiled/new_site_beta.ts
+++ b/packages/blog/compiled/new_site_beta.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2023-04-01T08:00:00.000Z",
slug: "new-site-beta",
authors: [],
+ unlisted: false,
thumbnail: true,
short_title: "(April Fools 2023) Modrinth Technologies™️ beta launch!",
short_summary: "Power up your experience.",
diff --git a/packages/blog/compiled/plugins_resource_packs.ts b/packages/blog/compiled/plugins_resource_packs.ts
index 5fd6034c..11fd2a5a 100644
--- a/packages/blog/compiled/plugins_resource_packs.ts
+++ b/packages/blog/compiled/plugins_resource_packs.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2022-08-27T00:00:00.000Z",
slug: "plugins-resource-packs",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/pride_campaign_2025.ts b/packages/blog/compiled/pride_campaign_2025.ts
index 0b76f789..3bf96bb5 100644
--- a/packages/blog/compiled/pride_campaign_2025.ts
+++ b/packages/blog/compiled/pride_campaign_2025.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-07-01T18:00:00.000Z",
slug: "pride-campaign-2025",
authors: ["6plzAzU4","bOHH0P9Z","2cqK8Q5p","vNcGR3Fd"],
+ unlisted: false,
thumbnail: true,
short_title: "Pride Month Fundraiser 2025",
short_summary: "A reflection on our Pride Month fundraiser campaign.",
diff --git a/packages/blog/compiled/redesign.ts b/packages/blog/compiled/redesign.ts
index d395e2fa..cc0cd54f 100644
--- a/packages/blog/compiled/redesign.ts
+++ b/packages/blog/compiled/redesign.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2022-02-27T00:00:00.000Z",
slug: "redesign",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/russian_censorship.content.ts b/packages/blog/compiled/russian_censorship.content.ts
index 6fda187f..6923ce42 100644
--- a/packages/blog/compiled/russian_censorship.content.ts
+++ b/packages/blog/compiled/russian_censorship.content.ts
@@ -1,2 +1,2 @@
// AUTO-GENERATED FILE - DO NOT EDIT
-export const html = `
Hi everyone,
We want to be upfront about censorship on the Modrinth platform. Recently, the Russian government contacted us and required us to restrict LGBTQ+ projects for Russian users. If we didn’t, they threatened to block Modrinth entirely in Russia.
This is not a decision we believe in. It goes against our values and what we stand for as a community. But we were put in an impossible position: either comply, or cut off every single creator and player in Russia. That’s not a fair choice, and it doesn’t make us feel any better about having to go through with it.
To be clear: Modrinth supports the LGBTQ+ community. We always have, and we always will. If you’re part of this community, know that we see you, we value you, and we’re not going anywhere 💚. Modrinth will always be a safe home for you, and we’ll keep directly supporting the LGBTQ+ community through our annual Pride campaign fundraiser.
This sucks, and it hurts to be forced into this situation. But you deserve the truth, and we want you to hear it directly from us: certain LGBTQ+ content on Modrinth will now be restricted in Russia.
`;
+export const html = `This post has been preserved for archival reasons, but no longer reflects Modrinth policy on compliance with government censorship. Please see our updated post here on our choice to stand up to the Russian government.
Hi everyone,
We want to be upfront about censorship on the Modrinth platform. Recently, the Russian government contacted us and required us to restrict LGBTQ+ projects for Russian users. If we didn’t, they threatened to block Modrinth entirely in Russia.
This is not a decision we believe in. It goes against our values and what we stand for as a community. But we were put in an impossible position: either comply, or cut off every single creator and player in Russia. That’s not a fair choice, and it doesn’t make us feel any better about having to go through with it.
To be clear: Modrinth supports the LGBTQ+ community. We always have, and we always will. If you’re part of this community, know that we see you, we value you, and we’re not going anywhere 💚. Modrinth will always be a safe home for you, and we’ll keep directly supporting the LGBTQ+ community through our annual Pride campaign fundraiser.
This sucks, and it hurts to be forced into this situation. But you deserve the truth, and we want you to hear it directly from us: certain LGBTQ+ content on Modrinth will now be restricted in Russia.
`;
diff --git a/packages/blog/compiled/russian_censorship.ts b/packages/blog/compiled/russian_censorship.ts
index 800c4bdb..15803a7d 100644
--- a/packages/blog/compiled/russian_censorship.ts
+++ b/packages/blog/compiled/russian_censorship.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-10-01T01:30:00.000Z",
slug: "russian-censorship",
authors: [],
+ unlisted: true,
thumbnail: true,
};
diff --git a/packages/blog/compiled/skins_now_in_modrinth_app.ts b/packages/blog/compiled/skins_now_in_modrinth_app.ts
index e5f0ac81..88b907d0 100644
--- a/packages/blog/compiled/skins_now_in_modrinth_app.ts
+++ b/packages/blog/compiled/skins_now_in_modrinth_app.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2025-07-06T23:45:00.000Z",
slug: "skins-now-in-modrinth-app",
authors: ["bOHH0P9Z","Dc7EYhxG"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/standing_by_our_values.content.ts b/packages/blog/compiled/standing_by_our_values.content.ts
index f9109579..5ca3a1b2 100644
--- a/packages/blog/compiled/standing_by_our_values.content.ts
+++ b/packages/blog/compiled/standing_by_our_values.content.ts
@@ -1,2 +1,2 @@
// AUTO-GENERATED FILE - DO NOT EDIT
-export const html = `Yesterday, we were put in a position no community should have to face. The Russian government contacted us and demanded that four LGBTQ+ projects on Modrinth be removed immediately. If we did not comply, the entire site would have been blocked for everyone in Russia.
We had only that day to make a decision. The entire Modrinth team spent over 5 hours together weighing the options collectively. None of them were good:
- Restrict all content on Modrinth for over a million Russian users
- Directly impact creators’ livelihoods, either Russian creators themselves or those whose work is widely played by Russian users
- Comply with censorship requests that go directly against our values and beliefs
Money did not factor into our decision. It costs Modrinth hundreds of dollars a month in bandwidth cost alone to serve content to Russian users while we do not make ad revenue from them.
Ad revenue from Russian users for the month of September.
In the end, we told ourselves we were choosing the path of “harm reduction.” We believed that removing the four projects was less censorship than losing access to Modrinth entirely for Russian users. But that choice, made under pressure and with little time, was short-sighted. It was not consistent with our values, our support of the LGBTQ+ community, or our stance against censorship.
We want to be clear: the decision to comply, even briefly, was a mistake. And we are deeply sorry for it.
What We’re Doing Now
We have decided to reverse that decision. The four projects in question will be fully restored for Russian users. Our values are not negotiable. Going forward, we will not comply with requests from any government body that go against them. Modrinth exists to make game modding open and accessible for all, and we stand by that mission.
We know Modrinth will be blocked by the Russian government at some point, but we will do everything we can to prepare Russian users for it. They will be informed of the upcoming ban and will be provided guidance on how they can continue accessing the website.

Impact on Creators
Modrinth being banned in Russia will not significantly impact overall creator revenue, as very little comes from those users. However, it may affect individual creators in different ways.
For Russian creators, or anyone with a large audience in Russia, this ban could disrupt your revenue and livelihood. That is painful and unfair. We are deeply sorry for this happening and will continue to do everything we can to support you.
Our Commitment
From our whole team: we are sorry. We let urgency and pressure steer us into a decision that did not reflect who we are or what we stand for. We want to be transparent about that mistake and take responsibility for making it right.
Our mission remains the same: to support creators, to keep modding accessible, and to provide a safe and welcoming place for everyone.
Thank you for holding us accountable. Thank you for trusting us to do better. And we hope you can continue to support us. If you are in danger or need resources, please consider reaching out to Rainbow Railroad, an organization dedicated to helping LGBTQ+ people escape oppression.
💚 The Modrinth Team
`;
+export const html = `Yesterday, we were put in a position no community should have to face. The Russian government contacted us and demanded that four LGBTQ+ projects on Modrinth be removed immediately. If we did not comply, the entire site would have been blocked for everyone in Russia.
We had only that day to make a decision. The entire Modrinth team spent over 5 hours together weighing the options collectively. None of them were good:
- Restrict all content on Modrinth for over a million Russian users
- Directly impact creators’ livelihoods, either Russian creators themselves or those whose work is widely played by Russian users
- Comply with censorship requests that go directly against our values and beliefs
Money did not factor into our decision. It costs Modrinth hundreds of dollars a month in bandwidth cost alone to serve content to Russian users while we do not make ad revenue from them.
Ad revenue from Russian users for the month of September.
In the end, we told ourselves we were choosing the path of “harm reduction.” We believed that removing the four projects was less censorship than losing access to Modrinth entirely for Russian users. But that choice, made under pressure and with little time, was short-sighted. It was not consistent with our values, our support of the LGBTQ+ community, or our stance against censorship.
We want to be clear: the decision to comply, even briefly, was a mistake. And we are deeply sorry for it.
What We’re Doing Now
We have decided to reverse that decision. The four projects in question will be fully restored for Russian users. Our values are not negotiable. Going forward, we will not comply with requests from any government body that go against them. Modrinth exists to make game modding open and accessible for all, and we stand by that mission.
We know Modrinth will be blocked by the Russian government at some point, but we will do everything we can to prepare Russian users for it. They will be informed of the upcoming ban and will be provided guidance on how they can continue accessing the website.

Impact on Creators
Modrinth being banned in Russia will not significantly impact overall creator revenue, as very little comes from those users. However, it may affect individual creators in different ways.
For Russian creators, or anyone with a large audience in Russia, this ban could disrupt your revenue and livelihood. That is painful and unfair. We are deeply sorry for this happening and will continue to do everything we can to support you.
Our Commitment
From our whole team: we are sorry. We let urgency and pressure steer us into a decision that did not reflect who we are or what we stand for. We want to be transparent about that mistake and take responsibility for making it right.
Our mission remains the same: to support creators, to keep modding accessible, and to provide a safe and welcoming place for everyone.
Thank you for holding us accountable. Thank you for trusting us to do better. And we hope you can continue to support us. If you are in danger or need resources, please consider reaching out to Rainbow Railroad, an organization dedicated to helping LGBTQ+ people escape oppression.
💚 The Modrinth Team
Also available in Russian / Перевод на русский
Our previous, outdated post announcing the Russian censorship can be found archived here.
`;
diff --git a/packages/blog/compiled/standing_by_our_values.ts b/packages/blog/compiled/standing_by_our_values.ts
index d85aa7ff..03e74f67 100644
--- a/packages/blog/compiled/standing_by_our_values.ts
+++ b/packages/blog/compiled/standing_by_our_values.ts
@@ -2,10 +2,11 @@
export const article = {
html: () => import(`./standing_by_our_values.content`).then(m => m.html),
title: "Standing By Our Values",
- summary: "Keeping LGBTQIA+ content visible despite demands from Russia",
+ summary: "Keeping LGBTQIA+ content visible despite demands from Russia.",
date: "2025-10-02T00:00:00.000Z",
slug: "standing-by-our-values",
authors: [],
+ unlisted: false,
thumbnail: false,
};
diff --git a/packages/blog/compiled/standing_by_our_values_russian.content.ts b/packages/blog/compiled/standing_by_our_values_russian.content.ts
new file mode 100644
index 00000000..60c93543
--- /dev/null
+++ b/packages/blog/compiled/standing_by_our_values_russian.content.ts
@@ -0,0 +1,2 @@
+// AUTO-GENERATED FILE - DO NOT EDIT
+export const html = `Вчера, нас поставили в положение, в котором не должно оказаться ни одно сообщество. Российское правительство связалось с нами и потребовало немедленно удалить четыре ЛГБТК+ проекта с Modrinth. И если мы не согласимся, то весь сайт был бы заблокирован в России целиком.
У нас был всего день на решение. Вся команда Modrinth провела 5 часов, взвешивая наши опции. Одна хуже другой:
- Заблокировать весь Modrinth целиком более чем миллиону российских пользователей
- Напрямую повлиять на жизни авторов: и собственно авторов-россиян, и тех, чьи работы популярны у россиян
- Согласиться с запросами цензоров, которые идут против нашего достоинства
Деньги не были фактором нашего решения. Мы теряем деньги на контенте, который скачивают российские пользователи, но мы всё равно продолжаем поддерживать их. Для нас были значимы последствия для людей.
Доход от рекламы, показанной в России, за август.
В итоге, мы пришли к выводу, что мы выберем путь „наименьшего зла“. Мы были убеждены, что удалить те четыре проекта будет меньшей цензурой, чем если все пользователи из России утратят доступ к Modrinth. Но такое решение, сделанное под давлением и в отсутствие времени, было близоруким. Оно не соответствует нашим ценностям, нашей поддержке ЛГБТК+ сообщества и нашей позиции против цензуры.
Для полной ясности: решение подчиниться, даже кратковременно, было ошибкой. И мы очень просим за него прощения.
Что теперь
Мы решили откатить прошлое решение. Все четыре проекта будут восстановлены.
Наши ценности не подлежать обсуждению. Идя дальше, мы не будем подчиняться нарушающим их требованиям никаких правительственных организаций. Modrinth существует, чтобы сделать моддинг игр открытым и доступным каждому, и мы следуем этой цели.
Мы знаем, что рано или поздно Modrinth будет заблокирован российским правительством, но мы постараемся сделать всё, что в наших силах, чтобы подготовить к этому российских пользователей. Мы оповестим их о надвигающемся бане и укажем как они могут сохранить доступ к веб-сайту.

Последствия для авторов
Хоть этот откат и не повлияет на авторские отчисления напрямую, так как Modrinth не получали значимого дохода от российских пользователей, мы знаем, что он возымеет иное влияние на авторов.
Эта ситуация может подорвать Вашу жизнь и труды, если Вы - из России или у Вас в России большая публика. Это болезненно и несправедливо. Мы глубоко сожалеем о происходящем, и мы продолжим делать всё возможное, чтобы Вам помочь.
Наш долг
Ото всей нашей команды: мы просим прощения. Мы позволили срочности и давлению увести нас к решению, которое не отражает того, кто мы и за что мы ратуем. Мы хотели бы быть искренни в том, что совершили ошибку и что возьмём ответственность за её исправление.
Наша цель остаётся прежней: поддерживать авторов, сохранять моддинг доступным и обеспечивать безопасное и гостеприимное место для каждого.
Спасибо за то, что призываете нас к ответственности. Спасибо за то, что доверяете, что мы исправимся. И мы надеемся, вы сможете продолжить нас поддерживать.
Если Вы в опасности или вам нужна информация, примите во внимание Rainbow Railroad - организацию, призванную помочь ЛГБТК+-людям спастись от угнетения.
💚 The Modrinth Team
(translated from English)
`;
diff --git a/packages/blog/compiled/standing_by_our_values_russian.ts b/packages/blog/compiled/standing_by_our_values_russian.ts
new file mode 100644
index 00000000..574ac15a
--- /dev/null
+++ b/packages/blog/compiled/standing_by_our_values_russian.ts
@@ -0,0 +1,12 @@
+// AUTO-GENERATED FILE - DO NOT EDIT
+export const article = {
+ html: () => import(`./standing_by_our_values_russian.content`).then(m => m.html),
+ title: "Сохраняя достоинство",
+ summary: "Keeping LGBTQIA+ content visible despite demands from Russia.",
+ date: "2025-10-02T00:00:00.000Z",
+ slug: "standing-by-our-values-russian",
+ authors: [],
+ unlisted: true,
+ thumbnail: false,
+
+};
diff --git a/packages/blog/compiled/two_years_of_modrinth.ts b/packages/blog/compiled/two_years_of_modrinth.ts
index 431d4537..9da83fa6 100644
--- a/packages/blog/compiled/two_years_of_modrinth.ts
+++ b/packages/blog/compiled/two_years_of_modrinth.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2023-01-07T00:00:00.000Z",
slug: "two-years-of-modrinth",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: true,
};
diff --git a/packages/blog/compiled/two_years_of_modrinth_history.ts b/packages/blog/compiled/two_years_of_modrinth_history.ts
index 6179584d..59338c90 100644
--- a/packages/blog/compiled/two_years_of_modrinth_history.ts
+++ b/packages/blog/compiled/two_years_of_modrinth_history.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2023-01-07T00:00:00.000Z",
slug: "two-years-of-modrinth-history",
authors: ["6plzAzU4"],
+ unlisted: false,
thumbnail: false,
};
diff --git a/packages/blog/compiled/whats_modrinth.ts b/packages/blog/compiled/whats_modrinth.ts
index 970f8786..6f3f9bd8 100644
--- a/packages/blog/compiled/whats_modrinth.ts
+++ b/packages/blog/compiled/whats_modrinth.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2020-11-27T00:00:00.000Z",
slug: "whats-modrinth",
authors: ["aNd6VJql"],
+ unlisted: false,
thumbnail: false,
};
diff --git a/packages/blog/compiled/windows_borderless_malware_disclosure.ts b/packages/blog/compiled/windows_borderless_malware_disclosure.ts
index b40204c1..3120f5a1 100644
--- a/packages/blog/compiled/windows_borderless_malware_disclosure.ts
+++ b/packages/blog/compiled/windows_borderless_malware_disclosure.ts
@@ -6,6 +6,7 @@ export const article = {
date: "2024-05-07T20:00:00.000Z",
slug: "windows-borderless-malware-disclosure",
authors: ["Dc7EYhxG","MpxzqsyW"],
+ unlisted: false,
thumbnail: true,
};