import type {NextPageWithLayout} from "./_app" import type { ReactElement } from "react" import Layout from "../components/layout" import styled from "styled-components" import Link from "next/link" import IconLink from "components/iconlink" import {faEnvelope, faFolderOpen} from "@fortawesome/free-solid-svg-icons" import {faGit, faGithub} from "@fortawesome/free-brands-svg-icons" export const Section = styled.section` display: flex; justify-content: center; flex-direction: column; padding: 0 1rem; /*margin: 2rem 0;*/ margin: 0 0; min-height: 100vh; h2, h3 { margin: 8px 0; } p { margin: 0; color: var(--fg); } .topmargin { margin-top: 2rem; } ul li { margin: .5rem 2.5rem; } #img-container { display: flex; justify-content: center; } #img-container img { width: 22rem; height: auto; } ` export const Code = styled.code` background-color: var(--bg-dark); color: var(--fg-code); border-radius: .4rem; padding: .1rem .4rem; ` export const CList = styled.ul` list-style: none; li { margin: 1rem !important; } ` export const Nem = styled.span` color: var(--fg-faded); opacity: .8; ` export const LinkList = styled.div` display: flex; gap: 1.5rem; font-size: 1.2rem; border: unset; justify-content: center; a { color: var(--fg-button); transition: var(--trans-time) opacity; } a:hover { opacity: .4; } @media screen and (max-width: 960px) { word-break: break-word; } ` function getAge() { let birth = 1050019200; let now = Math.floor(Date.now() / 1000); return now-birth; } function secondsToYears(secs: number) { return Math.floor(secs / 31557600.0); } const Page: NextPageWithLayout = () => { return ( <>

$ whoami

> I am a {secondsToYears(getAge())} year old Computer Science & Engineering student with a passion for programming, physics, mathematics and anything *NIX (Linux, UNIX etc) related.

{/*TODO: Add GitHub code frequency/contrib here*/}

Most of my projects are open-source, and if you are interested, you can find all of my projects on my git-server or GitHub. You can also check out /projects to view all of my projects (including hardware projects and so on).

{/*
*/}

Contact

You can contact me through email. And if you prefer it, you can contact me using PGP. Do note that my email address below is encrypted as a precaution against bots et cetera. Do not worry, it is easy to crack. Alternatively you could query for my email with my PGP fingerprint (key-id) on some PGP key server (i.e. the MIT or Ubuntu key-server).

  • PGP fingerprint: 68B2 9768 49F0 3C72 38AE B081 E31A 99CE 3E75 A158
  • Email: cnlueXpkaXZmZ0B0em52eS5wYnoK
  • GitHub: github.com/E-Almqvist
  • ) } Page.getLayout = (page: ReactElement) => { return {page} } export default Page