31 lines
1.1 KiB
JavaScript
31 lines
1.1 KiB
JavaScript
import { defineConfig } from "astro/config";
|
|
import starlight from "@astrojs/starlight";
|
|
|
|
// The site is served at the root of its own subdomain. COURSE_HOST is required at build
|
|
// time (e.g. COURSE_HOST=course.example.com); there is deliberately no default, so a
|
|
// deploy can never ship with a placeholder URL.
|
|
const host = process.env.COURSE_HOST;
|
|
if (!host) throw new Error("COURSE_HOST is not set (e.g. COURSE_HOST=course.example.com)");
|
|
|
|
export default defineConfig({
|
|
site: `https://${host}`,
|
|
base: "/",
|
|
integrations: [
|
|
starlight({
|
|
title: "Systemic Design Course",
|
|
description: "A free, hands-on course on extensible systemic game design, in Rust and TypeScript.",
|
|
social: [
|
|
{
|
|
icon: "external",
|
|
label: "Source repository",
|
|
href: "https://gitea.lucaswinther.info/lucasw89/systemic-game-design-course",
|
|
},
|
|
],
|
|
sidebar: [
|
|
{ label: "Start here", items: ["disclaimer", "about"] },
|
|
{ label: "Modules", items: [{ autogenerate: { directory: "course" } }] },
|
|
],
|
|
}),
|
|
],
|
|
});
|