Modular, context-aware and aspect-oriented dendritic Nix configurations. Discussions: https://oeiuwq.zulipchat.com/join/nqp26cd4kngon6mo3ncgnuap/ den.oeiuwq.com
configurations den dendritic nix aspect oriented
at main 114 lines 3.7 kB view raw
1// @ts-check 2import { defineConfig, fontProviders } from 'astro/config'; 3import starlight from '@astrojs/starlight'; 4 5import mermaid from 'astro-mermaid'; 6import catppuccin from "@catppuccin/starlight"; 7 8// https://astro.build/config 9export default defineConfig({ 10 experimental: { 11 fonts: [ 12 { 13 provider: fontProviders.google(), 14 name: "Victor Mono", 15 cssVariable: "--font-victor-mono", 16 }, 17 { 18 provider: fontProviders.google(), 19 name: "JetBrains Mono", 20 cssVariable: "--font-jetbrains-mono", 21 }, 22 ], 23 }, 24 integrations: [ 25 mermaid({ 26 theme: 'forest', 27 autoTheme: true 28 }), 29 starlight({ 30 title: 'den', 31 sidebar: [ 32 { 33 label: 'Den', 34 items: [ 35 { label: 'Overview', slug: 'overview' }, 36 { label: 'Motivation', slug: 'motivation', }, 37 { label: 'Community', slug: 'community' }, 38 { label: 'Contributing', slug: 'contributing' }, 39 ], 40 }, 41 { 42 label: 'Learn', 43 items: [ 44 { label: 'Core Principles', slug: 'explanation/core-principles' }, 45 { label: 'Context System', slug: 'explanation/context-system' }, 46 { label: 'Aspects & Functors', slug: 'explanation/aspects' }, 47 { label: 'Parametric Aspects', slug: 'explanation/parametric' }, 48 { label: 'NixOS Context Pipeline', slug: 'explanation/context-pipeline' }, 49 { label: 'Library vs Framework', slug: 'explanation/library-vs-framework' }, 50 ], 51 }, 52 { 53 label: 'Templates', 54 items: [ 55 { label: 'Overview', slug: 'tutorials/overview' }, 56 { label: 'Minimal', slug: 'tutorials/minimal' }, 57 { label: 'Default', slug: 'tutorials/default' }, 58 { label: 'No-Flake', slug: 'tutorials/noflake' }, 59 { label: 'MicroVM', slug: 'tutorials/microvm' }, 60 { label: 'Example', slug: 'tutorials/example' }, 61 { label: 'Bug Reproduction', slug: 'tutorials/bogus' }, 62 { label: 'CI Tests', slug: 'tutorials/ci' }, 63 ], 64 }, 65 { 66 label: 'Cookbook', 67 items: [ 68 { label: 'From Zero to Den', slug: 'guides/from-zero-to-den' }, 69 { label: 'From Flake to Den', slug: 'guides/from-flake-to-den' }, 70 { label: 'Declare Hosts & Users', slug: 'guides/declare-hosts' }, 71 { label: 'Configure Aspects', slug: 'guides/configure-aspects' }, 72 { label: 'Custom Nix Classes', slug: 'guides/custom-classes' }, 73 { label: 'Homes Integration', slug: 'guides/home-manager' }, 74 { label: 'Use Batteries', slug: 'guides/batteries' }, 75 { label: 'Share with Namespaces', slug: 'guides/namespaces' }, 76 { label: 'Angle Brackets Syntax', slug: 'guides/angle-brackets' }, 77 { label: 'Migrate to Den', slug: 'guides/migrate' }, 78 { label: 'Debug Configurations', slug: 'guides/debug' }, 79 ], 80 }, 81 { 82 label: 'Reference', 83 items: [ 84 { label: 'den.schema', slug: 'reference/schema' }, 85 { label: 'den.aspects', slug: 'reference/aspects' }, 86 { label: 'den.provides', slug: 'reference/batteries' }, 87 { label: 'den.ctx', slug: 'reference/ctx' }, 88 { label: 'den.lib', slug: 'reference/lib' }, 89 { label: 'flake.*', slug: 'reference/output' }, 90 ], 91 }, 92 ], 93 components: { 94 Head: './src/components/Head.astro', 95 Sidebar: './src/components/Sidebar.astro', 96 Footer: './src/components/Footer.astro', 97 SocialIcons: './src/components/SocialIcons.astro', 98 PageSidebar: './src/components/PageSidebar.astro', 99 }, 100 plugins: [ 101 catppuccin({ 102 dark: { flavor: "macchiato", accent: "mauve" }, 103 light: { flavor: "latte", accent: "mauve" }, 104 }), 105 ], 106 editLink: { 107 baseUrl: 'https://github.com/vic/den/edit/main/docs/', 108 }, 109 customCss: [ 110 './src/styles/custom.css' 111 ], 112 }), 113 ], 114});