gr-mcp-docs/astro.config.mjs
Ryan Malloy 41114373b9 init: Astro/Starlight docs site for gr-sarsat-modern
Diátaxis-structured documentation for 406 MHz SARSAT beacon reception:
- Tutorials: signal chain walkthrough
- Guides: antenna setup, message decoding
- Reference: block API, signal format
- Explanation: Cospas-Sarsat system overview

Includes extracted images from official Cospas-Sarsat specifications (LFS).
2026-02-13 05:01:21 -07:00

89 lines
2.4 KiB
JavaScript

import { defineConfig } from 'astro/config';
import starlight from '@astrojs/starlight';
import starlightClientMermaid from '@pasqal-io/starlight-client-mermaid';
export default defineConfig({
site: 'https://sarsat.l.supported.systems',
telemetry: false,
devToolbar: { enabled: false },
integrations: [
starlight({
plugins: [starlightClientMermaid()],
title: 'gr-sarsat-modern',
description: 'GNU Radio 3.10+ blocks for decoding Cospas-Sarsat 406 MHz emergency distress beacons',
logo: {
light: './src/assets/sarsat-logo-light.svg',
dark: './src/assets/sarsat-logo-dark.svg',
replacesTitle: false,
},
social: {
github: 'https://git.supported.systems/rf/gr-sarsat-modern',
},
editLink: {
baseUrl: 'https://git.supported.systems/rf/gr-sarsat-modern/edit/main/docs-site/',
},
customCss: ['./src/styles/custom.css'],
// Diataxis-organized sidebar
sidebar: [
{
label: 'Start Here',
items: [
{ label: 'Introduction', slug: '' },
{ label: 'Quick Start', slug: 'quickstart' },
],
},
{
label: 'Tutorials',
autogenerate: { directory: 'tutorials' },
badge: { text: 'Learning', variant: 'tip' },
},
{
label: 'How-To Guides',
autogenerate: { directory: 'guides' },
badge: { text: 'Tasks', variant: 'note' },
},
{
label: 'Reference',
autogenerate: { directory: 'reference' },
badge: { text: 'Info', variant: 'caution' },
},
{
label: 'Explanation',
autogenerate: { directory: 'explanation' },
badge: { text: 'Understanding', variant: 'success' },
},
{
label: 'Cospas-Sarsat System',
collapsed: true,
autogenerate: { directory: 'cospas-sarsat' },
},
],
head: [
{
tag: 'meta',
attrs: {
name: 'theme-color',
content: '#0066cc',
},
},
],
components: {
// Can override components later
},
}),
],
vite: {
server: {
host: '0.0.0.0',
// HMR config only when behind reverse proxy
...(process.env.VITE_HMR_HOST && {
hmr: {
host: process.env.VITE_HMR_HOST,
protocol: 'wss',
clientPort: 443,
},
}),
},
},
});