@booleanpress/starlight
v0.1.1
Published
BooleanPress brand, layout, SEO/AI layer and quality gates for Starlight documentation sites.
Maintainers
Readme
@booleanpress/starlight
The shared core of every BooleanPress documentation site: brand, layout, the SEO and AI-discoverability layer, and the quality gates, as one Starlight plugin.
Use
// astro.config.mjs
import starlight from '@astrojs/starlight';
import { booleanpress } from '@booleanpress/starlight';
import { defineConfig } from 'astro/config';
export default defineConfig({
site: 'https://docs.booleansmtp.com', // required: canonical URLs, Open Graph images, the sitemap
trailingSlash: 'always',
integrations: [
starlight({
title: 'BooleanSMTP Docs', // the last word is shown beside the logo as the section label
logo: { light: './src/assets/brand/logo-light.svg', dark: './src/assets/brand/logo-dark.svg', replacesTitle: true },
plugins: [
...booleanpress({
product: 'booleansmtp',
productName: 'BooleanSMTP',
repo: 'booleanpress/docs.booleansmtp.com-src',
developersUrl: 'https://developers.booleansmtp.com',
headerLinks: [{ label: 'Developers', href: 'https://developers.booleansmtp.com/' }],
ogLogo: './src/assets/brand/mark-256.png', // square PNG, from the site root
schemaLogo: '/brand/mark-512.png', // square PNG in public/
}),
],
}),
],
});// src/content.config.ts
import { docsLoader } from '@astrojs/starlight/loaders';
import { docsSchema } from '@astrojs/starlight/schema';
import { booleanpressSchema } from '@booleanpress/starlight/schema';
import { defineCollection } from 'astro:content';
export const collections = {
docs: defineCollection({ loader: docsLoader(), schema: docsSchema({ extend: booleanpressSchema }) }),
};The site also provides public/favicon.svg and public/apple-touch-icon.png.
What it adds
- Plugins:
starlight-llms-txt(/llms.txt,/llms-full.txt),starlight-links-validator(the build fails on a broken internal link),starlight-image-zoom. - Brand: BooleanPress colours and Inter, light and dark; the logo with a section label; header links to sibling sites; a BooleanPress footer row.
- SEO and AI: an Open Graph image per page (
/og/<page>.png); JSON-LDWebSite,Organization,TechArticle,BreadcrumbList;article:modified_time;/robots.txt; a Markdown twin of every page at<page>/index.md, linked withrel=alternateand served astext/markdownthrough_headers; "Copy page · Open in ChatGPT · Open in Claude". - Schema:
descriptionandsourcesare required on every page. - Components (
@booleanpress/starlight/components):ProBadge,DevLink(a link intodevelopersUrl),ProviderCard.
MIT licensed.
