diff --git a/.gitignore b/.gitignore index 00bf4e5..2dc67d8 100644 --- a/.gitignore +++ b/.gitignore @@ -35,7 +35,8 @@ go.work node_modules/ docs/.vitepress/cache/* docs/.vitepress/dist/* -.vitepress/ +.vitepress/cache +.vitepress/dist .cache /**/.DS_Store config/generator/target \ No newline at end of file diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts new file mode 100644 index 0000000..844c90a --- /dev/null +++ b/docs/.vitepress/config.mts @@ -0,0 +1,71 @@ +import { withMermaid } from "vitepress-plugin-mermaid"; +import { fileURLToPath, URL } from 'node:url' + +// https://vitepress.dev/reference/site-config +export default withMermaid({ + title: "AnyApplication controller", + description: "AnyApplication Controller for Decentralized Control Plane", + base: "/", + head: [['link', { rel: 'icon', href: 'https://github.com/HIRO-MicroDataCenters-BV/anyapplication-controller/refs/heads/main/docs/assets/dcp-log.png' }]], + vite: { + resolve: { + alias: [ + { + find: /^.*\/VPFooter\.vue$/, + replacement: fileURLToPath( + new URL('./theme/components/VPFooter.vue', import.meta.url) + ) + }, + ] + } + }, + themeConfig: { + // https://vitepress.dev/reference/default-theme-config + nav: [ + { text: 'Home', link: '/' }, + { text: 'Concepts', link: '/concepts' }, + { text: 'Usage', link: '/usage' }, + ], + + editLink: { + pattern: 'https://github.com/HIRO-MicroDataCenters-BV/anyapplication-controller/blob/main/docs/:path', + text: 'Edit this page on GitHub' + }, + + logo: { + src: 'https://github.com/HIRO-MicroDataCenters-BV/anyapplication-controller/refs/heads/main/docs/assets/dcp-log.png', + width: 24, + height: 24 + }, + + search: { + provider: 'local' + }, + + sidebar: [ + { + items: [ + { text: 'Quick Start', link: '/usage/installation' }, + { text: 'Architecture', link: '/architecture' }, + { text: 'API Reference', link: '/api-reference/anyapplication' }, + ] + }, + { + text: 'Developer Guide', + collapsed: false, + items: [ + { text: 'Local Dev Setup', link: '/development/setup' }, + ] + } + ], + + footer: { + message: 'Released under the Apache License 2.0.', + copyright: 'Copyright © 2025-present HIRO-MicroDataCenters BV' + }, + + socialLinks: [ + { icon: 'github', link: 'https://github.com/HIRO-MicroDataCenters-BV/anyapplication-controller' } + ], + } +}) \ No newline at end of file diff --git a/docs/.vitepress/theme/components/VPFooter.vue b/docs/.vitepress/theme/components/VPFooter.vue new file mode 100644 index 0000000..7f230f5 --- /dev/null +++ b/docs/.vitepress/theme/components/VPFooter.vue @@ -0,0 +1,68 @@ + + + + + + + + \ No newline at end of file diff --git a/docs/.vitepress/theme/composables/data.ts b/docs/.vitepress/theme/composables/data.ts new file mode 100644 index 0000000..2d9e04a --- /dev/null +++ b/docs/.vitepress/theme/composables/data.ts @@ -0,0 +1,4 @@ +import { useData as useData$ } from 'vitepress' +import type { DefaultTheme } from 'vitepress/theme' + +export const useData: typeof useData$ = useData$ \ No newline at end of file diff --git a/docs/.vitepress/theme/custom.css b/docs/.vitepress/theme/custom.css new file mode 100644 index 0000000..3da7829 --- /dev/null +++ b/docs/.vitepress/theme/custom.css @@ -0,0 +1,37 @@ +:root { + --vp-home-hero-name-color: transparent; + --vp-home-hero-name-background: -webkit-linear-gradient( + 120deg, + #3456fe 30%, + #41d1ff + ); + --vp-home-hero-image-background-image: linear-gradient( + -45deg, + #3474fe 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); + } +} + +.VPHero .VPImage { + filter: drop-shadow(-2px 4px 6px rgba(0, 0, 0, 0.2)); + padding: 18px; +} + +/* used in reference/default-theme-search */ +img[src='/search.png'] { + width: 100%; + aspect-ratio: 1 / 1; +} \ No newline at end of file diff --git a/docs/.vitepress/theme/index.js b/docs/.vitepress/theme/index.js new file mode 100644 index 0000000..508d8b4 --- /dev/null +++ b/docs/.vitepress/theme/index.js @@ -0,0 +1,4 @@ +import DefaultTheme from 'vitepress/theme' +import './custom.css' + +export default DefaultTheme \ No newline at end of file diff --git a/docs/assets/dcp-log.png b/docs/assets/dcp-log.png new file mode 100644 index 0000000..6867cbe Binary files /dev/null and b/docs/assets/dcp-log.png differ diff --git a/docs/concepts/index.md b/docs/concepts/index.md new file mode 100644 index 0000000..8b13789 --- /dev/null +++ b/docs/concepts/index.md @@ -0,0 +1 @@ + diff --git a/docs/development/index.md b/docs/development/index.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/development/setup.md b/docs/development/setup.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/usage/index.md b/docs/usage/index.md new file mode 100644 index 0000000..e69de29 diff --git a/docs/usage/installation.md b/docs/usage/installation.md new file mode 100644 index 0000000..e69de29