first commit

This commit is contained in:
GiriNeko 2024-10-22 23:59:24 +08:00
commit fa65e2e9dc
32 changed files with 6059 additions and 0 deletions

10
.gitattributes vendored Normal file
View file

@ -0,0 +1,10 @@
* text eol=lf
*.txt text eol=crlf
*.png binary
*.jpg binary
*.jpeg binary
*.ico binary
*.tff binary
*.woff binary
*.woff2 binary

56
.github/workflows/deploy.yml vendored Normal file
View file

@ -0,0 +1,56 @@
name: deploy
on:
# 每当 push 到 main 分支时触发部署
# Deployment is triggered whenever a push is made to the main branch.
push:
branches: [main]
# 手动触发部署
# Manually trigger deployment
workflow_dispatch:
jobs:
docs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
# “最近更新时间” 等 git 日志相关信息,需要拉取全部提交记录
# "Last updated time" and other git log-related information require fetching all commit records.
fetch-depth: 0
- name: Setup pnpm
uses: pnpm/action-setup@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
# 选择要使用的 node 版本
node-version: 20
# 安装依赖
# Install dependencies
- name: Install Dependencies
run: pnpm install --frozen-lockfile
# 运行构建脚本
# Run the build script
- name: Build VuePress site
run: pnpm run docs:build
# 查看 workflow 的文档来获取更多信息
# @see https://github.com/crazy-max/ghaction-github-pages
- name: Deploy to GitHub Pages
uses: crazy-max/ghaction-github-pages@v4
with:
# 部署到 gh-pages 分支
target_branch: gh-pages
# 部署目录为 VuePress 的默认输出目录
build_dir: docs/.vuepress/dist
env:
# @see https://docs.github.com/cn/actions/reference/authentication-in-a-workflow#about-the-github_token-secret
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

8
.gitignore vendored Normal file
View file

@ -0,0 +1,8 @@
**/node_modules
docs/.vuepress/.cache
docs/.vuepress/.temp
docs/.vuepress/dist
.DS_Store
*.log

2
.npmrc Normal file
View file

@ -0,0 +1,2 @@
shamefully-hoist=true
shell-emulator=true

17
docs/.vuepress/client.ts Normal file
View file

@ -0,0 +1,17 @@
import { defineClientConfig } from 'vuepress/client'
import staff from './theme/components/staff.vue'
import info from './theme/components/info.vue'
// import RepoCard from 'vuepress-theme-plume/features/RepoCard.vue'
// import CustomComponent from './theme/components/Custom.vue'
// import './theme/styles/custom.css'
export default defineClientConfig({
enhance({ app }) {
// app.component('RepoCard', RepoCard)
// app.component('CustomComponent', CustomComponent)
app.component('staff', staff)
app.component('info', info)
},
})

89
docs/.vuepress/config.ts Normal file
View file

@ -0,0 +1,89 @@
import { viteBundler } from '@vuepress/bundler-vite'
import { defineUserConfig } from 'vuepress'
import { plumeTheme } from 'vuepress-theme-plume'
export default defineUserConfig({
base: '/',
lang: 'zh-CN',
locales: {
'/': {
title: 'RainCraft',
lang: 'zh-CN',
description: 'An Minecraft Server.',
},
'/en/': {
title: 'RainCraft',
lang: 'en-US',
description: 'An Minecraft Server.',
},
},
bundler: viteBundler(),
theme: plumeTheme({
// 添加您的部署域名
hostname: 'https://mc.ineko.cc',
plugins: {
/**
* Shiki
* @see https://theme-plume.vuejs.press/config/plugins/code-highlight/
*/
// shiki: {
// 强烈建议预设代码块高亮语言,插件默认加载所有语言会产生不必要的时间开销
// languages: ['shell', 'bash', 'typescript', 'javascript'],
// },
/**
* markdown enhance
* @see https://theme-plume.vuejs.press/config/plugins/markdown-enhance/
*/
markdownEnhance: {
demo: true,
// include: true,
// chart: true,
// echarts: true,
// mermaid: true,
// flowchart: true,
},
/**
* markdown power
* @see https://theme-plume.vuejs.press/config/plugin/markdown-power/
*/
// markdownPower: {
// pdf: true,
// caniuse: true,
// plot: true,
// bilibili: true,
// youtube: true,
// icons: true,
// codepen: true,
// replit: true,
// codeSandbox: true,
// jsfiddle: true,
// repl: {
// go: true,
// rust: true,
// kotlin: true,
// },
// },
/**
* comments
* @see https://theme-plume.vuejs.press/guide/features/comments/
*/
// comment: {
// provider: '', // "Artalk" | "Giscus" | "Twikoo" | "Waline"
// comment: true,
// repo: '',
// repoId: '',
// categoryId: '',
// mapping: 'pathname',
// reactionsEnabled: true,
// inputPosition: 'top',
// },
},
}),
})

37
docs/.vuepress/navbar.ts Normal file
View file

@ -0,0 +1,37 @@
import { defineNavbarConfig } from 'vuepress-theme-plume'
export const zhNavbar = defineNavbarConfig([
{ text: '首页', icon: 'icon-park-outline:home' , link: '/' },
{ text: '博客', icon: 'icon-park-outline:thinking-problem' , link: '/blog/' },
{ text: '投喂', icon: 'icon-park-outline:cup' , link: '/docs/donate/' },
{
text: '文档',
icon: 'icon-park-outline:document-folder',
items: [
{ text: '开始', link: '/docs/get-start/' },
]
},
{
text: '更多',
icon: 'icon-park-outline:more-two',
items: [
{ text: '皮肤站', link: 'https://skin.ineko.cc' },
{ text: '论坛', link: 'https://bbs.mc.ineko.cc' },
{ text: '联合封禁系统', link: 'https://uni-ban.mc.ineko.cc' }
]
},
])
export const enNavbar = defineNavbarConfig([
{ text: 'Home', icon: 'icon-park-outline:home' , link: '/en/' },
{
text: 'More',
icon: 'icon-park-outline:more-two',
items: [
{ text: 'BBS', link: 'https://bbs.mc.ineko.cc' },
{ text: 'Union Ban System', link: 'https://uni-ban.mc.ineko.cc' }
]
},
])

30
docs/.vuepress/notes.ts Normal file
View file

@ -0,0 +1,30 @@
import { defineNoteConfig, defineNotesConfig } from 'vuepress-theme-plume'
/* =================== locale: zh-CN ======================= */
const zhDemoNote = defineNoteConfig({
dir: 'demo',
link: '/demo',
sidebar: ['', 'foo', 'bar'],
})
export const zhNotes = defineNotesConfig({
dir: 'docs',
link: '/',
notes: [zhDemoNote],
})
/* =================== locale: en-US ======================= */
const enDemoNote = defineNoteConfig({
dir: 'demo',
link: '/demo',
sidebar: ['', 'foo', 'bar'],
})
export const enNotes = defineNotesConfig({
dir: 'en/docs',
link: '/en/',
notes: [enDemoNote],
})

View file

@ -0,0 +1,55 @@
import { defineThemeConfig } from 'vuepress-theme-plume'
import { enNavbar, zhNavbar } from './navbar'
import { enNotes, zhNotes } from './notes'
/**
* @see https://theme-plume.vuejs.press/config/basic/
*/
export default defineThemeConfig({
logo: '/images/raincraft-1x1-circle.png',
// your git repo url
docsRepo: '',
docsDir: 'docs',
appearance: true,
social: [
{ icon: 'github', link: 'https://github.com/RainCraft-Server' },
{ icon: 'bilibili', link: 'https://space.bilibili.com/3546384733047458' },
],
navbarSocialInclude: ['github', 'bilibili'],
footer: {
copyright: 'Made with ❤ by GiriNeko',
},
locales: {
'/': {
profile: {
avatar: '/images/raincraft-1x1.png',
name: 'RainCraft',
description: 'An Minecraft Server.',
circle: true,
// location: '',
// organization: '',
},
navbar: zhNavbar,
notes: zhNotes,
},
'/en/': {
profile: {
avatar: '/images/raincraft-1x1.png',
name: 'RainCraft',
description: 'An Minecraft Server.',
circle: true,
// location: '',
// organization: '',
},
navbar: enNavbar,
notes: enNotes,
},
},
})

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.4 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 710 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 364 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.6 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 67 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

View file

@ -0,0 +1,8 @@
<svg xmlns="http://www.w3.org/2000/svg" width="1em" height="1em" viewBox="0 0 72 72">
<path fill="#5086a1" d="M42.334 49.147a29.945 29.945 0 0 1-19.338-8.151c-8.014-7.365-8.378-18.076-8.533-22.649l-.022-.627a2.904 2.904 0 0 1 3.457-2.951c17.005 3.355 21.695 16.324 22.056 17.4a49.543 49.543 0 0 1 3.574 15.922a1 1 0 0 1-.967 1.052c-.029.001-.106.004-.227.004" />
<path fill="#8cccd5" d="M44.436 55.316c-11.646 0-17.376-6.974-17.653-7.354a1 1 0 0 1 .262-1.424a11.103 11.103 0 0 1 12.774-1.574c-1.465-9.078 1.877-13.568 2.031-13.77a.998.998 0 0 1 .75-.39a.97.97 0 0 1 .78.325c8.944 9.771 8.793 16.532 7.908 19.691c-.034.14-1.062 4.092-4.772 4.406c-.711.062-1.405.09-2.08.09" />
<g fill="none" stroke="#333" stroke-linecap="round" stroke-linejoin="round" stroke-width="1">
<path d="M55.184 57.69S34.96 45.877 23.097 24.206m22.131 30.096c-11.93.46-17.628-6.88-17.628-6.88" />
<path d="M40.528 42.483c-.56-7.195 2.116-10.679 2.116-10.679c8.834 9.654 8.406 16.162 7.681 18.747m-13.311-3.129a30.15 30.15 0 0 1-13.341-7.162c-8.072-7.419-8.067-18.241-8.232-22.577a1.903 1.903 0 0 1 2.264-1.932C34.694 19.103 39.02 32.528 39.02 32.528" />
</g>
</svg>

After

Width:  |  Height:  |  Size: 1.1 KiB

View file

@ -0,0 +1,11 @@
<script setup lang="ts">
import { ref } from 'vue'
const message = ref('Hello World!')
</script>
<template>
<div class="my-custom-content">
{{ message }}
</div>
</template>

View file

@ -0,0 +1,40 @@
<script setup lang="ts">
import type { PlumeHomeConfigBase } from 'vuepress-theme-plume'
const props = defineProps<PlumeHomeConfigBase & {
// props, frontmatter
}>()
</script>
<template>
<VPHomeBox
:type="type"
class="title"
:background-image="backgroundImage"
:background-attachment="backgroundAttachment"
:full="false"
>
<!-- <div><h1 style="text-align:center;font-size:28px;font-weight:bolder">管理团队</h1></div> -->
<div>
<CardGrid>
<ImageCard
image="/images/info-01.png"
title="友好的社区"
/>
<ImageCard
image="/images/info-02.png"
title="华丽的建筑"
/>
<ImageCard
image="/images/info-03.png"
title="佛系的玩家"
/>
<ImageCard
image="/images/info-04.png"
title="自由放松的世界"
/>
</CardGrid>
</div>
</VPHomeBox>
</template>

View file

@ -0,0 +1,25 @@
<script setup lang="ts">
import type { PlumeHomeConfigBase } from 'vuepress-theme-plume'
const props = defineProps<PlumeHomeConfigBase & {
// props, frontmatter
}>()
</script>
<template>
<VPHomeBox
:type="type"
class="title"
:background-image="backgroundImage"
:background-attachment="backgroundAttachment"
:full="false"
>
<div><h1 style="text-align:center;font-size:28px;font-weight:bolder">管理团队</h1></div>
<CardGrid :cols="{ sm: 1, md: 3, lg: 3 }">
<Card title="GiriNeko" icon="https://crafatar.com/avatars/9df952a339884a06a5fa0407ab9f9b6a"></Card>
<Card title="Kamisato_Kirara" icon="https://crafatar.com/avatars/4b5e4499e22142fe86eeebd493e1d114"></Card>
<Card title="xiaocao" icon="https://crafatar.com/avatars/308a81ddafef406c8ddb271ecd9d640e"></Card>
</CardGrid>
</VPHomeBox>
</template>

6
docs/.vuepress/theme/shim.d.ts vendored Normal file
View file

@ -0,0 +1,6 @@
declare module '*.vue' {
import type { ComponentOptions } from 'vue'
const comp: ComponentOptions
export default comp
}

View file

@ -0,0 +1,50 @@
:root {
/** 主题颜色 */
/*
--vp-c-brand-1: #5086a1;
--vp-c-brand-2: #6aa1b7;
--vp-c-brand-3: #8cccd5;
--vp-c-brand-soft: rgba(131, 208, 218, 0.314);
*/
/** 背景颜色 */
/*
--vp-c-bg: #fff;
--vp-c-bg-alt: #f6f6f7;
--vp-c-bg-elv: #fff;
--vp-c-bg-soft: #f6f6f7;
*/
/** 文本颜色 */
/*
--vp-c-text-1: rgba(60, 60, 67);
--vp-c-text-2: rgba(60, 60, 67, 0.78);
--vp-c-text-3: rgba(60, 60, 67, 0.56);
*/
}
/** 深色模式 */
[data-theme="dark"] {
/*
--vp-c-brand-1: #8cccd5;
--vp-c-brand-2: #6aa1b7;
--vp-c-brand-3: #5086a1;
--vp-c-brand-soft: rgba(131, 208, 218, 0.314);
*/
/*
--vp-c-bg: #1b1b1f;
--vp-c-bg-alt: #161618;
--vp-c-bg-elv: #202127;
--vp-c-bg-soft: #202127;
*/
/*
--vp-c-text-1: rgba(255, 255, 245, 0.86);
--vp-c-text-2: rgba(235, 235, 245, 0.6);
--vp-c-text-3: rgba(235, 235, 245, 0.38);
*/
}

56
docs/README.md Normal file
View file

@ -0,0 +1,56 @@
---
pageLayout: home
externalLinkIcon: true
config:
-
type: hero
# background: tint-plate
background: /images/background-01.png
full: true
filter:
hero:
name: RainCraft
tagline:
text:
actions:
-
theme: brand
text: 加入我们 →
link: /docs/get-start/
-
theme: alt
text: 社区
link: /docs/community/
-
type: features
features:
-
title: 高效可靠的服务器
icon: 🚀
details: 保障国内、外的小伙伴的游玩体验。
-
title: 公益化的运营模式
icon: 📖
details: 我们不会主动向玩家索取任何费用,不设任何会员等级。
-
title: 你一定能接受的玩法
icon: 📦
details: 基于原版游戏玩法,关闭死亡掉落,引入有趣但不影响平衡的插件。
-
title: 高自由度的管理原则
icon: ⚙️
details: 我们不会太多介入玩家的行为,但对于熊孩子保持零容忍的态度。
-
type: info
full: false
-
type: staff
full: false
---

13
docs/docs/community.md Normal file
View file

@ -0,0 +1,13 @@
---
title: 我们的社区
createTime: 2024/10/22 10:17:34
permalink: /docs/community/
aside: false
readingTime: false
---
**我们欢迎你来整活!**
<CardGrid>
<LinkCard icon="fluent-color:home-32" title="网页论坛" description="使用皮肤站账号即可登录" href="https://bbs.mc.ineko.cc" />
<LinkCard icon="fa6-brands:qq" title="QQ群" description="塞博养老院(不是" href="https://qm.qq.com/q/MHPZJMiKwS" />
</CardGrid>

28
docs/docs/donate.md Normal file
View file

@ -0,0 +1,28 @@
---
title: 投喂我们!
createTime: 2024/10/22 21:25:44
permalink: /docs/donate/
aside: false
readingTime: false
---
:::tip 碎碎念
`RainCraft`项目是由2018年05月10日由<a href="https://kirisame.space/">@Renko</a><a href="https://ineko.cc/">@GiriNeko</a>共同发起至今已有超过5年的历史。
在这期间我们一直以公益、纯净为导向运营一个热爱Minecraft游戏玩家们的乌托邦。
截至今天Raincraft拥有了新鲜的血液管理团队也日渐庞大相信这一定会给你带来更好的体验。
如果你对我们的努力感到认可,投喂一杯奶茶如何?
:::
| :[bi:alipay]: AliPay | :[fa:wechat]: WeChat | :[fa6-brands:qq]: QQ |
| -------------------------------------- | ----------------------------------------- | ----------------------------------------- |
| ![Alipay](https://share.ineko.cc/p/localstorage/donate/.qrcodeonly/alipay.png?sign=aL3VK-xK0VR8S-TU2rh9D86XOqaOb5_igJ5fEstvBhA=:0){width="300" height="300" style="width:150px"} | ![WeChat](https://share.ineko.cc/p/localstorage/donate/.qrcodeonly/wechat.png?sign=Y5IWqAxj5lagtUqCWaNfoOEOt5gBgAPhwWM4ycJfhT8=:0){width="300" height="300" style="width:150px"} | ![QQ](https://share.ineko.cc/p/localstorage/donate/.qrcodeonly/qq.png?sign=yraDVEyzq-GkK-t6cc2GxYL5gr4xYKAlfVMLQHQ1gFA=:0){width="300" height="300" style="width:150px"}
## 打赏记录
| :[ant-design:skin-filled]: 头像 | :[mdi:user-box]: ID |
| -------------------------------------- | ----------------------------------------- |
| ![mox_77](https://crafatar.com/avatars/d3cfd1a228cb4ebca7d31c73998f19f2){width="30" height="30" style="width:80px"} | mox_77 |

13
docs/docs/get-start.md Normal file
View file

@ -0,0 +1,13 @@
---
title: 让我们开始吧!
createTime: 2024/10/21 11:52:18
permalink: /docs/get-start/
---
<CardGrid>
<LinkCard title="我是正版玩家" icon="emojione:nerd-face" description="适用于正版玩家的文档" href="/docs/online-users/" />
<LinkCard title="我没有购买正版" icon="emojione:confused-face" description="适用于外置登录玩家的文档" href="/docs/offline-users/" />
</CardGrid>
**PS.如果你不知道什么是正版,请选择“我没有购买正版”的选项**
PPS.为确保服务器安全降低熊孩子生成的概率RainCraft已**不支持**离线登录。如有需要可使用外置登录。

20
docs/en/README.md Normal file
View file

@ -0,0 +1,20 @@
---
pageLayout: home
externalLinkIcon: true
config:
-
type: hero
# background: tint-plate
background: /images/background-01.png
full: true
filter:
hero:
name: RainCraft
tagline:
text:
actions:
---

BIN
docs/favicon.ico Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 17 KiB

View file

@ -0,0 +1,18 @@
---
title: 关于RainCraft服务器升级的通知
tags:
- 新闻
- 升级
createTime: 2024/10/20 20:12:05
permalink: /news/raincraft-upgrade/
---
# 拟计划于今日2300对服务器进行升级届时业务将无法访问。
根据Raincraft运营计划我们将回收部分服务器资源为新周目做准备。
届时Raincraft所有服务器将会关闭地图会被备份打包并在一段时间后发布共享。
感谢大家的游玩,希望能在新的周目里再看见你们的身影。
@GiriNeko
<CustomComponent />

27
package.json Normal file
View file

@ -0,0 +1,27 @@
{
"name": "rain-craft",
"type": "module",
"version": "1.0.0",
"description": "An Minecraft Server.",
"packageManager": "pnpm@9.12.2",
"license": "MIT",
"engines": {
"node": "^18.20.0 || >=20.0.0"
},
"scripts": {
"docs:dev": "vuepress dev docs",
"docs:dev-clean": "vuepress dev docs --clean-cache --clean-temp",
"docs:build": "vuepress build docs --clean-cache --clean-temp",
"docs:preview": "http-server docs/.vuepress/dist",
"vp-update": "pnpm dlx vp-update"
},
"devDependencies": {
"@vuepress/bundler-vite": "2.0.0-rc.18",
"http-server": "^14.1.1",
"sass-embedded": "^1.80.3",
"typescript": "^5.6.3",
"vue": "^3.5.12",
"vuepress": "2.0.0-rc.18",
"vuepress-theme-plume": "1.0.0-rc.112"
}
}

5440
pnpm-lock.yaml generated Normal file

File diff suppressed because it is too large Load diff