Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
e118d8a
Add Astro, Starlight, and React to project
jasikpark Dec 12, 2025
eb62acc
Rename astro.config.ts
jasikpark Dec 12, 2025
9f42223
Add astro build command
jasikpark Dec 12, 2025
e4282e4
Add docs content loader
jasikpark Dec 12, 2025
12c9dcc
Move docs files to src/content/docs
jasikpark Dec 12, 2025
a9f071f
Add title to starlight docs
jasikpark Dec 12, 2025
a6c7669
Add astro start command
jasikpark Dec 12, 2025
ac4eeb3
Check in docs content collection schema types
jasikpark Dec 12, 2025
de06b71
Ignore astro build output and cache files
jasikpark Dec 12, 2025
9e4a03b
Fix issues parsing markdown / mdx
jasikpark Dec 12, 2025
0de46df
Vendor the TOC, as Starlight does not have a TOC component
jasikpark Dec 12, 2025
9b0e857
Replace ThemedImage from Docusaurus with one based on Astro's Picture…
jasikpark Dec 12, 2025
7f4b7f8
Add custom sidebar config
jasikpark Dec 12, 2025
02afc88
Remove netlify.toml as we're not using it for hosting
jasikpark Dec 12, 2025
a2fe77a
Move images to /public and /src/assets
jasikpark Dec 12, 2025
8191bf1
Add Nebula Logo to config
jasikpark Dec 12, 2025
6c3ce6a
Keep groups collapsed by default
jasikpark Dec 12, 2025
554f8c5
Add title back, since it makes the page title look weird without it
jasikpark Dec 12, 2025
4d87982
Set logo.replacesTitle
jasikpark Dec 12, 2025
3688584
Add site url for sitemap support
jasikpark Dec 12, 2025
a260c63
Update sidebar position config for items to Starlight
jasikpark Dec 12, 2025
9751ab2
Add Slack and GitHub links to header
jasikpark Dec 12, 2025
66cc03e
Add config for editing pages on GitHub
jasikpark Dec 13, 2025
83fdf12
Add global css
jasikpark Dec 13, 2025
7e6ae3a
Remove redundant h1's when title is set
jasikpark Dec 13, 2025
162911a
Delete _category.json
jasikpark Dec 13, 2025
90a5acc
pnpm format
jasikpark Dec 15, 2025
9fb2f03
Explicitly configure the guides sidebar since starlight can't autogen…
jasikpark Dec 15, 2025
4b38ce1
Update the build and start commands
jasikpark Dec 15, 2025
6173f69
Override Starlight's default colors
jasikpark Dec 15, 2025
c427207
Fix styles in MDX docs
jasikpark Dec 15, 2025
69aa25a
Match old output dir
jasikpark Dec 15, 2025
b92e397
Fiddle with colors more
jasikpark Dec 15, 2025
2479ff8
Load MDX component on the client
jasikpark Dec 15, 2025
e3b9217
Adjust colors some more
jasikpark Dec 15, 2025
154e172
Fix colors for Pill.tsx
jasikpark Dec 15, 2025
3166e35
:::warning -> :::caution
jasikpark Dec 15, 2025
267f58f
Customize orange better for warnings
jasikpark Dec 15, 2025
ffe42a5
Update code block lang to console
jasikpark Dec 15, 2025
fd35542
Untrack .astro/ generated files
jasikpark Dec 15, 2025
0a12456
pnpm format
jasikpark Dec 15, 2025
3aeb28b
Fix typescript errors
jasikpark Dec 15, 2025
6802552
Remove dist folder
jasikpark Dec 15, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,9 +1,13 @@
# build output
build
dist

# ignore docusaurus cache files
.docusaurus

# ignore astro cache files
.astro/

# Logs
logs
*.log
Expand Down
102 changes: 102 additions & 0 deletions astro.config.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
import react from '@astrojs/react';
import starlight from '@astrojs/starlight';
import { defineConfig } from 'astro/config';

// https://astro.build/config
export default defineConfig({
site: 'https://nebula.defined.net',
// Match Docusaurus, we can change this later.
outDir: 'build',
integrations: [
starlight({
title: 'Nebula',
logo: {
alt: 'Nebula Docs',
light: './src/assets/mark.svg',
dark: './src/assets/mark-dark.svg',
replacesTitle: true,
},
customCss: ['./src/css/base.css', './src/css/theme.css', './src/css/utility.css'],
editLink: {
baseUrl: 'https://github.com/DefinedNet/nebula-docs/edit/main/',
},
social: [
{
icon: 'github',
label: 'GitHub',
href: 'https://github.com/slackhq/nebula',
},
{
icon: 'slack',
label: 'Slack',
href: 'https://join.slack.com/t/nebulaoss/shared_invite/zt-39pk4xopc-CUKlGcb5Z39dQ0cK1v7ehA',
},
],
sidebar: [
{
label: 'Introduction to Nebula',
link: '/',
},
{
label: 'Guides',
items: [
{
label: 'Quick Start',
link: '/guides/quick-start',
},
{
label: 'Debugging with Nebula SSH commands',
link: '/guides/debug-ssh-commands',
},
{
label: 'Rotating a Certificate Authority',
link: '/guides/rotating-certificate-authority',
},
{
label: 'Signing a Certificate Without a Private Key',
link: '/guides/sign-certificates-with-public-keys',
},
{
label: 'Extend network access beyond overlay hosts',
link: '/guides/unsafe_routes',
},
{
label: 'Upgrading a Nebula network to IPv6 overlay addresses',
link: '/guides/upgrade-to-cert-v2-and-ipv6',
},
{
label: 'Using Experimental Lighthouse DNS with Nebula',
link: '/guides/using-lighthouse-dns',
},
{
label: 'Viewing Nebula Logs',
link: '/guides/viewing-nebula-logs',
},
],
collapsed: true,
},
{
label: 'Security Bulletins',
autogenerate: { directory: 'security' },
collapsed: true,
},
{
label: 'Config Reference',
autogenerate: { directory: 'config' },
collapsed: true,
},
],
}),
react(),
],
server: {
port: 3000,
},
vite: {
resolve: {
alias: {
'@theme': '/src/components',
},
},
},
});
9 changes: 0 additions & 9 deletions docs/config/_category_.json

This file was deleted.

9 changes: 0 additions & 9 deletions docs/guides/_category_.json

This file was deleted.

9 changes: 0 additions & 9 deletions docs/security/_category_.json

This file was deleted.

7 changes: 0 additions & 7 deletions netlify.toml

This file was deleted.

14 changes: 10 additions & 4 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,23 +5,29 @@
"scripts": {
"preinstall": "npx only-allow pnpm",
"postinstall": "pnpm parse-domain-update",
"start": "docusaurus start",
"build": "pnpm parse-domain-update && docusaurus build",
"start": "astro dev",
"build": "pnpm parse-domain-update && astro build",
"preview": "docusaurus serve",
"format": "prettier --write .",
"format:check": "prettier --check .",
"typecheck": "tsc",
"test": "uvu -r tsm --dir ."
},
"dependencies": {
"@astrojs/react": "^4.4.2",
"@astrojs/starlight": "^0.37.1",
"@docusaurus/core": "3.9.2",
"@docusaurus/preset-classic": "3.9.2",
"@mdx-js/react": "^3.1.1",
"@types/react": "^19.2.7",
"@types/react-dom": "^19.2.3",
"astro": "^5.16.5",
"clsx": "^2.1.1",
"parse-domain": "^8.2.2",
"prism-react-renderer": "^2.4.1",
"react": "^19.1.0",
"react-dom": "^19.1.0"
"react": "^19.2.3",
"react-dom": "^19.2.3",
"sharp": "^0.34.5"
},
"devDependencies": {
"@docusaurus/module-type-aliases": "3.9.2",
Expand Down
Loading
Loading