domain-watchdog/docs/astro.config.mjs

155 lines
6.2 KiB
JavaScript
Raw Normal View History

2025-11-12 22:29:35 +01:00
// @ts-check
2025-11-13 21:00:55 +01:00
import {defineConfig} from 'astro/config'
import starlight from '@astrojs/starlight'
2025-11-16 01:09:23 +01:00
import starlightLinksValidator from 'starlight-links-validator'
import mermaid from "astro-mermaid"
2025-11-16 13:44:56 +01:00
import starlightCoolerCredit from "starlight-cooler-credit"
2025-11-18 19:57:28 +01:00
import starlightKbd from 'starlight-kbd'
2025-11-13 21:00:55 +01:00
const BASE_URL = 'https://domainwatchdog.eu'
2025-11-12 22:29:35 +01:00
// https://astro.build/config
export default defineConfig({
2025-11-13 21:00:55 +01:00
site: BASE_URL,
2025-11-12 22:29:35 +01:00
integrations: [
starlight({
title: 'Domain Watchdog',
defaultLocale: 'en',
logo: {
src: './src/assets/logo.png'
},
2025-11-13 20:51:51 +01:00
favicon: 'logo.png',
2025-11-14 15:27:43 +01:00
description: 'An app that uses RDAP to collect publicly available info about domains, track their history, and purchase then when they expire',
2025-11-12 22:29:35 +01:00
editLink: {
2025-11-12 23:07:44 +01:00
baseUrl: 'https://github.com/maelgangloff/domain-watchdog/edit/develop/docs/'
2025-11-12 22:29:35 +01:00
},
tagline: 'Your companion in the quest for domain names 🔍',
lastUpdated: true,
2025-11-18 19:57:28 +01:00
social: [
{icon: 'github', label: 'GitHub', href: 'https://github.com/maelgangloff/domain-watchdog'},
{icon: 'seti:docker', label: 'Docker', href: 'https://hub.docker.com/r/maelgangloff/domain-watchdog'}
],
2025-11-12 22:29:35 +01:00
sidebar: [
2025-11-21 13:24:57 +01:00
{label: 'Getting started', slug: 'features', translations: {fr: 'Premiers pas'}},
2025-11-12 22:29:35 +01:00
{
2025-11-16 01:09:23 +01:00
label: 'Installation & Configuration',
2025-11-21 13:24:57 +01:00
translations: {fr: 'Installation & Configuration'},
2025-11-16 01:09:23 +01:00
items: [
2025-11-21 13:24:57 +01:00
{label: 'Installation', autogenerate: {directory: 'install-config/install'}, translations: {fr: 'Installation'}},
2025-11-16 01:09:23 +01:00
{slug: 'install-config/configuration'},
{slug: 'install-config/upgrade'},
]
2025-11-12 22:29:35 +01:00
},
{
label: 'Features',
2025-11-21 13:24:57 +01:00
translations: {fr: 'Fonctionnalités'},
2025-11-12 22:29:35 +01:00
items: [
2025-11-18 19:57:28 +01:00
{slug: 'features/search/domain-search'},
2025-11-21 13:24:57 +01:00
{label: 'Domain back-order', autogenerate: {directory: 'features/backorder'}, translations: {fr: 'Achat automatisé'}},
{label: 'Domain tracking', autogenerate: {directory: 'features/tracking'}, translations: {fr: 'Suivi des domaines'}},
{label: 'Infrastructure', autogenerate: {directory: 'features/infrastructure'}, translations: {fr: 'Infrastructure'}},
2025-11-12 22:29:35 +01:00
]
},
{
label: 'Developing',
2025-11-21 13:24:57 +01:00
translations: {fr: 'Développement'},
2025-11-12 22:29:35 +01:00
items: [
{slug: 'developing/technical-stack'},
{slug: 'developing/implementing-new-provider'},
2025-11-12 22:29:35 +01:00
{slug: 'developing/translation'},
2025-11-21 13:24:57 +01:00
{label: 'Contributing', autogenerate: {directory: 'developing/contributing'}, translations: {fr: 'Contribuer'}}
2025-11-12 22:29:35 +01:00
],
},
2025-11-21 13:24:57 +01:00
{label: 'Legal', autogenerate: {directory: 'legal'}, collapsed: true, translations: {fr: 'Légal'}},
{slug: 'acknowledgment', translations: {fr: 'Remerciements'}},
{label: 'Definitions', autogenerate: {directory: 'definitions'}, collapsed: true, translations: {fr: 'Définitions'}},
2025-11-12 22:29:35 +01:00
],
locales: {
en: {
label: 'English',
lang: 'en'
2025-11-21 13:24:57 +01:00
},
fr: {
label: 'Français',
lang: 'fr'
2025-11-12 22:29:35 +01:00
}
},
head: [
2025-11-14 15:27:43 +01:00
{
tag: 'meta',
attrs: {
name: 'keywords',
content: 'Domain Watchdog, RDAP, WHOIS, domain monitoring, domain history, domain expiration, domain tracker'
},
},
{
tag: 'meta',
attrs: {
name: 'author',
content: 'Maël Gangloff'
},
},
2025-11-13 21:12:08 +01:00
{
tag: 'meta',
attrs: {name: 'twitter:card', content: 'summary'},
},
{
tag: 'meta',
attrs: {name: 'twitter:url', content: BASE_URL},
},
2025-11-13 21:00:55 +01:00
{
tag: 'meta',
attrs: {property: 'og:image', content: BASE_URL + '/logo.png'},
},
2025-11-14 15:27:43 +01:00
{
tag: 'meta',
attrs: {property: 'og:image:alt', content: 'Domain Watchdog logo'},
},
2025-11-12 22:29:35 +01:00
{
tag: 'script',
attrs: {type: 'text/javascript'},
content: `var _paq = window._paq = window._paq || [];
_paq.push(['trackPageView']);
_paq.push(['enableLinkTracking']);
_paq.push(['trackAllContentImpressions']);
_paq.push(['trackVisibleContentImpressions']);
_paq.push(['enableHeartBeatTimer']);
(function () {
var u = "//sonar.domainwatchdog.eu/";
_paq.push(['setTrackerUrl', u + 'sonar']);
_paq.push(['setSiteId', '4']);
var d = document, g = d.createElement('script'), s = d.getElementsByTagName('script')[0];
g.async = true;
g.src = u + 'sonar.js';
s.parentNode.insertBefore(g, s);
})();`
}
2025-11-16 01:09:23 +01:00
],
2025-11-16 13:44:56 +01:00
plugins: [
starlightLinksValidator({
errorOnLocalLinks: false
}),
starlightCoolerCredit({
credit: {
title: '',
href: 'https://maelgangloff.fr',
description: 'Maintained with ♡ by Maël Gangloff & contributors'
},
showImage: false
2025-11-18 19:57:28 +01:00
}),
starlightKbd({
types: [
2025-11-21 13:24:57 +01:00
{id: 'generic', label: 'Generic', default: true},
{id: 'mac', label: 'macOS'}
2025-11-18 19:57:28 +01:00
],
}),
],
customCss: [
'./src/styles/index.css'
2025-11-16 13:44:56 +01:00
]
2025-11-16 01:09:23 +01:00
}),
mermaid()
2025-11-12 22:29:35 +01:00
]
2025-11-13 21:00:55 +01:00
})