import type { NextPage } from "next"; import Link from "next/link"; import { useEffect } from "react"; import { Discord, Github, Instagram, Steam, Linkedin } from "@icons-pack/react-simple-icons"; import Layout from "../components/Blog/Layout"; import styles from "../styles/Blog/AboutMe.module.scss"; import pic from "../public/img/me.png"; import skills, { AdditionalSkill, Skill, SkillCard } from "../data/skills"; import achievements from "../data/achievements"; import Image from "next/image"; const Badge: NextPage<{ additional: AdditionalSkill }> = ({ additional }) => { return
{additional.icon || null}{additional.name}
; }; const SkillBar: NextPage<{ skill: Skill }> = ({ skill }) => { return
{skill.icon || null}
{skill.name}
; }; const SkillCard: NextPage<{ card: SkillCard }> = ({ card }) => { const cardStyle = { background: card.colors?.background, "--ch-color": card.colors?.heading, "--bar-color": card.colors?.bars, color: card.colors?.useDarkColor === undefined ? undefined : (card.colors?.useDarkColor ? "#222" : "#ddd"), "--badge-bg": card.colors?.badges?.background, "--badge-color": card.colors?.badges?.useDarkColor === undefined ? undefined : (card.colors?.badges?.useDarkColor ? "#222" : "#ddd"), } as React.CSSProperties; return

{card.title}

{card.skillBars.sort((bar1, bar2) => bar2.pct - bar1.pct).map((skill, i) => )}
{card.additional && card.additional.length > 0 ?
{card.additional?.map((skill, i) => )}
: null}
; }; const Me: NextPage = () => { useEffect(() => { const handleScrollAnimation = () => { document.querySelectorAll(".vpAnimated").forEach((element) => { const rect = element.getBoundingClientRect(); const inVp = ( rect.top >= 0 && rect.left >= 0 && rect.bottom <= (window.innerHeight || document.documentElement.clientHeight) && rect.right <= (window.innerWidth || document.documentElement.clientWidth) ); if (inVp) (element as HTMLElement).style.animationPlayState = "running"; else (element as HTMLElement).style.animationPlayState = "paused"; }); }; handleScrollAnimation(); // First time so we don't _need_ scrolling window.addEventListener("scroll", handleScrollAnimation); }, []); const age = new Date().getFullYear() - 1998 - (new Date().getMonth() < 10 ? 1 : 0); return

This is me.

Me

My name is Daniel and I'm an prospective automation engineer, hardware enthusiast, and software developer from Germany.
I'm currently {age} years old and studying Information Systems Engineering at the TU Dresden.

To be hones, I don't really know what to write here. What could you - some visitor of my website - possibly want to know about me?

Maybe you are an employer and want to know what I can do for you? Then see below - I tried to list all my skills and achievements. If your company is doing anything related to software development (even low level one like on embedded controllers), I'm probably suited for it.

But maybe you are just another guy on the internet browsing through my website? Well then have fun! I hope you find what you are looking for. If you haven't seen it already, you should check out the command line I made. Otherwise have fun poking around in my projects.

Do you want to know more about my personal life? Well I like to play video games, watch anime, I love cats and sharks. So just your ordinary nerdy student.
If you want to be even more invested in my personal life, check out my socials below.

Any questions I did not cover, but you are interested in? Just contect me via email or any of the socials below!

Social Media

Achievements

{achievements().map((achievement, i) =>
{achievement.icon}{achievement.description}
)}

Skills

{skills().cards.map((card, i) => )}
; }; export default Me;