first commit
17
docs/.vuepress/client.ts
Normal 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
|
|
@ -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
|
|
@ -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
|
|
@ -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],
|
||||
})
|
||||
|
||||
55
docs/.vuepress/plume.config.ts
Normal 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,
|
||||
},
|
||||
},
|
||||
})
|
||||
BIN
docs/.vuepress/public/favicon.ico
Normal file
|
After Width: | Height: | Size: 17 KiB |
BIN
docs/.vuepress/public/images/background-01.png
Normal file
|
After Width: | Height: | Size: 5.4 MiB |
BIN
docs/.vuepress/public/images/info-01.png
Normal file
|
After Width: | Height: | Size: 710 KiB |
BIN
docs/.vuepress/public/images/info-02.png
Normal file
|
After Width: | Height: | Size: 5 MiB |
BIN
docs/.vuepress/public/images/info-03.png
Normal file
|
After Width: | Height: | Size: 364 KiB |
BIN
docs/.vuepress/public/images/info-04.png
Normal file
|
After Width: | Height: | Size: 1.6 MiB |
BIN
docs/.vuepress/public/images/raincraft-1x1-circle.png
Normal file
|
After Width: | Height: | Size: 67 KiB |
BIN
docs/.vuepress/public/images/raincraft-1x1.jpeg
Normal file
|
After Width: | Height: | Size: 22 KiB |
8
docs/.vuepress/public/plume.svg
Normal 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 |
11
docs/.vuepress/theme/components/Custom.vue
Normal 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>
|
||||
40
docs/.vuepress/theme/components/info.vue
Normal 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>
|
||||
25
docs/.vuepress/theme/components/staff.vue
Normal 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
|
|
@ -0,0 +1,6 @@
|
|||
declare module '*.vue' {
|
||||
import type { ComponentOptions } from 'vue'
|
||||
|
||||
const comp: ComponentOptions
|
||||
export default comp
|
||||
}
|
||||
50
docs/.vuepress/theme/styles/custom.css
Normal 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);
|
||||
*/
|
||||
}
|
||||