diff --git a/.gitignore b/.gitignore index f0b9eeef7..893269433 100644 --- a/.gitignore +++ b/.gitignore @@ -33,4 +33,6 @@ yarn-error.log* # vercel .vercel -public/rss.xml \ No newline at end of file +public/rss.xml +public/sitemap.xml +public/sitemap-0.xml \ No newline at end of file diff --git a/next-sitemap.js b/next-sitemap.js new file mode 100644 index 000000000..9d7a5e2eb --- /dev/null +++ b/next-sitemap.js @@ -0,0 +1,3 @@ +module.exports = { + siteUrl: process.env.SITE_URL || 'https://garrit.xyz', +} \ No newline at end of file diff --git a/package-lock.json b/package-lock.json index babf6b83e..dffc31c49 100644 --- a/package-lock.json +++ b/package-lock.json @@ -21,10 +21,17 @@ "typeit-react": "2.0.1" }, "devDependencies": { + "next-sitemap": "^2.1.5", "raw-loader": "^4.0.2", "sass": "1.45.1" } }, + "node_modules/@corex/deepmerge": { + "version": "2.6.148", + "resolved": "https://registry.npmjs.org/@corex/deepmerge/-/deepmerge-2.6.148.tgz", + "integrity": "sha512-6QMz0/2h5C3ua51iAnXMPWFbb1QOU1UvSM4bKBw5mzdT+WtLgjbETBBIQZ+Sh9WvEcGwlAt/DEdRpIC3XlDBMA==", + "dev": true + }, "node_modules/@next/env": { "version": "12.0.9", "resolved": "https://registry.npmjs.org/@next/env/-/env-12.0.9.tgz", @@ -934,7 +941,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, "hasInstallScript": true, "optional": true, "os": [ @@ -2263,6 +2269,25 @@ } } }, + "node_modules/next-sitemap": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/next-sitemap/-/next-sitemap-2.1.5.tgz", + "integrity": "sha512-4FDQhofIOa6kJf8s7BJ7XHbm5UdJ4dqwDnOB9sHl7zi4X50rzNf12wPhW/K41wZohtPKZV2jmrrc+XDxj1dpcA==", + "dev": true, + "dependencies": { + "@corex/deepmerge": "^2.6.148", + "minimist": "^1.2.5" + }, + "bin": { + "next-sitemap": "bin/next-sitemap" + }, + "engines": { + "node": ">=14" + }, + "peerDependencies": { + "next": "*" + } + }, "node_modules/node-releases": { "version": "1.1.77", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", @@ -3173,6 +3198,12 @@ } }, "dependencies": { + "@corex/deepmerge": { + "version": "2.6.148", + "resolved": "https://registry.npmjs.org/@corex/deepmerge/-/deepmerge-2.6.148.tgz", + "integrity": "sha512-6QMz0/2h5C3ua51iAnXMPWFbb1QOU1UvSM4bKBw5mzdT+WtLgjbETBBIQZ+Sh9WvEcGwlAt/DEdRpIC3XlDBMA==", + "dev": true + }, "@next/env": { "version": "12.0.9", "resolved": "https://registry.npmjs.org/@next/env/-/env-12.0.9.tgz", @@ -3866,7 +3897,6 @@ "version": "2.3.2", "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.2.tgz", "integrity": "sha512-xiqMQR4xAeHTuB9uWm+fFRcIOgKBMiOBP+eXiyT7jsgVCq1bkVygt00oASowB7EdtpOHaaPgKt812P9ab+DDKA==", - "dev": true, "optional": true }, "glob": { @@ -4724,6 +4754,16 @@ "use-subscription": "1.5.1" } }, + "next-sitemap": { + "version": "2.1.5", + "resolved": "https://registry.npmjs.org/next-sitemap/-/next-sitemap-2.1.5.tgz", + "integrity": "sha512-4FDQhofIOa6kJf8s7BJ7XHbm5UdJ4dqwDnOB9sHl7zi4X50rzNf12wPhW/K41wZohtPKZV2jmrrc+XDxj1dpcA==", + "dev": true, + "requires": { + "@corex/deepmerge": "^2.6.148", + "minimist": "^1.2.5" + } + }, "node-releases": { "version": "1.1.77", "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-1.1.77.tgz", diff --git a/package.json b/package.json index ae3e1c4c1..fd991334f 100644 --- a/package.json +++ b/package.json @@ -3,11 +3,12 @@ "version": "0.1.0", "private": true, "scripts": { - "start": "npm run build:rss && next dev", + "start": "npm run build && next dev", "start:prod": "npm run build && next start", - "build": "npm run build:rss && next build", + "build": "next build && npm run build:rss && npm run build:sitemap && next build", "build:static": "npm run build && next export", - "build:rss": "node lib/rss.js" + "build:rss": "node lib/rss.js", + "build:sitemap": "next-sitemap" }, "dependencies": { "glob": "^7.1.6", @@ -23,6 +24,7 @@ "typeit-react": "2.0.1" }, "devDependencies": { + "next-sitemap": "^2.1.5", "raw-loader": "^4.0.2", "sass": "1.45.1" }