diff --git a/.gitignore b/.gitignore
index 5350462..14bec8d 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,4 +1,4 @@
node_modules
-.vitepress/dist
-.vitepress/cache
+base/.vitepress/dist
+base/.vitepress/cache
dist
\ No newline at end of file
diff --git a/.idea/inspectionProfiles/Project_Default.xml b/.idea/inspectionProfiles/Project_Default.xml
new file mode 100644
index 0000000..795d024
--- /dev/null
+++ b/.idea/inspectionProfiles/Project_Default.xml
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/jsLibraryMappings.xml b/.idea/jsLibraryMappings.xml
new file mode 100644
index 0000000..d23208f
--- /dev/null
+++ b/.idea/jsLibraryMappings.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.vitepress/config.mjs b/.vitepress/config.mjs
index a21b6c8..fa68a76 100644
--- a/.vitepress/config.mjs
+++ b/.vitepress/config.mjs
@@ -1,28 +1,9 @@
-import { defineConfig } from 'vitepress'
+import sidebarConfig from '../composer.js'
-// https://vitepress.dev/reference/site-config
-export default defineConfig({
- title: "pixeldocs",
- description: "Documentation for the PixelServices projects",
- themeConfig: {
- // https://vitepress.dev/reference/default-theme-config
- nav: [
- { text: 'Home', link: '/' },
- { text: 'Examples', link: '/markdown-examples' }
- ],
-
- sidebar: [
- {
- text: 'Examples',
- items: [
- { text: 'Markdown Examples', link: '/markdown-examples' },
- { text: 'Runtime API Examples', link: '/api-examples' }
- ]
- }
- ],
-
- socialLinks: [
- { icon: 'github', link: 'https://github.com/vuejs/vitepress' }
- ]
- }
-})
+export default {
+ themeConfig: {
+ siteTitle: 'Pixel Services Docs',
+ logo: 'https://static.pixel-services.com/static/assets/pservices_logo.png',
+ sidebar: sidebarConfig
+ }
+}
\ No newline at end of file
diff --git a/api-examples.md b/api-examples.md
deleted file mode 100644
index 6bd8bb5..0000000
--- a/api-examples.md
+++ /dev/null
@@ -1,49 +0,0 @@
----
-outline: deep
----
-
-# Runtime API Examples
-
-This page demonstrates usage of some of the runtime APIs provided by VitePress.
-
-The main `useData()` API can be used to access site, theme, and page data for the current page. It works in both `.md` and `.vue` files:
-
-```md
-
-
-## Results
-
-### Theme Data
-
{{ theme }}
-
-### Page Data
-{{ page }}
-
-### Page Frontmatter
-{{ frontmatter }}
-```
-
-
-
-## Results
-
-### Theme Data
-{{ theme }}
-
-### Page Data
-{{ page }}
-
-### Page Frontmatter
-{{ frontmatter }}
-
-## More
-
-Check out the documentation for the [full list of runtime APIs](https://vitepress.dev/reference/runtime-api#usedata).
diff --git a/composer.js b/composer.js
new file mode 100644
index 0000000..27fff23
--- /dev/null
+++ b/composer.js
@@ -0,0 +1,29 @@
+import fs from 'fs'
+import path from 'path'
+import { fileURLToPath } from 'url'
+
+const __filename = fileURLToPath(import.meta.url)
+const __dirname = path.dirname(__filename)
+
+console.log('Starting composer.js execution')
+
+const projects = ['flash', 'mobot', 'serverlibraries']
+
+const sidebarConfig = {}
+
+projects.forEach(project => {
+ const sidebarPath = path.resolve(__dirname, `./${project}/config/sidebar.json`)
+ console.log(`Checking for sidebar.json in ${project}`)
+ if (fs.existsSync(sidebarPath)) {
+ console.log(`Found sidebar.json in ${project}`)
+ const sidebar = JSON.parse(fs.readFileSync(sidebarPath, 'utf-8'))
+ Object.assign(sidebarConfig, sidebar)
+ } else {
+ console.log(`sidebar.json not found in ${project}`)
+ }
+})
+
+// Log the contents of sidebarConfig for debugging
+console.log('Final sidebarConfig:', JSON.stringify(sidebarConfig, null, 2))
+
+export default sidebarConfig
\ No newline at end of file
diff --git a/flash/.vitepress/config.mjs b/flash/.vitepress/config.mjs
new file mode 100644
index 0000000..76ccff3
--- /dev/null
+++ b/flash/.vitepress/config.mjs
@@ -0,0 +1,32 @@
+import { defineConfig } from 'vitepress'
+
+export default defineConfig({
+ base: "/flash/",
+ title: "pixeldocs",
+ description: "Documentation for the PixelServices projects",
+ cleanUrls: true,
+ outDir: '../dist/flash',
+ themeConfig: {
+ sidebar: {
+ '/guide/': [
+ {
+ text: 'Guide',
+ items: [
+ { text: 'Introduction', link: '/guide/' },
+ { text: 'Getting Started', link: '/guide/getting-started' }
+ ]
+ }
+ ],
+ '/': [
+ {
+ text: 'General',
+ items: [
+ { text: 'Home', link: '/' },
+ { text: 'Markdown Examples', link: '/markdown-examples' },
+ { text: 'API Examples', link: '/api-examples' }
+ ]
+ }
+ ]
+ }
+ }
+})
\ No newline at end of file
diff --git a/.vitepress/theme/index.js b/flash/.vitepress/theme/index.js
similarity index 100%
rename from .vitepress/theme/index.js
rename to flash/.vitepress/theme/index.js
diff --git a/.vitepress/theme/style.css b/flash/.vitepress/theme/style.css
similarity index 100%
rename from .vitepress/theme/style.css
rename to flash/.vitepress/theme/style.css
diff --git a/flash/config/sidebar.json b/flash/config/sidebar.json
new file mode 100644
index 0000000..0047b0a
--- /dev/null
+++ b/flash/config/sidebar.json
@@ -0,0 +1,10 @@
+{
+ "/flash/": [
+ {
+ "text": "Flash Documentation",
+ "items": [
+ { "text": "Getting Started", "link": "/flash" }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/flash/index.md b/flash/index.md
new file mode 100644
index 0000000..6c3fa91
--- /dev/null
+++ b/flash/index.md
@@ -0,0 +1,72 @@
+
+
+# ⚡ Getting Started
+
+This page provides installation instructions for the latest version of the `flash` library from Pixel Services.
+
+## Installation
+
+### Maven (pom.xml)
+
+1. Add the repository :
+ ```xml
+
+
+ pixel-services
+ Pixel Services
+ https://maven.pixel-services.com/repository
+
+
+ ```
+
+2. And the dependency :
+ ```xml
+
+
+ com.pixelservices
+ flash
+ {{ latestVersion }}
+
+
+ ```
+
+### Gradle (build.gradle)
+
+1. Add the repository :
+ ```groovy
+ repositories {
+ maven {
+ url "https://maven.pixel-services.com/repository"
+ }
+ }
+ ```
+
+2. And the dependency :
+ ```groovy
+ dependencies {
+ implementation 'com.pixelservices:flash:{{ latestVersion }}'
+ }
+ ```
+
+
\ No newline at end of file
diff --git a/markdown-examples.md b/flash/markdown-examples.md
similarity index 100%
rename from markdown-examples.md
rename to flash/markdown-examples.md
diff --git a/index.md b/index.md
index b49b5df..51c1867 100644
--- a/index.md
+++ b/index.md
@@ -3,23 +3,26 @@
layout: home
hero:
- name: "pixeldocs"
- text: "Documentation for the PixelServices projects"
- tagline: My great project tagline
+ name: "Pixel Services Documentation"
+ text: ""
+ tagline: "Explore the documentation for all public Pixel Services projects"
actions:
- theme: brand
- text: Markdown Examples
- link: /markdown-examples
+ text: Support Us
+ link: https://buymeacoffee.com/pixelservices
- theme: alt
- text: API Examples
- link: /api-examples
+ text: Check out our Github
+ link: https://github.com/Pixel-Services
features:
- - title: Feature A
- details: Lorem ipsum dolor sit amet, consectetur adipiscing elit
- - title: Feature B
- details: Lorem ipsum dolor sit amet, consectetur adipiscing elit
- - title: Feature C
- details: Lorem ipsum dolor sit amet, consectetur adipiscing elit
+ - title: Flash
+ details: Simple, modern and fast expressive web framework written in Java.
+ link: /flash
+ - title: ServerLibraries
+ details: A Library made to ease server-side Fabric mod development.
+ link: /serverlibraries
+ - title: MoBot
+ details: A Modular Discord Bot with a simple but efficent API.
+ link: /mobot
---
diff --git a/mobot/.vitepress/config.mjs b/mobot/.vitepress/config.mjs
new file mode 100644
index 0000000..3c7d8bd
--- /dev/null
+++ b/mobot/.vitepress/config.mjs
@@ -0,0 +1,31 @@
+import { defineConfig } from 'vitepress'
+
+// https://vitepress.dev/reference/site-config
+export default defineConfig({
+ base: "/mobot/",
+ title: "pixeldocs",
+ description: "Documentation for the PixelServices projects",
+ cleanUrls: true,
+ outDir: '../dist/mobot',
+ themeConfig: {
+ // https://vitepress.dev/reference/default-theme-config
+ nav: [
+ { text: 'Home', link: '/' },
+ { text: 'Examples', link: '/markdown-examples' }
+ ],
+
+ sidebar: [
+ {
+ text: 'Examples',
+ items: [
+ { text: 'Markdown Examples', link: '/markdown-examples' },
+ { text: 'Runtime API Examples', link: '/api-examples' }
+ ]
+ }
+ ],
+
+ socialLinks: [
+ { icon: 'github', link: 'https://github.com/vuejs/vitepress' }
+ ]
+ }
+})
diff --git a/mobot/.vitepress/theme/index.js b/mobot/.vitepress/theme/index.js
new file mode 100644
index 0000000..8ecf163
--- /dev/null
+++ b/mobot/.vitepress/theme/index.js
@@ -0,0 +1,17 @@
+// https://vitepress.dev/guide/custom-theme
+import { h } from 'vue'
+import DefaultTheme from 'vitepress/theme'
+import './style.css'
+
+/** @type {import('vitepress').Theme} */
+export default {
+ extends: DefaultTheme,
+ Layout: () => {
+ return h(DefaultTheme.Layout, null, {
+ // https://vitepress.dev/guide/extending-default-theme#layout-slots
+ })
+ },
+ enhanceApp({ app, router, siteData }) {
+ // ...
+ }
+}
diff --git a/mobot/.vitepress/theme/style.css b/mobot/.vitepress/theme/style.css
new file mode 100644
index 0000000..1a61cb1
--- /dev/null
+++ b/mobot/.vitepress/theme/style.css
@@ -0,0 +1,139 @@
+/**
+ * Customize default theme styling by overriding CSS variables:
+ * https://github.com/vuejs/vitepress/blob/main/src/client/theme-default/styles/vars.css
+ */
+
+/**
+ * Colors
+ *
+ * Each colors have exact same color scale system with 3 levels of solid
+ * colors with different brightness, and 1 soft color.
+ *
+ * - `XXX-1`: The most solid color used mainly for colored text. It must
+ * satisfy the contrast ratio against when used on top of `XXX-soft`.
+ *
+ * - `XXX-2`: The color used mainly for hover state of the button.
+ *
+ * - `XXX-3`: The color for solid background, such as bg color of the button.
+ * It must satisfy the contrast ratio with pure white (#ffffff) text on
+ * top of it.
+ *
+ * - `XXX-soft`: The color used for subtle background such as custom container
+ * or badges. It must satisfy the contrast ratio when putting `XXX-1` colors
+ * on top of it.
+ *
+ * The soft color must be semi transparent alpha channel. This is crucial
+ * because it allows adding multiple "soft" colors on top of each other
+ * to create a accent, such as when having inline code block inside
+ * custom containers.
+ *
+ * - `default`: The color used purely for subtle indication without any
+ * special meanings attached to it such as bg color for menu hover state.
+ *
+ * - `brand`: Used for primary brand colors, such as link text, button with
+ * brand theme, etc.
+ *
+ * - `tip`: Used to indicate useful information. The default theme uses the
+ * brand color for this by default.
+ *
+ * - `warning`: Used to indicate warning to the users. Used in custom
+ * container, badges, etc.
+ *
+ * - `danger`: Used to show error, or dangerous message to the users. Used
+ * in custom container, badges, etc.
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-c-default-1: var(--vp-c-gray-1);
+ --vp-c-default-2: var(--vp-c-gray-2);
+ --vp-c-default-3: var(--vp-c-gray-3);
+ --vp-c-default-soft: var(--vp-c-gray-soft);
+
+ --vp-c-brand-1: var(--vp-c-indigo-1);
+ --vp-c-brand-2: var(--vp-c-indigo-2);
+ --vp-c-brand-3: var(--vp-c-indigo-3);
+ --vp-c-brand-soft: var(--vp-c-indigo-soft);
+
+ --vp-c-tip-1: var(--vp-c-brand-1);
+ --vp-c-tip-2: var(--vp-c-brand-2);
+ --vp-c-tip-3: var(--vp-c-brand-3);
+ --vp-c-tip-soft: var(--vp-c-brand-soft);
+
+ --vp-c-warning-1: var(--vp-c-yellow-1);
+ --vp-c-warning-2: var(--vp-c-yellow-2);
+ --vp-c-warning-3: var(--vp-c-yellow-3);
+ --vp-c-warning-soft: var(--vp-c-yellow-soft);
+
+ --vp-c-danger-1: var(--vp-c-red-1);
+ --vp-c-danger-2: var(--vp-c-red-2);
+ --vp-c-danger-3: var(--vp-c-red-3);
+ --vp-c-danger-soft: var(--vp-c-red-soft);
+}
+
+/**
+ * Component: Button
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-button-brand-border: transparent;
+ --vp-button-brand-text: var(--vp-c-white);
+ --vp-button-brand-bg: var(--vp-c-brand-3);
+ --vp-button-brand-hover-border: transparent;
+ --vp-button-brand-hover-text: var(--vp-c-white);
+ --vp-button-brand-hover-bg: var(--vp-c-brand-2);
+ --vp-button-brand-active-border: transparent;
+ --vp-button-brand-active-text: var(--vp-c-white);
+ --vp-button-brand-active-bg: var(--vp-c-brand-1);
+}
+
+/**
+ * Component: Home
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-home-hero-name-color: transparent;
+ --vp-home-hero-name-background: -webkit-linear-gradient(
+ 120deg,
+ #bd34fe 30%,
+ #41d1ff
+ );
+
+ --vp-home-hero-image-background-image: linear-gradient(
+ -45deg,
+ #bd34fe 50%,
+ #47caff 50%
+ );
+ --vp-home-hero-image-filter: blur(44px);
+}
+
+@media (min-width: 640px) {
+ :root {
+ --vp-home-hero-image-filter: blur(56px);
+ }
+}
+
+@media (min-width: 960px) {
+ :root {
+ --vp-home-hero-image-filter: blur(68px);
+ }
+}
+
+/**
+ * Component: Custom Block
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-custom-block-tip-border: transparent;
+ --vp-custom-block-tip-text: var(--vp-c-text-1);
+ --vp-custom-block-tip-bg: var(--vp-c-brand-soft);
+ --vp-custom-block-tip-code-bg: var(--vp-c-brand-soft);
+}
+
+/**
+ * Component: Algolia
+ * -------------------------------------------------------------------------- */
+
+.DocSearch {
+ --docsearch-primary-color: var(--vp-c-brand-1) !important;
+}
+
diff --git a/mobot/config/sidebar.json b/mobot/config/sidebar.json
new file mode 100644
index 0000000..12bfae0
--- /dev/null
+++ b/mobot/config/sidebar.json
@@ -0,0 +1,10 @@
+{
+ "/mobot/": [
+ {
+ "text": "MoBot Documentation",
+ "items": [
+ { "text": "Getting Started", "link": "/mobot" }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/mobot/index.md b/mobot/index.md
new file mode 100644
index 0000000..e69de29
diff --git a/package-lock.json b/package-lock.json
index 386e97a..fc02cfa 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,5 +1,5 @@
{
- "name": "pixeldocs",
+ "name": "PixelDocs",
"lockfileVersion": 3,
"requires": true,
"packages": {
diff --git a/package.json b/package.json
index 155cf5d..a2619bb 100644
--- a/package.json
+++ b/package.json
@@ -3,9 +3,14 @@
"vitepress": "^1.5.0",
"vue": "^3.5.13"
},
+ "type": "module",
"scripts": {
"docs:dev": "vitepress dev",
"docs:build": "vitepress build",
- "docs:preview": "vitepress preview"
+ "docs:preview": "vitepress preview",
+ "build:all": "npm run build:base && npm run build:flash && npm run build:mobot",
+ "build:base": "vitepress build base",
+ "build:flash": "vitepress build flash",
+ "build:mobot": "vitepress build mobot"
}
-}
+}
\ No newline at end of file
diff --git a/serverlibraries/.vitepress/config.mjs b/serverlibraries/.vitepress/config.mjs
new file mode 100644
index 0000000..aa67aca
--- /dev/null
+++ b/serverlibraries/.vitepress/config.mjs
@@ -0,0 +1,31 @@
+import { defineConfig } from 'vitepress'
+
+// https://vitepress.dev/reference/site-config
+export default defineConfig({
+ base: "/serverlibraries/",
+ title: "pixeldocs",
+ description: "Documentation for the PixelServices projects",
+ cleanUrls: true,
+ outDir: '../dist/serverlibraries',
+ themeConfig: {
+ // https://vitepress.dev/reference/default-theme-config
+ nav: [
+ { text: 'Home', link: '/' },
+ { text: 'Examples', link: '/markdown-examples' }
+ ],
+
+ sidebar: [
+ {
+ text: 'Examples',
+ items: [
+ { text: 'Markdown Examples', link: '/markdown-examples' },
+ { text: 'Runtime API Examples', link: '/api-examples' }
+ ]
+ }
+ ],
+
+ socialLinks: [
+ { icon: 'github', link: 'https://github.com/vuejs/vitepress' }
+ ]
+ }
+})
diff --git a/serverlibraries/.vitepress/theme/index.js b/serverlibraries/.vitepress/theme/index.js
new file mode 100644
index 0000000..8ecf163
--- /dev/null
+++ b/serverlibraries/.vitepress/theme/index.js
@@ -0,0 +1,17 @@
+// https://vitepress.dev/guide/custom-theme
+import { h } from 'vue'
+import DefaultTheme from 'vitepress/theme'
+import './style.css'
+
+/** @type {import('vitepress').Theme} */
+export default {
+ extends: DefaultTheme,
+ Layout: () => {
+ return h(DefaultTheme.Layout, null, {
+ // https://vitepress.dev/guide/extending-default-theme#layout-slots
+ })
+ },
+ enhanceApp({ app, router, siteData }) {
+ // ...
+ }
+}
diff --git a/serverlibraries/.vitepress/theme/style.css b/serverlibraries/.vitepress/theme/style.css
new file mode 100644
index 0000000..1a61cb1
--- /dev/null
+++ b/serverlibraries/.vitepress/theme/style.css
@@ -0,0 +1,139 @@
+/**
+ * Customize default theme styling by overriding CSS variables:
+ * https://github.com/vuejs/vitepress/blob/main/src/client/theme-default/styles/vars.css
+ */
+
+/**
+ * Colors
+ *
+ * Each colors have exact same color scale system with 3 levels of solid
+ * colors with different brightness, and 1 soft color.
+ *
+ * - `XXX-1`: The most solid color used mainly for colored text. It must
+ * satisfy the contrast ratio against when used on top of `XXX-soft`.
+ *
+ * - `XXX-2`: The color used mainly for hover state of the button.
+ *
+ * - `XXX-3`: The color for solid background, such as bg color of the button.
+ * It must satisfy the contrast ratio with pure white (#ffffff) text on
+ * top of it.
+ *
+ * - `XXX-soft`: The color used for subtle background such as custom container
+ * or badges. It must satisfy the contrast ratio when putting `XXX-1` colors
+ * on top of it.
+ *
+ * The soft color must be semi transparent alpha channel. This is crucial
+ * because it allows adding multiple "soft" colors on top of each other
+ * to create a accent, such as when having inline code block inside
+ * custom containers.
+ *
+ * - `default`: The color used purely for subtle indication without any
+ * special meanings attached to it such as bg color for menu hover state.
+ *
+ * - `brand`: Used for primary brand colors, such as link text, button with
+ * brand theme, etc.
+ *
+ * - `tip`: Used to indicate useful information. The default theme uses the
+ * brand color for this by default.
+ *
+ * - `warning`: Used to indicate warning to the users. Used in custom
+ * container, badges, etc.
+ *
+ * - `danger`: Used to show error, or dangerous message to the users. Used
+ * in custom container, badges, etc.
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-c-default-1: var(--vp-c-gray-1);
+ --vp-c-default-2: var(--vp-c-gray-2);
+ --vp-c-default-3: var(--vp-c-gray-3);
+ --vp-c-default-soft: var(--vp-c-gray-soft);
+
+ --vp-c-brand-1: var(--vp-c-indigo-1);
+ --vp-c-brand-2: var(--vp-c-indigo-2);
+ --vp-c-brand-3: var(--vp-c-indigo-3);
+ --vp-c-brand-soft: var(--vp-c-indigo-soft);
+
+ --vp-c-tip-1: var(--vp-c-brand-1);
+ --vp-c-tip-2: var(--vp-c-brand-2);
+ --vp-c-tip-3: var(--vp-c-brand-3);
+ --vp-c-tip-soft: var(--vp-c-brand-soft);
+
+ --vp-c-warning-1: var(--vp-c-yellow-1);
+ --vp-c-warning-2: var(--vp-c-yellow-2);
+ --vp-c-warning-3: var(--vp-c-yellow-3);
+ --vp-c-warning-soft: var(--vp-c-yellow-soft);
+
+ --vp-c-danger-1: var(--vp-c-red-1);
+ --vp-c-danger-2: var(--vp-c-red-2);
+ --vp-c-danger-3: var(--vp-c-red-3);
+ --vp-c-danger-soft: var(--vp-c-red-soft);
+}
+
+/**
+ * Component: Button
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-button-brand-border: transparent;
+ --vp-button-brand-text: var(--vp-c-white);
+ --vp-button-brand-bg: var(--vp-c-brand-3);
+ --vp-button-brand-hover-border: transparent;
+ --vp-button-brand-hover-text: var(--vp-c-white);
+ --vp-button-brand-hover-bg: var(--vp-c-brand-2);
+ --vp-button-brand-active-border: transparent;
+ --vp-button-brand-active-text: var(--vp-c-white);
+ --vp-button-brand-active-bg: var(--vp-c-brand-1);
+}
+
+/**
+ * Component: Home
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-home-hero-name-color: transparent;
+ --vp-home-hero-name-background: -webkit-linear-gradient(
+ 120deg,
+ #bd34fe 30%,
+ #41d1ff
+ );
+
+ --vp-home-hero-image-background-image: linear-gradient(
+ -45deg,
+ #bd34fe 50%,
+ #47caff 50%
+ );
+ --vp-home-hero-image-filter: blur(44px);
+}
+
+@media (min-width: 640px) {
+ :root {
+ --vp-home-hero-image-filter: blur(56px);
+ }
+}
+
+@media (min-width: 960px) {
+ :root {
+ --vp-home-hero-image-filter: blur(68px);
+ }
+}
+
+/**
+ * Component: Custom Block
+ * -------------------------------------------------------------------------- */
+
+:root {
+ --vp-custom-block-tip-border: transparent;
+ --vp-custom-block-tip-text: var(--vp-c-text-1);
+ --vp-custom-block-tip-bg: var(--vp-c-brand-soft);
+ --vp-custom-block-tip-code-bg: var(--vp-c-brand-soft);
+}
+
+/**
+ * Component: Algolia
+ * -------------------------------------------------------------------------- */
+
+.DocSearch {
+ --docsearch-primary-color: var(--vp-c-brand-1) !important;
+}
+
diff --git a/serverlibraries/config/sidebar.json b/serverlibraries/config/sidebar.json
new file mode 100644
index 0000000..dd6a2f5
--- /dev/null
+++ b/serverlibraries/config/sidebar.json
@@ -0,0 +1,10 @@
+{
+ "/serverlibraries/": [
+ {
+ "text": "ServerLibraries Documentation",
+ "items": [
+ { "text": "Getting Started", "link": "/serverlibraries" }
+ ]
+ }
+ ]
+}
\ No newline at end of file
diff --git a/serverlibraries/index.md b/serverlibraries/index.md
new file mode 100644
index 0000000..b0b0cd0
--- /dev/null
+++ b/serverlibraries/index.md
@@ -0,0 +1,5 @@
+---
+# https://vitepress.dev/reference/default-theme-home-page
+layout: doc
+---
+