committed by
Mathias Schopmans
parent
43513bb1ec
commit
a8172e6579
@@ -70,6 +70,7 @@ Open the `config.json` file and configure the radar to your needs.
|
||||
| Attribute | Description |
|
||||
| --------- | ------------------------------------------------------------------------------------------------------------------------------ |
|
||||
| basePath | Set if hosting under a sub-path, otherwise set it to `/`. Default is `/techradar` |
|
||||
| baseUrl | Set to the full URL, where the radar will be hosted. Will be used for sitemap.xml. `https://www.aoe.com/techradar` |
|
||||
| toggles | (optional) Modify the behaviour and contents of the radar. See config below. |
|
||||
| sections | (optional) Modify the order of sections (`radar`, `tags`, `list`) |
|
||||
| colors | A map of colors for the radar. Can be any valid CSS color value |
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
{
|
||||
"basePath": "/techradar",
|
||||
"baseUrl": "",
|
||||
"editUrl": "https://github.dev/AOEpeople/techradar/blob/main/radar/{release}/{id}.md",
|
||||
"toggles": {
|
||||
"showChart": true,
|
||||
|
||||
37
src/app/sitemap.ts
Normal file
37
src/app/sitemap.ts
Normal file
@@ -0,0 +1,37 @@
|
||||
import { MetadataRoute } from "next";
|
||||
|
||||
import { getAbsoluteUrl, getItems, getQuadrants } from "@/lib/data";
|
||||
|
||||
export default function sitemap(): MetadataRoute.Sitemap {
|
||||
const quadrants = getQuadrants().map((quadrant) => ({
|
||||
url: getAbsoluteUrl(`/${quadrant.id}/`),
|
||||
lastModified: new Date(),
|
||||
priority: 0.8,
|
||||
}));
|
||||
|
||||
const items = getItems().map((item) => ({
|
||||
url: getAbsoluteUrl(`/${item.quadrant}/${item.id}/`),
|
||||
lastModified: new Date(),
|
||||
priority: 0.5,
|
||||
}));
|
||||
|
||||
return [
|
||||
{
|
||||
url: getAbsoluteUrl(),
|
||||
lastModified: new Date(),
|
||||
priority: 1,
|
||||
},
|
||||
{
|
||||
url: getAbsoluteUrl("/overview/"),
|
||||
lastModified: new Date(),
|
||||
priority: 0.9,
|
||||
},
|
||||
{
|
||||
url: getAbsoluteUrl("/help-and-about-tech-radar/"),
|
||||
lastModified: new Date(),
|
||||
priority: 0.9,
|
||||
},
|
||||
...quadrants,
|
||||
...items,
|
||||
];
|
||||
}
|
||||
@@ -80,6 +80,10 @@ export function getImprintUrl() {
|
||||
return config.imprint;
|
||||
}
|
||||
|
||||
export function getAbsoluteUrl(path: string = "/") {
|
||||
return `${config.baseUrl}${path}`;
|
||||
}
|
||||
|
||||
export function getItem(id: string): Item | undefined {
|
||||
return data.items.find((item) => item.id === id) as Item;
|
||||
}
|
||||
|
||||
@@ -14,8 +14,13 @@
|
||||
"incremental": true,
|
||||
"paths": {
|
||||
"@/*": ["./src/*"]
|
||||
}
|
||||
},
|
||||
"plugins": [
|
||||
{
|
||||
"name": "next"
|
||||
}
|
||||
]
|
||||
},
|
||||
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx"],
|
||||
"include": ["next-env.d.ts", "**/*.ts", "**/*.tsx", ".next/types/**/*.ts"],
|
||||
"exclude": ["node_modules"]
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user