mirror of
https://github.com/gogrlx/docs.grlx.dev.git
synced 2026-04-01 18:58:49 -07:00
- Install starlight-versions plugin for version dropdown UI - Archive current stable docs as v1.0.5 (slug: 1.0) - Current/latest version labeled v2.0-alpha - Add new alpha feature docs: SSH, cohorts, RBAC, audit logging, sprouts - Update glossary with cross-references to new pages - Update sidebar with Security section and new pages - Upgrade to Astro 6, Starlight 0.38, starlight-tailwind 5, ESLint 10 - Migrate content config to src/content.config.ts with loaders - Fix all prettier formatting issues
186 lines
4.1 KiB
JavaScript
186 lines
4.1 KiB
JavaScript
import { defineConfig } from 'astro/config'
|
|
import starlight from '@astrojs/starlight'
|
|
import tailwindcss from '@tailwindcss/vite'
|
|
import starlightVersions from 'starlight-versions'
|
|
|
|
// SEE: https://developers.google.com/analytics/devguides/collection/gtagjs
|
|
const gaTrackingID = import.meta.env.GA_TRACKING_ID
|
|
const gaSrc = `https://www.googletagmanager.com/gtag/js?id=${gaTrackingID}`
|
|
|
|
// SEE: https://plausible.io/docs/plausible-script
|
|
const plausibleDomain = import.meta.env.PLAUSIBLE_DOMAIN
|
|
const plausibleSrc =
|
|
import.meta.env.PLAUSIBLE_SRC || 'https://plausible.io/js/script.js'
|
|
|
|
const head = []
|
|
|
|
if (gaTrackingID) {
|
|
head.push(
|
|
{
|
|
tag: 'script',
|
|
attrs: {
|
|
src: gaSrc,
|
|
async: true,
|
|
},
|
|
},
|
|
{
|
|
tag: 'script',
|
|
content: `
|
|
window.dataLayer = window.dataLayer || [];
|
|
function gtag(){window.dataLayer.push(arguments);}
|
|
gtag('js', new Date());
|
|
gtag('config', '${gaTrackingID}');
|
|
`,
|
|
},
|
|
)
|
|
}
|
|
|
|
if (plausibleDomain && plausibleSrc) {
|
|
head.push({
|
|
tag: 'script',
|
|
attrs: {
|
|
src: plausibleSrc,
|
|
'data-domain': plausibleDomain,
|
|
defer: true,
|
|
},
|
|
})
|
|
}
|
|
|
|
head.push(
|
|
{
|
|
tag: 'link',
|
|
attrs: {
|
|
rel: 'apple-touch-icon',
|
|
href: '/apple-touch-icon.png',
|
|
sizes: '180x180',
|
|
},
|
|
},
|
|
{
|
|
tag: 'link',
|
|
attrs: {
|
|
rel: 'icon',
|
|
type: 'image/png',
|
|
href: '/favicon-32x32.png',
|
|
sizes: '32x32',
|
|
},
|
|
},
|
|
{
|
|
tag: 'link',
|
|
attrs: {
|
|
rel: 'icon',
|
|
type: 'image/png',
|
|
href: '/favicon-16x16.png',
|
|
sizes: '16x16',
|
|
},
|
|
},
|
|
{
|
|
tag: 'link',
|
|
attrs: {
|
|
rel: 'manifest',
|
|
href: '/site.webmanifest',
|
|
},
|
|
},
|
|
{
|
|
tag: 'link',
|
|
attrs: {
|
|
rel: 'mask-icon',
|
|
href: '/safari-pinned-tab.svg',
|
|
color: '#7cc6fe',
|
|
},
|
|
},
|
|
{
|
|
tag: 'meta',
|
|
attrs: {
|
|
name: 'msapplication-TileColor',
|
|
content: '#7cc6fe',
|
|
},
|
|
},
|
|
{
|
|
tag: 'meta',
|
|
attrs: {
|
|
name: 'theme-color',
|
|
content: '#bee1ff',
|
|
},
|
|
},
|
|
)
|
|
|
|
// https://astro.build/config
|
|
export default defineConfig({
|
|
integrations: [
|
|
starlight({
|
|
plugins: [
|
|
starlightVersions({
|
|
current: { label: 'v2.0-alpha' },
|
|
versions: [{ slug: '1.0', label: 'v1.0.5' }],
|
|
}),
|
|
],
|
|
title: 'grlx Docs',
|
|
lastUpdated: true,
|
|
description:
|
|
'Documentation for grlx. Fleet configuration management that is low overhead, dependency free, and easy to install.',
|
|
components: {
|
|
Footer: './src/components/AdatomicFooter.astro',
|
|
},
|
|
customCss: ['./src/tailwind.css', './src/custom.css'],
|
|
defaultLocale: 'root',
|
|
locales: {
|
|
root: {
|
|
label: 'English',
|
|
lang: 'en',
|
|
},
|
|
},
|
|
favicon: '/favicon.ico',
|
|
head,
|
|
logo: { src: './src/assets/grlx.webp' },
|
|
social: [
|
|
{
|
|
icon: 'github',
|
|
label: 'GitHub',
|
|
href: 'https://github.com/gogrlx/grlx',
|
|
},
|
|
{ icon: 'x.com', label: 'X', href: 'https://x.com/gogrlx' },
|
|
{
|
|
icon: 'discord',
|
|
label: 'Discord',
|
|
href: 'https://discord.gg/RNsZ3KWjXm',
|
|
},
|
|
{
|
|
icon: 'email',
|
|
label: 'Email',
|
|
href: 'mailto:grlx@adatomic.com?subject=Question',
|
|
},
|
|
],
|
|
sidebar: [
|
|
{ label: 'Getting Started', link: '/getting-started' },
|
|
{
|
|
label: 'Architecture',
|
|
autogenerate: { directory: 'architecture' },
|
|
},
|
|
{ label: 'Cohorts', link: '/cohorts' },
|
|
{ label: 'Managing Sprouts', link: '/sprouts' },
|
|
{
|
|
label: 'Ingredients',
|
|
autogenerate: { directory: 'ingredients' },
|
|
},
|
|
{
|
|
label: 'Recipes',
|
|
autogenerate: { directory: 'recipes' },
|
|
},
|
|
{ label: 'SSH', link: '/ssh' },
|
|
{
|
|
label: 'Security',
|
|
items: [
|
|
{ label: 'RBAC', link: '/rbac' },
|
|
{ label: 'Audit Logging', link: '/audit' },
|
|
],
|
|
},
|
|
{ label: 'Glossary', link: '/glossary' },
|
|
],
|
|
}),
|
|
],
|
|
vite: {
|
|
plugins: [tailwindcss()],
|
|
},
|
|
site: 'https://docs.grlx.dev',
|
|
})
|