diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..92b917b --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1 @@ +github: infinia-yzl diff --git a/.idea/misc.xml b/.idea/misc.xml index e85b8cb..e42218f 100644 --- a/.idea/misc.xml +++ b/.idea/misc.xml @@ -2,4 +2,4 @@ - + \ No newline at end of file diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 15b357b..6078283 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -31,6 +31,8 @@ We currently have the following image sets that you can contribute to: - The Finals (image-reachthefinals): https://github.com/infinia-yzl/image-reachthefinals - Wuthering Waves (image-wutheringwaves): https://github.com/infinia-yzl/image-wutheringwaves - Overwatch (image-overwatch): https://github.com/infinia-yzl/image-overwatch +- Webdev (image-webdev): https://github.com/infinia-yzl/image-webdev +- Supervive (image-supervive): https://github.com/infinia-yzl/image-supervive To contribute to these existing image sets, please follow the general contribution guidelines above and make sure to adhere to any specific guidelines provided in each image set's repository. diff --git a/app/layout.tsx b/app/layout.tsx index af25fc7..491204b 100644 --- a/app/layout.tsx +++ b/app/layout.tsx @@ -2,6 +2,7 @@ import type {Metadata} from "next"; import {Nunito_Sans as FontSans, Urbanist as FontHeading} from "next/font/google"; import "./globals.css"; import {cn} from "@/lib/utils" +import Link from "next/link"; import {ThemeProvider} from "next-themes" import {Toaster} from "@/components/ui/sonner"; @@ -154,19 +155,19 @@ export default function RootLayout({
- + OpenTierBoy - +
@@ -193,9 +194,9 @@ export default function RootLayout({

OpenTierBoy is an open-source project.

No ads, no logins, no sign-ups.

- About + About - Blog + Blog Email
@@ -226,8 +227,8 @@ export default function RootLayout({

Legal

- Terms of Service - Privacy Policy + Terms of Service + Privacy Policy
diff --git a/app/page.tsx b/app/page.tsx index 761ffe4..7cac2ad 100644 --- a/app/page.tsx +++ b/app/page.tsx @@ -11,6 +11,7 @@ const typedImageSetConfig = imagesetConfig as ImageSetConfig; const FEATURED_SETS = { "image-reachthefinals": ['all', 'light', 'medium', 'heavy'], + "image-supervive": ['hunter', 'fighter', 'initiator', 'frontliner', 'protector', 'controller'], "image-wutheringwaves": [ 'c_all', 'c_rarity_5', diff --git a/imageset.config.json b/imageset.config.json index 3b5f31b..59649e9 100644 --- a/imageset.config.json +++ b/imageset.config.json @@ -1999,6 +1999,193 @@ } }, "backgroundImage": "/splash/webdev-bg.webp" + }, + "image-supervive": { + "displayName": "SUPERVIVE", + "images": [ + { + "filename": "brl.webp", + "label": "BRALL", + "tags": [ + "fighter", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "bsh.webp", + "label": "BISHOP", + "tags": [ + "initiator", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "cls.webp", + "label": "CELESTE", + "tags": [ + "controller", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "ena.webp", + "label": "ELLUNA", + "tags": [ + "protector", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "flx.webp", + "label": "FELIX", + "tags": [ + "frontliner", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "gst.webp", + "label": "GHOST", + "tags": [ + "fighter", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "hsn.webp", + "label": "HUDSON", + "tags": [ + "controller", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "jin.webp", + "label": "JIN", + "tags": [ + "fighter", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "jul.webp", + "label": "JOULE", + "tags": [ + "fighter", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "kpn.webp", + "label": "KINGPIN", + "tags": [ + "initiator", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "myt.webp", + "label": "MYTH", + "tags": [ + "fighter", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "oat.webp", + "label": "OATH", + "tags": [ + "frontliner", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "shk.webp", + "label": "SHRIKE", + "tags": [ + "fighter", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "shv.webp", + "label": "SHIV", + "tags": [ + "fighter", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "vod.webp", + "label": "VOID", + "tags": [ + "controller", + "open_beta_launch", + "hunter" + ] + }, + { + "filename": "zep.webp", + "label": "ZEPH", + "tags": [ + "protector", + "open_beta_launch", + "hunter" + ] + } + ], + "tags": { + "fighter": { + "title": "Fighters", + "description": "Fighter Hunters", + "category": "general" + }, + "open_beta_launch": { + "title": "Open Beta Launch", + "description": "Images from Supervive Open Beta Launch (20-11-2024)", + "category": "general" + }, + "hunter": { + "title": "All Hunters", + "description": "Images of Hunters", + "category": "general" + }, + "initiator": { + "title": "Initiators", + "description": "Initiator Hunters", + "category": "general" + }, + "controller": { + "title": "Controllers", + "description": "Controller Hunters", + "category": "general" + }, + "protector": { + "title": "Protectors", + "description": "Protector Hunters", + "category": "general" + }, + "frontliner": { + "title": "Frontliners", + "description": "Frontliner Hunters", + "category": "general" + } + }, + "backgroundImage": "/splash/supervive-keyart.webp" } } } \ No newline at end of file diff --git a/imageset.custom.json b/imageset.custom.json index 294a88d..3a2febd 100644 --- a/imageset.custom.json +++ b/imageset.custom.json @@ -21,6 +21,10 @@ "image-webdev": { "displayName": "Web Development Technologies", "backgroundImage": "/splash/webdev-bg.webp" + }, + "image-supervive": { + "displayName": "SUPERVIVE", + "backgroundImage": "/splash/supervive-keyart.webp" } } } diff --git a/package-lock.json b/package-lock.json index 4344998..8043b4a 100644 --- a/package-lock.json +++ b/package-lock.json @@ -41,6 +41,7 @@ "image-overwatch": "^1.1.0", "image-reachthefinals": "^1.1.1", "image-set": "^2.1.0", + "image-supervive": "^1.0.2", "image-webdev": "^1.0.1", "image-wutheringwaves": "^1.1.1", "lz-string": "^1.5.0", @@ -2538,9 +2539,9 @@ } }, "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", "license": "MIT" }, "node_modules/@types/estree-jsx": { @@ -3046,9 +3047,10 @@ "peer": true }, "node_modules/acorn": { - "version": "8.12.1", - "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.12.1.tgz", - "integrity": "sha512-tcpGyI9zbizT9JbV6oYE477V6mTlXvvi0T0G3SNIYE2apm/G5huBa1+K89VGeovbg+jycCrfhl3ADxErOuO6Jg==", + "version": "8.14.0", + "resolved": "https://registry.npmjs.org/acorn/-/acorn-8.14.0.tgz", + "integrity": "sha512-cl669nCJTZBsL97OF4kUQm5g5hC2uihk0NxY3WENAC0TYdILVkAyHymAntgxGkl7K+t0cXIrH5siy5S4XkFycA==", + "license": "MIT", "bin": { "acorn": "bin/acorn" }, @@ -3056,16 +3058,6 @@ "node": ">=0.4.0" } }, - "node_modules/acorn-import-attributes": { - "version": "1.9.5", - "resolved": "https://registry.npmjs.org/acorn-import-attributes/-/acorn-import-attributes-1.9.5.tgz", - "integrity": "sha512-n02Vykv5uA3eHGM/Z2dQrcD56kL8TyDb2p1+0P83PClMnC/nc+anbQRhIOWnSq4Ke/KvDPrY3C9hDtC/A3eHnQ==", - "license": "MIT", - "peer": true, - "peerDependencies": { - "acorn": "^8" - } - }, "node_modules/acorn-jsx": { "version": "5.3.2", "resolved": "https://registry.npmjs.org/acorn-jsx/-/acorn-jsx-5.3.2.tgz", @@ -3453,9 +3445,9 @@ } }, "node_modules/browserslist": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz", - "integrity": "sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA==", + "version": "4.24.2", + "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.24.2.tgz", + "integrity": "sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==", "funding": [ { "type": "opencollective", @@ -3473,10 +3465,10 @@ "license": "MIT", "peer": true, "dependencies": { - "caniuse-lite": "^1.0.30001640", - "electron-to-chromium": "^1.4.820", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.1.0" + "caniuse-lite": "^1.0.30001669", + "electron-to-chromium": "^1.5.41", + "node-releases": "^2.0.18", + "update-browserslist-db": "^1.1.1" }, "bin": { "browserslist": "cli.js" @@ -3541,9 +3533,9 @@ } }, "node_modules/caniuse-lite": { - "version": "1.0.30001642", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001642.tgz", - "integrity": "sha512-3XQ0DoRgLijXJErLSl+bLnJ+Et4KqV1PY6JJBGAFlsNsz31zeAIncyeZfLCabHK/jtSh+671RM9YMldxjUPZtA==", + "version": "1.0.30001680", + "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001680.tgz", + "integrity": "sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA==", "funding": [ { "type": "opencollective", @@ -4465,9 +4457,9 @@ "integrity": "sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==" }, "node_modules/electron-to-chromium": { - "version": "1.4.829", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.829.tgz", - "integrity": "sha512-5qp1N2POAfW0u1qGAxXEtz6P7bO1m6gpZr5hdf5ve6lxpLM7MpiM4jIPz7xcrNlClQMafbyUDDWjlIQZ1Mw0Rw==", + "version": "1.5.62", + "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.5.62.tgz", + "integrity": "sha512-t8c+zLmJHa9dJy96yBZRXGQYoiCEnHYgFwn1asvSPZSUdVxnB62A4RASd7k41ytG3ErFBA0TpHlKg9D9SQBmLg==", "license": "ISC", "peer": true }, @@ -4477,9 +4469,10 @@ "integrity": "sha512-L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==" }, "node_modules/enhanced-resolve": { - "version": "5.17.0", - "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.0.tgz", - "integrity": "sha512-dwDPwZL0dmye8Txp2gzFmA6sxALaSvdRDjPH0viLcKrtlOL3tw62nWWweVD1SdILDTJrbrL6tdWVN58Wo6U3eA==", + "version": "5.17.1", + "resolved": "https://registry.npmjs.org/enhanced-resolve/-/enhanced-resolve-5.17.1.tgz", + "integrity": "sha512-LMHl3dXhTcfv8gM4kEzIUeTQ+7fpdA0l2tUf34BddXPkz2A5xJ5L/Pchd5BL6rdccM9QGvu0sWZzK1Z1t4wwyg==", + "license": "MIT", "dependencies": { "graceful-fs": "^4.2.4", "tapable": "^2.2.0" @@ -4674,9 +4667,9 @@ } }, "node_modules/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.2.0.tgz", + "integrity": "sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==", "license": "MIT", "peer": true, "engines": { @@ -5884,6 +5877,15 @@ "@inquirer/prompts": "^5.1.2" } }, + "node_modules/image-supervive": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/image-supervive/-/image-supervive-1.0.2.tgz", + "integrity": "sha512-zYcQxixDfYN/QGRikc5ZME2ejjJc4ubXy1u9j/Tv65ZODookj1KieQdOWMQOmygbBpuCIeX2Y6HXb9EW2Lr6kQ==", + "license": "CC-BY-SA-4.0", + "dependencies": { + "@inquirer/prompts": "^5.1.2" + } + }, "node_modules/image-webdev": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/image-webdev/-/image-webdev-1.0.1.tgz", @@ -7509,9 +7511,10 @@ "license": "MIT" }, "node_modules/micromatch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", - "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", + "version": "4.0.8", + "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", "dependencies": { "braces": "^3.0.3", "picomatch": "^2.3.1" @@ -7734,9 +7737,9 @@ } }, "node_modules/node-releases": { - "version": "2.0.17", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.17.tgz", - "integrity": "sha512-Ww6ZlOiEQfPfXM45v17oabk77Z7mg5bOt7AjDyzy7RjK9OrLrLC8dyZQoAPEOtFX9SaNf1Tdvr5gRJWdTJj7GA==", + "version": "2.0.18", + "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.18.tgz", + "integrity": "sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==", "license": "MIT", "peer": true }, @@ -9890,9 +9893,9 @@ } }, "node_modules/update-browserslist-db": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", - "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.1.tgz", + "integrity": "sha512-R8UzCaa9Az+38REPiJ1tXlImTJXlVfgHZsglwBD/k6nj76ctsH1E3q4doGrukiLQd3sGQYu56r5+lo5r94l29A==", "funding": [ { "type": "opencollective", @@ -9910,8 +9913,8 @@ "license": "MIT", "peer": true, "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.1" + "escalade": "^3.2.0", + "picocolors": "^1.1.0" }, "bin": { "update-browserslist-db": "cli.js" @@ -10073,22 +10076,21 @@ } }, "node_modules/webpack": { - "version": "5.93.0", - "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.93.0.tgz", - "integrity": "sha512-Y0m5oEY1LRuwly578VqluorkXbvXKh7U3rLoQCEO04M97ScRr44afGVkI0FQFsXzysk5OgFAxjZAb9rsGQVihA==", + "version": "5.96.1", + "resolved": "https://registry.npmjs.org/webpack/-/webpack-5.96.1.tgz", + "integrity": "sha512-l2LlBSvVZGhL4ZrPwyr8+37AunkcYj5qh8o6u2/2rzoPc8gxFJkLj1WxNgooi9pnoc06jh0BjuXnamM4qlujZA==", "license": "MIT", "peer": true, "dependencies": { - "@types/eslint-scope": "^3.7.3", - "@types/estree": "^1.0.5", + "@types/eslint-scope": "^3.7.7", + "@types/estree": "^1.0.6", "@webassemblyjs/ast": "^1.12.1", "@webassemblyjs/wasm-edit": "^1.12.1", "@webassemblyjs/wasm-parser": "^1.12.1", - "acorn": "^8.7.1", - "acorn-import-attributes": "^1.9.5", - "browserslist": "^4.21.10", + "acorn": "^8.14.0", + "browserslist": "^4.24.0", "chrome-trace-event": "^1.0.2", - "enhanced-resolve": "^5.17.0", + "enhanced-resolve": "^5.17.1", "es-module-lexer": "^1.2.1", "eslint-scope": "5.1.1", "events": "^3.2.0", diff --git a/package.json b/package.json index 9af756a..498aeeb 100644 --- a/package.json +++ b/package.json @@ -45,6 +45,7 @@ "image-overwatch": "^1.1.0", "image-reachthefinals": "^1.1.1", "image-set": "^2.1.0", + "image-supervive": "^1.0.2", "image-webdev": "^1.0.1", "image-wutheringwaves": "^1.1.1", "lz-string": "^1.5.0", diff --git a/public/splash/supervive-keyart.webp b/public/splash/supervive-keyart.webp new file mode 100644 index 0000000..d55af69 Binary files /dev/null and b/public/splash/supervive-keyart.webp differ