diff --git a/.gitignore b/.gitignore
index 9dfddc1..1249e04 100644
--- a/.gitignore
+++ b/.gitignore
@@ -39,3 +39,8 @@ yarn-error.log*
# typescript
*.tsbuildinfo
+
+# site map
+public/sitemap.xml
+public/sitemap-0.xml
+public/robots.txt
\ No newline at end of file
diff --git a/messages/en.json b/messages/en.json
index 9450e53..b0db8a1 100644
--- a/messages/en.json
+++ b/messages/en.json
@@ -3,7 +3,7 @@
"description": "Hackerspace NTNU, a student-led project open to all students, offers access to new technology like 3D printers and VR equipment. Our members provide varied expertise to help with your projects, from making an LED light blink to creating a 3D model. Visit our workshop or join our Slack channel for assistance or a friendly chat."
},
"layout": {
- "home": "Home",
+ "hackerspaceHome": "Hackerspace homepage",
"news": "News",
"events": "Events",
"about": "About",
diff --git a/messages/no.json b/messages/no.json
index 40a2edc..5550ac7 100644
--- a/messages/no.json
+++ b/messages/no.json
@@ -3,7 +3,7 @@
"description": "Hackerspace NTNU, et studentledet prosjekt åpent for alle studenter, tilbyr tilgang til ny teknologi som 3D-printere og VR-utstyr. Våre medlemmer gir variert ekspertise for å hjelpe med prosjektene dine, fra å få en LED-lys til å blinke til å lage en 3D-modell. Besøk vårt verksted eller bli med i vår Slack-kanal for assistanse eller en vennlig prat."
},
"layout": {
- "home": "Hjem",
+ "hackerspaceHome": "Hackerspace hjemmeside",
"news": "Nyheter",
"events": "Arrangementer",
"about": "Om oss",
diff --git a/next-sitemap.config.js b/next-sitemap.config.js
new file mode 100644
index 0000000..cf0d9ad
--- /dev/null
+++ b/next-sitemap.config.js
@@ -0,0 +1,7 @@
+/** @type {import('next-sitemap').IConfig} */
+const config = {
+ siteUrl: process.env.SITE_URL ?? 'https://localhost:3000',
+ generateRobotsTxt: true,
+};
+
+export default config;
diff --git a/package-lock.json b/package-lock.json
index 9886faa..c36b580 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -19,6 +19,7 @@
"lucide-react": "^0.312.0",
"next": "^14.0.4",
"next-intl": "^3.4.4",
+ "next-sitemap": "^4.2.3",
"next-themes": "^0.2.1",
"react": "18.2.0",
"react-dom": "18.2.0",
@@ -477,6 +478,11 @@
"node": ">=6.9.0"
}
},
+ "node_modules/@corex/deepmerge": {
+ "version": "4.0.43",
+ "resolved": "https://registry.npmjs.org/@corex/deepmerge/-/deepmerge-4.0.43.tgz",
+ "integrity": "sha512-N8uEMrMPL0cu/bdboEWpQYb/0i2K5Qn8eCsxzOmxSggJbbQte7ljMRoXm917AbntqTGOzdTu+vP3KOOzoC70HQ=="
+ },
"node_modules/@eslint-community/eslint-utils": {
"version": "4.4.0",
"resolved": "https://registry.npmjs.org/@eslint-community/eslint-utils/-/eslint-utils-4.4.0.tgz",
@@ -4475,7 +4481,6 @@
"version": "1.2.8",
"resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.8.tgz",
"integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==",
- "dev": true,
"funding": {
"url": "https://github.com/sponsors/ljharb"
}
@@ -4601,6 +4606,37 @@
"react": "^16.8.0 || ^17.0.0 || ^18.0.0"
}
},
+ "node_modules/next-sitemap": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/next-sitemap/-/next-sitemap-4.2.3.tgz",
+ "integrity": "sha512-vjdCxeDuWDzldhCnyFCQipw5bfpl4HmZA7uoo3GAaYGjGgfL4Cxb1CiztPuWGmS+auYs7/8OekRS8C2cjdAsjQ==",
+ "funding": [
+ {
+ "url": "https://github.com/iamvishnusankar/next-sitemap.git"
+ }
+ ],
+ "dependencies": {
+ "@corex/deepmerge": "^4.0.43",
+ "@next/env": "^13.4.3",
+ "fast-glob": "^3.2.12",
+ "minimist": "^1.2.8"
+ },
+ "bin": {
+ "next-sitemap": "bin/next-sitemap.mjs",
+ "next-sitemap-cjs": "bin/next-sitemap.cjs"
+ },
+ "engines": {
+ "node": ">=14.18"
+ },
+ "peerDependencies": {
+ "next": "*"
+ }
+ },
+ "node_modules/next-sitemap/node_modules/@next/env": {
+ "version": "13.5.6",
+ "resolved": "https://registry.npmjs.org/@next/env/-/env-13.5.6.tgz",
+ "integrity": "sha512-Yac/bV5sBGkkEXmAX5FWPS9Mmo2rthrOPRQQNfycJPkjUAUclomCPH7QFVCDQ4Mp2k2K1SSM6m0zrxYrOwtFQw=="
+ },
"node_modules/next-themes": {
"version": "0.2.1",
"resolved": "https://registry.npmjs.org/next-themes/-/next-themes-0.2.1.tgz",
diff --git a/package.json b/package.json
index b8386d4..6033923 100644
--- a/package.json
+++ b/package.json
@@ -4,6 +4,7 @@
"private": true,
"type": "module",
"scripts": {
+ "postbuild": "next-sitemap",
"build": "next build",
"dev": "next dev",
"lint": "next lint",
@@ -21,6 +22,7 @@
"lucide-react": "^0.312.0",
"next": "^14.0.4",
"next-intl": "^3.4.4",
+ "next-sitemap": "^4.2.3",
"next-themes": "^0.2.1",
"react": "18.2.0",
"react-dom": "18.2.0",
diff --git a/src/components/layout/LogoLink.tsx b/src/components/layout/LogoLink.tsx
index f9f984e..2a2192f 100644
--- a/src/components/layout/LogoLink.tsx
+++ b/src/components/layout/LogoLink.tsx
@@ -21,7 +21,7 @@ function LogoLink({
variant='none'
size='none'
>
-
+
HACKERSPACE