From f596ae969394396409686c3a54b1b1fd035a7769 Mon Sep 17 00:00:00 2001
From: pingguomc <141195321+pingguomc@users.noreply.github.com>
Date: Mon, 11 Aug 2025 21:50:49 +0800
Subject: [PATCH 1/5] =?UTF-8?q?feat:=20=E5=8E=86=E5=8F=B2=E6=97=B6?=
=?UTF-8?q?=E9=97=B4=E8=BD=B4?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
docs/history/history-river.md | 37 ++++
.../\345\216\206\345\217\262\346\262\263.md" | 11 -
.../HistoryTimeline/HistoryTimeline.css | 195 ++++++++++++++++++
.../HistoryTimeline/HistoryTimeline.jsx | 80 +++++++
4 files changed, 312 insertions(+), 11 deletions(-)
create mode 100644 docs/history/history-river.md
delete mode 100644 "docs/history/\345\216\206\345\217\262\346\262\263.md"
create mode 100644 src/components/HistoryTimeline/HistoryTimeline.css
create mode 100644 src/components/HistoryTimeline/HistoryTimeline.jsx
diff --git a/docs/history/history-river.md b/docs/history/history-river.md
new file mode 100644
index 0000000..60ecc11
--- /dev/null
+++ b/docs/history/history-river.md
@@ -0,0 +1,37 @@
+---
+sidebar_position: 1
+---
+
+# ⛔社区大事记
+
+import HistoryTimeline from '@site/src/components/HistoryTimeline/HistoryTimeline';
+
+
\ No newline at end of file
diff --git "a/docs/history/\345\216\206\345\217\262\346\262\263.md" "b/docs/history/\345\216\206\345\217\262\346\262\263.md"
deleted file mode 100644
index 51e4622..0000000
--- "a/docs/history/\345\216\206\345\217\262\346\262\263.md"
+++ /dev/null
@@ -1,11 +0,0 @@
----
-sidebar_position: 1
----
-
-# ⛔社区大事记
-
-记录了社区的历史大事件,具体内容将折叠在本目录下。
-
-***
-
-## TODO
\ No newline at end of file
diff --git a/src/components/HistoryTimeline/HistoryTimeline.css b/src/components/HistoryTimeline/HistoryTimeline.css
new file mode 100644
index 0000000..4de26e2
--- /dev/null
+++ b/src/components/HistoryTimeline/HistoryTimeline.css
@@ -0,0 +1,195 @@
+/* 时间轴容器 */
+.timeline-container {
+ position: relative;
+ max-width: 1200px;
+ margin: 2rem auto;
+ padding: 0 1rem;
+}
+
+/* 排序切换按钮 */
+.timeline-toggle {
+ position: relative;
+ z-index: 10; /* 确保在轴线之上 */
+ margin: 0 0 2rem auto; /* 右对齐 */
+ padding: 0.5rem 1.25rem;
+ background-color: var(--balance-2);
+ color: var(--bg-container);
+ border: none;
+ border-radius: 4px;
+ font-size: 0.9rem;
+ cursor: pointer;
+ transition: all var(--transition-normal);
+ display: block; /* 确保margin生效 */
+}
+
+.timeline-toggle:hover {
+ background-color: var(--primary);
+ transform: translateY(-2px);
+ box-shadow: 0 2px 8px rgba(230, 92, 79, 0.25);
+}
+
+/* 中央轴线 */
+.timeline-axis {
+ position: absolute;
+ left: 50%;
+ top: 0;
+ bottom: 0;
+ width: 4px;
+ background: linear-gradient(
+ to bottom,
+ var(--primary-light),
+ var(--balance-2),
+ var(--primary-dark)
+ ); /* 多色渐变 */
+ transform: translateX(-50%);
+ border-radius: 2px;
+}
+
+/* 时间轴项目容器 */
+.timeline-item {
+ position: relative;
+ margin-bottom: 3rem;
+ opacity: 0;
+ transform: translateY(20px);
+ transition: all 0.5s ease;
+ width: 45%;
+}
+
+/* 左右交替布局 */
+.timeline-item-left {
+ left: 0;
+}
+
+.timeline-item-right {
+ left: 55%;
+}
+
+/* 项目可见性动画 */
+.timeline-item.visible {
+ opacity: 1;
+ transform: translateY(0);
+}
+
+/* 内容卡片 */
+.timeline-content {
+ background-color: var(--bg-container);
+ border: 1px solid var(--border-medium);
+ border-radius: 8px;
+ padding: 1.25rem;
+ box-shadow: var(--shadow-sm);
+ transition: all 0.3s ease;
+ border-left: 3px solid transparent; /* 左侧预留边框位 */
+}
+
+/* 左右卡片区分配色 */
+.timeline-item-left .timeline-content {
+ border-left-color: var(--balance-2); /* 左卡片左侧边用平衡色2 */
+}
+
+.timeline-item-right .timeline-content {
+ border-left-color: var(--primary); /* 右卡片左侧边用主色 */
+}
+
+.timeline-item:hover .timeline-content {
+ transform: scale(1.02);
+ box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
+}
+
+/* 日期标签 */
+.timeline-date {
+ color: var(--balance-2);
+ font-weight: 600;
+ margin-bottom: 0.5rem;
+ font-size: 0.9rem;
+ display: inline-block;
+ padding: 0.2rem 0.6rem;
+ background-color: rgba(61, 90, 108, 0.1);
+ border-radius: 4px;
+}
+
+/* 标题样式 */
+.timeline-title {
+ margin: 0 0 0.75rem 0;
+ color: var(--text-primary);
+ font-size: 1.2rem;
+}
+
+/* 描述文本 */
+.timeline-description {
+ color: var(--text-secondary);
+ font-size: 0.95rem;
+ line-height: 1.6;
+}
+
+/* 连接点样式 */
+.timeline-dot {
+ position: absolute;
+ top: 1.5rem;
+ width: 1.5rem;
+ height: 1.5rem;
+ border-radius: 50%;
+ background-color: var(--bg-container);
+ border: 3px solid var(--balance-2);
+ box-shadow: 0 0 0 2px rgba(230, 92, 79, 0.3);
+ transition: transform 0.3s ease;
+ z-index: 5;
+}
+
+/* 左右项目的连接点位置调整 */
+.timeline-item-left .timeline-dot {
+ right: -1.125rem; /* 右侧超出 */
+}
+
+.timeline-item-right .timeline-dot {
+ left: -1.125rem; /* 左侧超出 */
+}
+
+.timeline-item:hover .timeline-dot {
+ transform: scale(1.2);
+ box-shadow: 0 0 0 3px rgba(61, 90, 108, 0.2);
+}
+
+/* 响应式调整 */
+@media (max-width: 768px) {
+ /* 移动端轴线居中 */
+ .timeline-axis {
+ left: 1.5rem;
+ }
+
+ /* 移动端所有项目居左 */
+ .timeline-item {
+ width: 100%;
+ left: 0 !important;
+ padding-left: 4rem;
+ }
+
+ /* 调整连接点位置 */
+ .timeline-item .timeline-dot {
+ left: 0.375rem; /* 与轴线对齐 */
+ right: auto;
+ }
+
+ /* 按钮适配 */
+ .timeline-toggle {
+ margin-right: 0.5rem;
+ padding: 0.4rem 1rem;
+ font-size: 0.85rem;
+ }
+}
+
+/* 深色模式适配 */
+html[data-theme='dark'] .timeline-date {
+ background-color: rgba(61, 90, 108, 0.3);
+}
+
+html[data-theme='dark'] .timeline-item-left .timeline-content {
+ border-left-color: var(--balance-3);
+}
+
+html[data-theme='dark'] .timeline-dot {
+ box-shadow: 0 0 0 2px rgba(240, 120, 106, 0.4);
+}
+
+html[data-theme='dark'] .timeline-item:hover .timeline-dot {
+ box-shadow: 0 0 0 3px rgba(185, 197, 205, 0.2);
+}
\ No newline at end of file
diff --git a/src/components/HistoryTimeline/HistoryTimeline.jsx b/src/components/HistoryTimeline/HistoryTimeline.jsx
new file mode 100644
index 0000000..684f7bb
--- /dev/null
+++ b/src/components/HistoryTimeline/HistoryTimeline.jsx
@@ -0,0 +1,80 @@
+import React, { useState, useEffect, useMemo } from 'react';
+import clsx from 'clsx';
+import './HistoryTimeline.css';
+
+const HistoryTimeline = ({ events }) => {
+ const [visibleEvents, setVisibleEvents] = useState([]);
+ const [isAscending, setIsAscending] = useState(false); // 默认倒序(最新在前)
+
+ // 按日期排序事件(核心逻辑)
+ const sortedEvents = useMemo(() => {
+ // 复制并排序事件数组(避免修改原数据)
+ return [...events].sort((a, b) => {
+ const dateA = new Date(a.date);
+ const dateB = new Date(b.date);
+ return isAscending ? dateA - dateB : dateB - dateA;
+ });
+ }, [events, isAscending]);
+
+ // 监听滚动,更新可见性
+ useEffect(() => {
+ const handleScroll = () => {
+ const newVisible = sortedEvents.map((_, index) => {
+ const element = document.getElementById(`timeline-item-${index}`);
+ if (!element) return false;
+
+ const rect = element.getBoundingClientRect();
+ return rect.top < window.innerHeight * 0.85; // 当元素进入视口85%时视为可见
+ });
+ setVisibleEvents(newVisible);
+ };
+
+ handleScroll(); // 初始检查
+ window.addEventListener('scroll', handleScroll);
+ return () => window.removeEventListener('scroll', handleScroll);
+ }, [sortedEvents]); // 排序变化时重新监听
+
+ // 切换排序方向
+ const toggleOrder = () => {
+ setIsAscending(!isAscending);
+ setVisibleEvents([]); // 重置可见性,触发重新计算
+ };
+
+ return (
+
+ {/* 排序切换按钮 */}
+
+
+ {/* 中央轴线 */}
+
+
+ {/* 排序后的事件列表 */}
+ {sortedEvents.map((event, index) => (
+
+
+
{event.date}
+
{event.title}
+
{event.description}
+
+
+
+ ))}
+
+ );
+};
+
+export default HistoryTimeline;
\ No newline at end of file
From 5fcfe007220455f1dbecdf7c713c38c0b8522332 Mon Sep 17 00:00:00 2001
From: pingguomc <141195321+pingguomc@users.noreply.github.com>
Date: Mon, 11 Aug 2025 22:36:40 +0800
Subject: [PATCH 2/5] =?UTF-8?q?perf:=20=E7=BB=84=E4=BB=B6=E6=A0=B7?=
=?UTF-8?q?=E5=BC=8F=E4=BF=AE=E6=94=B9?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
.../HistoryTimeline/HistoryTimeline.css | 173 +++++-------------
.../HistoryTimeline/HistoryTimeline.jsx | 54 +++---
2 files changed, 77 insertions(+), 150 deletions(-)
diff --git a/src/components/HistoryTimeline/HistoryTimeline.css b/src/components/HistoryTimeline/HistoryTimeline.css
index 4de26e2..bb8c31b 100644
--- a/src/components/HistoryTimeline/HistoryTimeline.css
+++ b/src/components/HistoryTimeline/HistoryTimeline.css
@@ -1,16 +1,14 @@
-/* 时间轴容器 */
-.timeline-container {
+.rsmc-timeline {
position: relative;
max-width: 1200px;
margin: 2rem auto;
padding: 0 1rem;
}
-/* 排序切换按钮 */
-.timeline-toggle {
+.rsmc-timeline__toggle {
position: relative;
- z-index: 10; /* 确保在轴线之上 */
- margin: 0 0 2rem auto; /* 右对齐 */
+ z-index: 10;
+ margin: 0 0 2rem auto;
padding: 0.5rem 1.25rem;
background-color: var(--balance-2);
color: var(--bg-container);
@@ -18,178 +16,103 @@
border-radius: 4px;
font-size: 0.9rem;
cursor: pointer;
- transition: all var(--transition-normal);
- display: block; /* 确保margin生效 */
+ display: block;
}
-.timeline-toggle:hover {
- background-color: var(--primary);
- transform: translateY(-2px);
- box-shadow: 0 2px 8px rgba(230, 92, 79, 0.25);
-}
-
-/* 中央轴线 */
-.timeline-axis {
+.rsmc-timeline__axis {
position: absolute;
left: 50%;
top: 0;
bottom: 0;
width: 4px;
- background: linear-gradient(
- to bottom,
- var(--primary-light),
- var(--balance-2),
- var(--primary-dark)
- ); /* 多色渐变 */
+ background: linear-gradient(to bottom, var(--primary-light), var(--balance-2), var(--primary-dark));
transform: translateX(-50%);
- border-radius: 2px;
+ z-index: 1;
}
-/* 时间轴项目容器 */
-.timeline-item {
+.rsmc-timeline__item {
position: relative;
+ width: 45%;
margin-bottom: 3rem;
opacity: 0;
transform: translateY(20px);
transition: all 0.5s ease;
- width: 45%;
-}
-
-/* 左右交替布局 */
-.timeline-item-left {
- left: 0;
}
-.timeline-item-right {
- left: 55%;
-}
+.rsmc-timeline__item--left { left: 0; }
+.rsmc-timeline__item--right { left: 55%; }
+.rsmc-timeline__item.visible { opacity: 1; transform: translateY(0); }
-/* 项目可见性动画 */
-.timeline-item.visible {
- opacity: 1;
- transform: translateY(0);
-}
-
-/* 内容卡片 */
-.timeline-content {
+.rsmc-timeline__content {
background-color: var(--bg-container);
border: 1px solid var(--border-medium);
border-radius: 8px;
padding: 1.25rem;
box-shadow: var(--shadow-sm);
- transition: all 0.3s ease;
- border-left: 3px solid transparent; /* 左侧预留边框位 */
}
-/* 左右卡片区分配色 */
-.timeline-item-left .timeline-content {
- border-left-color: var(--balance-2); /* 左卡片左侧边用平衡色2 */
-}
+.rsmc-timeline__item--left .rsmc-timeline__content { border-left: 3px solid var(--balance-2); }
+.rsmc-timeline__item--right .rsmc-timeline__content { border-left: 3px solid var(--primary); }
-.timeline-item-right .timeline-content {
- border-left-color: var(--primary); /* 右卡片左侧边用主色 */
-}
-
-.timeline-item:hover .timeline-content {
- transform: scale(1.02);
- box-shadow: 0 4px 12px rgba(0, 0, 0, 0.08);
-}
-
-/* 日期标签 */
-.timeline-date {
+.rsmc-timeline__date {
color: var(--balance-2);
font-weight: 600;
margin-bottom: 0.5rem;
font-size: 0.9rem;
- display: inline-block;
- padding: 0.2rem 0.6rem;
- background-color: rgba(61, 90, 108, 0.1);
- border-radius: 4px;
}
-/* 标题样式 */
-.timeline-title {
+.rsmc-timeline__title {
margin: 0 0 0.75rem 0;
- color: var(--text-primary);
- font-size: 1.2rem;
+ font-size: 1.25rem;
+ font-weight: 600;
+ color: var(--balance-1);
+}
+
+.rsmc-timeline__title-link {
+ color: inherit;
+ text-decoration: none;
+ font-size: inherit;
+ font-weight: inherit;
}
-/* 描述文本 */
-.timeline-description {
+.rsmc-timeline__title-link:hover {
+ color: var(--primary);
+ text-decoration: underline;
+}
+
+.rsmc-timeline__description {
color: var(--text-secondary);
font-size: 0.95rem;
line-height: 1.6;
}
-/* 连接点样式 */
-.timeline-dot {
+.rsmc-timeline__dot {
position: absolute;
top: 1.5rem;
- width: 1.5rem;
- height: 1.5rem;
+ width: 20px;
+ height: 20px;
border-radius: 50%;
background-color: var(--bg-container);
border: 3px solid var(--balance-2);
- box-shadow: 0 0 0 2px rgba(230, 92, 79, 0.3);
- transition: transform 0.3s ease;
z-index: 5;
}
-/* 左右项目的连接点位置调整 */
-.timeline-item-left .timeline-dot {
- right: -1.125rem; /* 右侧超出 */
-}
+.rsmc-timeline__item--left .rsmc-timeline__dot { right: -12px; }
+.rsmc-timeline__item--right .rsmc-timeline__dot { left: -12px; }
-.timeline-item-right .timeline-dot {
- left: -1.125rem; /* 左侧超出 */
-}
-
-.timeline-item:hover .timeline-dot {
- transform: scale(1.2);
- box-shadow: 0 0 0 3px rgba(61, 90, 108, 0.2);
-}
-
-/* 响应式调整 */
@media (max-width: 768px) {
- /* 移动端轴线居中 */
- .timeline-axis {
- left: 1.5rem;
+ .rsmc-timeline__axis {
+ left: 30px;
+ transform: none;
}
-
- /* 移动端所有项目居左 */
- .timeline-item {
+ .rsmc-timeline__item {
width: 100%;
left: 0 !important;
- padding-left: 4rem;
- }
-
- /* 调整连接点位置 */
- .timeline-item .timeline-dot {
- left: 0.375rem; /* 与轴线对齐 */
- right: auto;
+ padding-left: 60px;
}
-
- /* 按钮适配 */
- .timeline-toggle {
- margin-right: 0.5rem;
- padding: 0.4rem 1rem;
- font-size: 0.85rem;
+ .rsmc-timeline__dot {
+ left: 30px !important;
+ right: auto !important;
+ transform: translateX(-50%);
}
-}
-
-/* 深色模式适配 */
-html[data-theme='dark'] .timeline-date {
- background-color: rgba(61, 90, 108, 0.3);
-}
-
-html[data-theme='dark'] .timeline-item-left .timeline-content {
- border-left-color: var(--balance-3);
-}
-
-html[data-theme='dark'] .timeline-dot {
- box-shadow: 0 0 0 2px rgba(240, 120, 106, 0.4);
-}
-
-html[data-theme='dark'] .timeline-item:hover .timeline-dot {
- box-shadow: 0 0 0 3px rgba(185, 197, 205, 0.2);
}
\ No newline at end of file
diff --git a/src/components/HistoryTimeline/HistoryTimeline.jsx b/src/components/HistoryTimeline/HistoryTimeline.jsx
index 684f7bb..406ec70 100644
--- a/src/components/HistoryTimeline/HistoryTimeline.jsx
+++ b/src/components/HistoryTimeline/HistoryTimeline.jsx
@@ -4,11 +4,9 @@ import './HistoryTimeline.css';
const HistoryTimeline = ({ events }) => {
const [visibleEvents, setVisibleEvents] = useState([]);
- const [isAscending, setIsAscending] = useState(false); // 默认倒序(最新在前)
+ const [isAscending, setIsAscending] = useState(false);
- // 按日期排序事件(核心逻辑)
const sortedEvents = useMemo(() => {
- // 复制并排序事件数组(避免修改原数据)
return [...events].sort((a, b) => {
const dateA = new Date(a.date);
const dateB = new Date(b.date);
@@ -16,61 +14,67 @@ const HistoryTimeline = ({ events }) => {
});
}, [events, isAscending]);
- // 监听滚动,更新可见性
useEffect(() => {
const handleScroll = () => {
const newVisible = sortedEvents.map((_, index) => {
const element = document.getElementById(`timeline-item-${index}`);
if (!element) return false;
-
const rect = element.getBoundingClientRect();
- return rect.top < window.innerHeight * 0.85; // 当元素进入视口85%时视为可见
+ return rect.top < window.innerHeight * 0.85;
});
setVisibleEvents(newVisible);
};
- handleScroll(); // 初始检查
+ handleScroll();
window.addEventListener('scroll', handleScroll);
return () => window.removeEventListener('scroll', handleScroll);
- }, [sortedEvents]); // 排序变化时重新监听
+ }, [sortedEvents]);
- // 切换排序方向
const toggleOrder = () => {
setIsAscending(!isAscending);
- setVisibleEvents([]); // 重置可见性,触发重新计算
+ setVisibleEvents([]);
};
return (
-
- {/* 排序切换按钮 */}
+
- {/* 中央轴线 */}
-
+
- {/* 排序后的事件列表 */}
{sortedEvents.map((event, index) => (
-
-
{event.date}
-
{event.title}
-
{event.description}
+
+
{event.date}
+
+ {event.url ? (
+
+ {event.title}
+
+ ) : (
+ event.title
+ )}
+
+
{event.description}
-
+
))}
From 92c68264ab36856638bb9e30bd16bfc65bb6f66f Mon Sep 17 00:00:00 2001
From: pingguomc <141195321+pingguomc@users.noreply.github.com>
Date: Tue, 12 Aug 2025 10:39:59 +0800
Subject: [PATCH 3/5] =?UTF-8?q?perf:=20=E4=BF=AE=E6=94=B9=E9=83=A8?=
=?UTF-8?q?=E5=88=86=E6=A0=B7=E5=BC=8F?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/components/HistoryTimeline/HistoryTimeline.css | 7 ++++++-
src/components/HistoryTimeline/HistoryTimeline.jsx | 4 ++--
2 files changed, 8 insertions(+), 3 deletions(-)
diff --git a/src/components/HistoryTimeline/HistoryTimeline.css b/src/components/HistoryTimeline/HistoryTimeline.css
index bb8c31b..bdebbef 100644
--- a/src/components/HistoryTimeline/HistoryTimeline.css
+++ b/src/components/HistoryTimeline/HistoryTimeline.css
@@ -1,3 +1,6 @@
+/*
+ * 使用 AI 生成并人工修改。
+ */
.rsmc-timeline {
position: relative;
max-width: 1200px;
@@ -17,6 +20,7 @@
font-size: 0.9rem;
cursor: pointer;
display: block;
+ /*display: none;*/
}
.rsmc-timeline__axis {
@@ -115,4 +119,5 @@
right: auto !important;
transform: translateX(-50%);
}
-}
\ No newline at end of file
+}
+
diff --git a/src/components/HistoryTimeline/HistoryTimeline.jsx b/src/components/HistoryTimeline/HistoryTimeline.jsx
index 406ec70..0534dbe 100644
--- a/src/components/HistoryTimeline/HistoryTimeline.jsx
+++ b/src/components/HistoryTimeline/HistoryTimeline.jsx
@@ -41,7 +41,7 @@ const HistoryTimeline = ({ events }) => {
className="rsmc-timeline__toggle"
onClick={toggleOrder}
>
- {isAscending ? '切换为 最新在前' : '切换为 最早在前'}
+ {isAscending ? '最新在前' : '最早在前'}
@@ -74,7 +74,7 @@ const HistoryTimeline = ({ events }) => {
{event.description}
-
+ {/*
*/}
))}
From 8c1e46c3ee3b75034ce2d0725b8a7769fc6425f5 Mon Sep 17 00:00:00 2001
From: pingguomc <141195321+pingguomc@users.noreply.github.com>
Date: Tue, 12 Aug 2025 10:40:24 +0800
Subject: [PATCH 4/5] =?UTF-8?q?feat:=20=E6=B7=BB=E5=8A=A0=E4=BA=86?=
=?UTF-8?q?=E9=83=A8=E5=88=86=E5=8E=86=E5=8F=B2?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
docs/history/history-river.md | 100 +++++++++++++++++++++++++++++-----
1 file changed, 85 insertions(+), 15 deletions(-)
diff --git a/docs/history/history-river.md b/docs/history/history-river.md
index 60ecc11..cb32094 100644
--- a/docs/history/history-river.md
+++ b/docs/history/history-river.md
@@ -2,7 +2,7 @@
sidebar_position: 1
---
-# ⛔社区大事记
+# 社区大事记
import HistoryTimeline from '@site/src/components/HistoryTimeline/HistoryTimeline';
@@ -10,28 +10,98 @@ import HistoryTimeline from '@site/src/components/HistoryTimeline/HistoryTimelin
events={[
{
date: "2021-12-21",
-title: "第一任腐竹任职",
-description: "fuck(即 CreeperHenlv) 担任第一任腐竹,社区雏形形成。"
+title: "服务器前身成立",
+description: "fuck(即 CreeperHenlv) 作为服主。此时服务器称作 “喵奈-很绿生存双服“。"
},
{
-date: "2022-1-20",
-title: "后台职务设立",
-description: "pingguo 担任后台(该职务后分散为运维和管理)。"
+date: "2022-01-11",
+title: "第一个宣传片发布",
+description: "但是流量寥寥无几。"
},
{
-date: "2022-8-7",
+date: "2022-01-14",
+title: "我们的宗旨是给玩家带来快乐",
+description: "宗旨被提出并延续至今。"
+},
+{
+date: "2022-01",
+title: "第一个管理条例制定完成",
+description: "制度的开始。"
+},
+{
+date: "2022-02-07",
+title: "服务器更名为 MINEIMPACT",
+description: "简称 MI。"
+},
+{
+date: "2022-04-04",
+title: "繁星联盟成立",
+description: "pingguo 担任负责人,CreeperHenlv 聚集了部分腐竹打算一同开服。"
+},
+{
+date: "2022-05-21",
+title: "繁星联盟解体",
+description: "发生内讧,联盟群群主账号被封禁。联盟解体。"
+},
+{
+date: "2022-08-7",
title: "管理组成立",
-description: "pingguo 成立管理组,规范社区管理流程。"
+description: "管理组成立标志着集体决策机制的形成。"
+},
+{
+date: "2022-10-6",
+title: "RedStarMC 社区成立",
+description: "历史的车轮滚滚向前。"
+},
+{
+date: "2023-07-29",
+title: "wenjian 购买了新的物理机。",
+description: "后续服务器均运行在这台物理机上,同年 9 月份 wenjian 担任了腐竹。"
},
{
-date: "2023-8",
-title: "腐竹与运维换届",
-description: "wenjian 担任第三任腐竹,pingguo 担任第二任运维。"
+date: "2023-07",
+title: "生存一服开服",
+description: "生存一服开启,版本为 1.19.4。"
},
{
-date: "2024-2-5",
-title: "新增协管",
-description: "Snowphier 担任协管,协助社区日常管理。"
-}
+date: "2023-11-21",
+title: "域名正式启用",
+description: "redstarmc.top 域名注册。"
+},
+{
+date: "2024-01-24",
+title: "生存一服宣传片发布",
+description: "“这 是 一 个 核 邪 铀 碍 的 服 务 器”",
+url: "https://www.bilibili.com/video/BV1ZK411a7Gy/"
+},
+{
+date: "2024-06-15",
+title: "社区 Github 组织成立",
+description: "官网托管到仓库",
+url: "https://github.com/RedStarMC"
+},
+{
+date: "2024-12-29",
+title: "2025 新春地图发布",
+description: "新年快乐!地图里包含了许多小游戏。",
+url: "https://www.bilibili.com/video/BV17y68YdEqs"
+},
+{
+date: "2025-01-20",
+title: "生存二服(现称 粘液生存服)",
+description: "粘液生存服开启,版本为 1.21.1。"
+},
+{
+date: "2025-01-23",
+title: "生存二服宣传片发布",
+description: "“粘液科技服务器!离线可进!公益不跑路!趣味小游戏",
+url: "https://www.bilibili.com/video/BV1EDfBY8Ec6"
+},
+{
+date: "2025-04-06",
+title: "社区维基建立",
+description: "RedStarMC社区的百科全书",
+url: "https://wiki.redstarmc.top/"
+},
]}
/>
\ No newline at end of file
From e68927bb125aa7d05896929963398f9115c71220 Mon Sep 17 00:00:00 2001
From: pingguomc <141195321+pingguomc@users.noreply.github.com>
Date: Thu, 14 Aug 2025 11:52:27 +0800
Subject: [PATCH 5/5] =?UTF-8?q?perf:=20SEO=E4=BC=98=E5=8C=96=20fix:=20?=
=?UTF-8?q?=E7=BC=96=E8=BE=91=E6=AD=A4=E9=A1=B5=E7=9A=84=E9=93=BE=E6=8E=A5?=
=?UTF-8?q?=E9=94=99=E8=AF=AF?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
docusaurus.config.js | 24 +++++++++++-------------
1 file changed, 11 insertions(+), 13 deletions(-)
diff --git a/docusaurus.config.js b/docusaurus.config.js
index 900c56c..3a919b4 100644
--- a/docusaurus.config.js
+++ b/docusaurus.config.js
@@ -52,7 +52,7 @@ const config = {
showLastUpdateAuthor: true,
showLastUpdateTime: true,
editUrl:
- 'https://github.com/redstarmc/Wiki/'
+ 'https://github.com/redstarmc/Wiki/tree/main/'
},
blog: false,
theme: {
@@ -68,8 +68,8 @@ const config = {
// Replace with your project's social card
image: 'img/docusaurus-social-card.jpg',
metadata: [
- {name: 'keywords', content: 'redstarmc,红星我的世界社区,Wiki,维基,文档,服务器,红星'},
- {name: 'description', content: '红星我的世界社区维基'},
+ {name: 'keywords', content: 'redstarmc,红星我的世界社区,MC,我的世界,Minecraft,Wiki,维基,文档,服务器,红星,RS,RedStar,推荐,Java,优质,怎么'},
+ {name: 'description', content: '红星我的世界社区(www.redstarmc.top),是一个致力于为玩家带来快乐的游戏社区。这里是它的维基,我们可以为你的游玩过程提供许多帮助!也能从这里即时获取服务器的最新消息。'},
],
navbar: {
title: '红星我的世界社区维基',
@@ -103,23 +103,21 @@ const config = {
type: 'docSidebar',
sidebarId: 'tutorialSidebar',
position: 'right',
- label: '管理人员必看',
+ label: '管理人员页面',
docsPluginId: 'admin'
},
-// {
-// type: 'docSidebar',
-// sidebarId: 'tutorialSidebar',
-// position: 'left',
-// label: '日志',
-// docsPluginId: 'logs'
-// },
// 搜索框
{
type: 'search',
position: 'right',
},
{
- href: 'https://github.com/redstarmc/Wiki',
+ href: 'https://www.redstarmc.top',
+ position: 'right',
+ label: '官网',
+ },
+ {
+ href: 'https://github.com/RedStarMC',
position: 'right',
label: 'GitHub',
},
@@ -203,7 +201,7 @@ const config = {
],
// 底部版权信息
// copyright: `Copyright © 2021 - ${new Date().getFullYear()} RedStarMC Community, All Rights Reserved.`
- copyright: `红星我的世界社区 维基 © 2021 - ${new Date().getFullYear()} 由 红星我的世界社区 授权 CC BY-NC-SA 4.0 许可协议


`
+ copyright: `红星我的世界社区维基 © 2021 - ${new Date().getFullYear()} 由 红星我的世界社区 授权 CC BY-NC-SA 4.0 许可协议


`
},
// 深浅主题
prism: {