diff --git a/package-lock.json b/package-lock.json
index d8ade66..d059dd2 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -7,16 +7,18 @@
"dependencies": {
"bootstrap": "^5.2.3",
"husky": "^8.0.2",
- "next": "*",
- "react": "*",
+ "next": "latest",
+ "react": "latest",
"react-bootstrap": "^2.6.0",
"react-div-100vh": "^0.7.0",
- "react-dom": "*",
+ "react-dom": "latest",
+ "react-helmet": "^6.1.0",
"react-icons": "^4.6.0"
},
"devDependencies": {
"@types/node": "^20.10.0",
"@types/react": "18.2.39",
+ "@types/react-helmet": "^6.1.11",
"@typescript-eslint/eslint-plugin": "^5.54.1",
"@typescript-eslint/parser": "^5.62.0",
"eslint": "^8.42.0",
@@ -449,6 +451,15 @@
"csstype": "^3.0.2"
}
},
+ "node_modules/@types/react-helmet": {
+ "version": "6.1.11",
+ "resolved": "https://registry.npmjs.org/@types/react-helmet/-/react-helmet-6.1.11.tgz",
+ "integrity": "sha512-0QcdGLddTERotCXo3VFlUSWO3ztraw8nZ6e3zJSgG7apwV5xt+pJUS8ewPBqT4NYB1optGLprNQzFleIY84u/g==",
+ "dev": true,
+ "dependencies": {
+ "@types/react": "*"
+ }
+ },
"node_modules/@types/react-transition-group": {
"version": "4.4.5",
"resolved": "https://registry.npmjs.org/@types/react-transition-group/-/react-transition-group-4.4.5.tgz",
@@ -3300,6 +3311,25 @@
"react": "^18.2.0"
}
},
+ "node_modules/react-fast-compare": {
+ "version": "3.2.2",
+ "resolved": "https://registry.npmjs.org/react-fast-compare/-/react-fast-compare-3.2.2.tgz",
+ "integrity": "sha512-nsO+KSNgo1SbJqJEYRE9ERzo7YtYbou/OqjSQKxV7jcKox7+usiUVZOAC+XnDOABXggQTno0Y1CpVnuWEc1boQ=="
+ },
+ "node_modules/react-helmet": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/react-helmet/-/react-helmet-6.1.0.tgz",
+ "integrity": "sha512-4uMzEY9nlDlgxr61NL3XbKRy1hEkXmKNXhjbAIOVw5vcFrsdYbH2FEwcNyWvWinl103nXgzYNlns9ca+8kFiWw==",
+ "dependencies": {
+ "object-assign": "^4.1.1",
+ "prop-types": "^15.7.2",
+ "react-fast-compare": "^3.1.1",
+ "react-side-effect": "^2.1.0"
+ },
+ "peerDependencies": {
+ "react": ">=16.3.0"
+ }
+ },
"node_modules/react-icons": {
"version": "4.7.1",
"resolved": "https://registry.npmjs.org/react-icons/-/react-icons-4.7.1.tgz",
@@ -3318,6 +3348,14 @@
"resolved": "https://registry.npmjs.org/react-lifecycles-compat/-/react-lifecycles-compat-3.0.4.tgz",
"integrity": "sha512-fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA=="
},
+ "node_modules/react-side-effect": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/react-side-effect/-/react-side-effect-2.1.2.tgz",
+ "integrity": "sha512-PVjOcvVOyIILrYoyGEpDN3vmYNLdy1CajSFNt4TDsVQC5KpTijDvWVoR+/7Rz2xT978D8/ZtFceXxzsPwZEDvw==",
+ "peerDependencies": {
+ "react": "^16.3.0 || ^17.0.0 || ^18.0.0"
+ }
+ },
"node_modules/react-transition-group": {
"version": "4.4.5",
"resolved": "https://registry.npmjs.org/react-transition-group/-/react-transition-group-4.4.5.tgz",
diff --git a/package.json b/package.json
index 7264ada..ce868dd 100644
--- a/package.json
+++ b/package.json
@@ -15,11 +15,13 @@
"react-bootstrap": "^2.6.0",
"react-div-100vh": "^0.7.0",
"react-dom": "latest",
+ "react-helmet": "^6.1.0",
"react-icons": "^4.6.0"
},
"devDependencies": {
"@types/node": "^20.10.0",
"@types/react": "18.2.39",
+ "@types/react-helmet": "^6.1.11",
"@typescript-eslint/eslint-plugin": "^5.54.1",
"@typescript-eslint/parser": "^5.62.0",
"eslint": "^8.42.0",
diff --git a/pages/_app.tsx b/pages/_app.tsx
index 6b3a5f4..b75e1c0 100644
--- a/pages/_app.tsx
+++ b/pages/_app.tsx
@@ -2,6 +2,7 @@
import React from 'react';
import 'bootstrap/dist/css/bootstrap.min.css';
import '../styles/styles.css';
+import {Helmet} from "react-helmet";
/**
* I don't know what this does.
@@ -9,7 +10,17 @@ import '../styles/styles.css';
* @return {Component}
*/
function MyApp({Component, pageProps}) {
- return