diff --git a/content/projectTextblocks/minerva/de.mdx b/content/projectTextblocks/minerva/de.mdx index db050ec..99d55fb 100644 --- a/content/projectTextblocks/minerva/de.mdx +++ b/content/projectTextblocks/minerva/de.mdx @@ -1,4 +1,4 @@ # Über MinervaTools -Unter MinervaTools biete ich ein Welten-Management-Plugin für Minecraft-Server unter Spigot oder PaperMc. -Mein Plugin ist auf große Bauserver mit hunderten aktiven Welten ausgelegt, und bietet ein Webinterface um den Überblick zu behalten. \ No newline at end of file +Unter MinervaTools biete ich ein Welten-Management-Plugin für Minecraft-Server unter Spigot oder PaperMc. +Mein Plugin ist auf große Bauserver mit hunderten aktiven Welten ausgelegt, und bietet ein Webinterface um den Überblick zu behalten. diff --git a/content/projectTextblocks/minerva/en.mdx b/content/projectTextblocks/minerva/en.mdx index 78d1599..1701ae7 100644 --- a/content/projectTextblocks/minerva/en.mdx +++ b/content/projectTextblocks/minerva/en.mdx @@ -1,4 +1,4 @@ # About MinervaTools -Under MinervaTools I offer a world management plugin for Minecraft servers running under Spigot or PaperMc. -My plugin is optimized for huge builder servers with hundreds of active worlds, and offers a web interface to keep all worlds organized. \ No newline at end of file +Under MinervaTools I offer a world management plugin for Minecraft servers running under Spigot or PaperMc. +My plugin is optimized for huge builder servers with hundreds of active worlds, and offers a web interface to keep all worlds organized. diff --git a/content/skills.json b/content/skills.json index 627ee6c..5c87504 100644 --- a/content/skills.json +++ b/content/skills.json @@ -112,4 +112,4 @@ "name": "Microsoft Office", "type": "program" } -] \ No newline at end of file +] diff --git a/src/components/navigation.js b/src/components/navigation.js index 8d53987..c01e94e 100644 --- a/src/components/navigation.js +++ b/src/components/navigation.js @@ -49,7 +49,8 @@ const Navigation = ({ isHome }) => { styles.topBar + (isHome ? " " + styles.homeBar : "") + (atTop ? " " + styles.homeBarTransparent : "") - }> + } + > diff --git a/src/components/seo.js b/src/components/seo.js index 3c4f6d3..ca4757a 100644 --- a/src/components/seo.js +++ b/src/components/seo.js @@ -63,10 +63,12 @@ function SEO({ description, meta, title }) { name: "keywords", content: site.siteMetadata.keywords, }, - ].concat(meta)}> + ].concat(meta)} + > + crossOrigin="anonymous" + > - + content="allow-reduced-framerate" + > + ); } diff --git a/src/pages/donate.js b/src/pages/donate.js index ec998fc..4e0123b 100644 --- a/src/pages/donate.js +++ b/src/pages/donate.js @@ -68,7 +68,8 @@ const DonatePage = (props) => { data-color-scheme="no-preference: light; light: dark; dark: dark;" data-icon="octicon-heart" data-size="large" - aria-label="Sponsor @Unkn0wnCat on GitHub"> + aria-label="Sponsor @Unkn0wnCat on GitHub" + > sponsorGitHub

@@ -123,11 +124,13 @@ const DonatePage = (props) => { ) + "&amount=" + amount - }> + } + > Donate using PayPal + aria-hidden="true" + > diff --git a/src/pages/donate/thank-you.js b/src/pages/donate/thank-you.js index cf0468e..9066a60 100644 --- a/src/pages/donate/thank-you.js +++ b/src/pages/donate/thank-you.js @@ -39,7 +39,8 @@ const ThankYouPage = (props) => {

+ i18nKey="donateThanksText" + > donateThanksText {{ contactEmail }} diff --git a/src/pages/friends.js b/src/pages/friends.js index 4ed631e..96d917e 100644 --- a/src/pages/friends.js +++ b/src/pages/friends.js @@ -58,9 +58,8 @@ const FriendsPage = ({ data }) => { return (

+ key={friend.url + "#" + friend.name} + >
{ "#" + friend.name + "#image" - }> + } + > { "#" + friend.name + "#name" - }> + } + > {friend.name} { "#" + friend.name + "#profession" - }> + } + > {friend.profession}
@@ -108,17 +110,20 @@ const FriendsPage = ({ data }) => { "#" + friend.name + "#links" - }> + } + >
+ rel="noreferrer" + > {" "} + aria-hidden="true" + >{" "} {friend.url}
diff --git a/src/pages/index.js b/src/pages/index.js index e33997d..fa26eb4 100644 --- a/src/pages/index.js +++ b/src/pages/index.js @@ -27,7 +27,7 @@ export const query = graphql` contactMastodonHref } } - allSkillsJson(sort: {fields: type, order: ASC}) { + allSkillsJson(sort: { fields: type, order: ASC }) { nodes { name type @@ -117,7 +117,8 @@ const IndexPage = (props) => {
+ id="particle-container" + >
{ backgroundImage: "url(https://cdn.kevink.dev/images/kevin/kevin-kandlbinder-04.jpg)", }} - className={styles.profileImage + " lazy"}>
+ className={styles.profileImage + " lazy"} + >
@@ -145,14 +147,16 @@ const IndexPage = (props) => { + rel="me" + > {meta.contactPhone} + rel="me" + > {meta.contactEmail} @@ -160,7 +164,8 @@ const IndexPage = (props) => { className={styles.contactLink} href={meta.mapsLink} rel="noreferrer " - target="_blank"> + target="_blank" + > homeMyLocation @@ -168,7 +173,8 @@ const IndexPage = (props) => { className={styles.contactLink} href={meta.contactMastodonHref} rel="noreferrer me" - target="_blank"> + target="_blank" + > {meta.contactMastodon} @@ -178,7 +184,8 @@ const IndexPage = (props) => { "https://github.com/" + meta.contactGitHub } rel="noreferrer me" - target="_blank"> + target="_blank" + > {meta.contactGitHub} @@ -192,17 +199,36 @@ const IndexPage = (props) => { {file.childMdx.body}
-

mySkills

+

+ mySkills +

- { - props.data.allSkillsJson.nodes.map((skill) => { - return ( - skill.href ? - {skill.name} : - {skill.name} - ) - }) - } + {props.data.allSkillsJson.nodes.map((skill) => { + return skill.href ? ( + + {skill.name} + + ) : ( + + {skill.name} + + ); + })}
@@ -211,7 +237,8 @@ const IndexPage = (props) => { className={styles.creditSection} href="https://unsplash.com/@jannikkiel" target="_blank" - rel="noreferrer"> + rel="noreferrer" + >
{" "} @@ -231,7 +258,8 @@ const IndexPage = (props) => { + to={"/projects/" + project.urlname} + >
{ project.image.childImageSharp .resize.src + ")", - }}> + }} + >
+ } + > + } + > {project.name} diff --git a/src/pages/index.module.scss b/src/pages/index.module.scss index 056bd11..ff82086 100644 --- a/src/pages/index.module.scss +++ b/src/pages/index.module.scss @@ -242,15 +242,16 @@ } } } - - @media(max-width: 900px) { + + @media (max-width: 900px) { flex-direction: column; > div { width: 100%; } - .skills, .aboutText { + .skills, + .aboutText { margin-left: 0; margin-right: 0; } diff --git a/src/pages/legal/datasec.js b/src/pages/legal/datasec.js index e2bdad5..afdbafd 100644 --- a/src/pages/legal/datasec.js +++ b/src/pages/legal/datasec.js @@ -288,7 +288,8 @@ export default function DataSecPage() { verarbeiten (Art. 44 bis 49 DSGVO,{" "} + target="blank" + > Informationsseite der EU-Kommission ). @@ -567,7 +568,8 @@ export default function DataSecPage() { + href="https://www.amazon.de/gp/help/customer/display.html?nodeId=201909010" + > https://www.amazon.de/gp/help/customer/display.html?nodeId=201909010 .
@@ -693,7 +695,8 @@ export default function DataSecPage() { + href="https://automattic.com/privacy/" + > https://automattic.com/privacy/ .
@@ -751,7 +754,8 @@ export default function DataSecPage() { + href="https://soundcloud.com/pages/privacy" + > https://soundcloud.com/pages/privacy . @@ -820,7 +824,8 @@ export default function DataSecPage() { + href="https://www.privacyshield.gov/participant?id=a2zt0000000TSnwAAG&status=Active" + > https://www.privacyshield.gov/participant?id=a2zt0000000TSnwAAG&status=Active ). @@ -882,7 +887,8 @@ export default function DataSecPage() { + href="https://www.whatsapp.com/legal" + > https://www.whatsapp.com/legal .
@@ -1125,7 +1131,8 @@ export default function DataSecPage() { + href="https://www.privacyshield.gov/participant?id=a2zt0000000GnZKAA0&status=Active" + > https://www.privacyshield.gov/participant?id=a2zt0000000GnZKAA0&status=Active ). @@ -1153,7 +1160,8 @@ export default function DataSecPage() { + href="https://www.cloudflare.com/security-policy" + > https://www.cloudflare.com/security-policy . @@ -1177,7 +1185,8 @@ export default function DataSecPage() { + href="https://www.google.com/intl/de/tagmanager/use-policy.html" + > https://www.google.com/intl/de/tagmanager/use-policy.html .
@@ -1235,7 +1244,8 @@ export default function DataSecPage() { + href="http://tools.google.com/dlpage/gaoptout?hl=de" + > http://tools.google.com/dlpage/gaoptout?hl=de .
@@ -1259,7 +1269,8 @@ export default function DataSecPage() { + href="https://www.privacyshield.gov/participant?id=a2zt000000001L5AAI&status=Active" + > https://www.privacyshield.gov/participant?id=a2zt000000001L5AAI&status=Active ). @@ -1272,7 +1283,8 @@ export default function DataSecPage() { + href="https://policies.google.com/privacy" + > https://policies.google.com/privacy ) sowie in den Einstellungen für die Darstellung von @@ -1280,7 +1292,8 @@ export default function DataSecPage() { + href="https://adssettings.google.com/authenticated" + > (https://adssettings.google.com/authenticated ). @@ -1300,7 +1313,8 @@ export default function DataSecPage() { + href="https://support.google.com/analytics/answer/2790010?hl=de&ref_topic=6010376" + > Universal-Analytics “ ein. „Universal Analytics“ bezeichnet ein @@ -1445,7 +1459,8 @@ export default function DataSecPage() { + href="https://vimeo.com/privacy" + > https://vimeo.com/privacy . Wir weisen darauf hin, dass Vimeo Google Analytics @@ -1454,14 +1469,16 @@ export default function DataSecPage() { + href="https://policies.google.com/privacy" + > https://policies.google.com/privacy ) sowie Opt-Out-Möglichkeiten für Google-Analytics ( + href="http://tools.google.com/dlpage/gaoptout?hl=de" + > http://tools.google.com/dlpage/gaoptout?hl=de ) oder die Einstellungen von Google für die @@ -1469,7 +1486,8 @@ export default function DataSecPage() { + href="https://adssettings.google.com/" + > https://adssettings.google.com/ ). @@ -1487,14 +1505,16 @@ export default function DataSecPage() { + href="https://www.google.com/policies/privacy/" + > https://www.google.com/policies/privacy/ , Opt-Out:{" "} + href="https://adssettings.google.com/authenticated" + > https://adssettings.google.com/authenticated . @@ -1521,7 +1541,8 @@ export default function DataSecPage() { + href="https://www.google.com/policies/privacy/" + > https://www.google.com/policies/privacy/ . @@ -1542,14 +1563,16 @@ export default function DataSecPage() { + href="https://www.google.com/policies/privacy/" + > https://www.google.com/policies/privacy/ , Opt-Out:{" "} + href="https://adssettings.google.com/authenticated" + > https://adssettings.google.com/authenticated . @@ -1572,14 +1595,16 @@ export default function DataSecPage() { + href="https://www.google.com/policies/privacy/" + > https://www.google.com/policies/privacy/ , Opt-Out:{" "} + href="https://adssettings.google.com/authenticated" + > https://adssettings.google.com/authenticated . @@ -1595,7 +1620,8 @@ export default function DataSecPage() { + href="https://www.openstreetmap.de" + > https://www.openstreetmap.de ), die auf Grundlage der Open Data Commons Open @@ -1605,7 +1631,8 @@ export default function DataSecPage() { + href="https://wiki.openstreetmap.org/wiki/Privacy_Policy" + > https://wiki.openstreetmap.org/wiki/Privacy_Policy .
@@ -1626,7 +1653,8 @@ export default function DataSecPage() { + href="https://wiki.openstreetmap.org/wiki/Privacy_Policy" + > https://wiki.openstreetmap.org/wiki/Privacy_Policy . @@ -1677,21 +1705,24 @@ export default function DataSecPage() { + href="https://www.privacyshield.gov/participant?id=a2zt0000000TORzAAO&status=Active" + > https://www.privacyshield.gov/participant?id=a2zt0000000TORzAAO&status=Active ). Datenschutzerklärung:{" "} + href="https://twitter.com/de/privacy" + > https://twitter.com/de/privacy , Opt-Out:{" "} + href="https://twitter.com/personalization" + > https://twitter.com/personalization . @@ -1717,7 +1748,8 @@ export default function DataSecPage() { + href="http://instagram.com/about/legal/privacy/" + > http://instagram.com/about/legal/privacy/ .{" "} @@ -1743,7 +1775,8 @@ export default function DataSecPage() { + href="https://about.pinterest.com/de/privacy-policy" + > https://about.pinterest.com/de/privacy-policy .{" "} @@ -1768,7 +1801,8 @@ export default function DataSecPage() { + href="https://privacy.xing.com/de/datenschutzerklaerung" + > https://privacy.xing.com/de/datenschutzerklaerung .{" "} @@ -1778,7 +1812,8 @@ export default function DataSecPage() { href="https://datenschutz-generator.de" className="dsg1-6" rel="nofollow noreferrer" - target="_blank"> + target="_blank" + > Erstellt mit Datenschutz-Generator.de von RA Dr. Thomas Schwenke diff --git a/src/pages/projects.js b/src/pages/projects.js index 2975fbd..8165668 100644 --- a/src/pages/projects.js +++ b/src/pages/projects.js @@ -8,7 +8,10 @@ import * as styles from "./projects.module.scss"; export const query = graphql` query GetProjects($language: String) { - allProjectsJson(filter: { lang: { eq: $language } }, sort: {fields: date, order: DESC}) { + allProjectsJson( + filter: { lang: { eq: $language } } + sort: { fields: date, order: DESC } + ) { nodes { lang urlname @@ -55,7 +58,8 @@ const ProjectsPage = ({ data }) => { + to={"/projects/" + project.urlname} + >
{ project.image.childImageSharp .resize.src + ")", - }}> + }} + >
+ } + > {project.name} diff --git a/src/pages/social.js b/src/pages/social.js index c3b3ee4..775ebe5 100644 --- a/src/pages/social.js +++ b/src/pages/social.js @@ -52,13 +52,15 @@ const SocialPage = ({ data }) => { href={social.url} target="_blank" rel="noreferrer me" - key={social.url}> + key={social.url} + >
+ }} + > {social.platformName} diff --git a/src/templates/project.js b/src/templates/project.js index 3a937c9..2d7683d 100644 --- a/src/templates/project.js +++ b/src/templates/project.js @@ -59,7 +59,8 @@ const ProjectTemplate = ({ data }) => { + transparentTopbar={true} + >
{ style={{ backgroundImage: "url(" + project.image.publicURL + ")", - }}>
+ }} + >

@@ -95,10 +97,12 @@ const ProjectTemplate = ({ data }) => { + rel="noreferrer" + > {" "} + aria-hidden="true" + >{" "} projectViewGitHub ) : null} @@ -106,10 +110,12 @@ const ProjectTemplate = ({ data }) => { + rel="noreferrer" + > {" "} + aria-hidden="true" + >{" "} projectViewWebsite ) : null}