Personal-site/pages/index.js

93 lines
2.8 KiB
JavaScript
Raw Normal View History

2020-06-14 09:06:49 +00:00
import Head from "next/head";
import CaseSection from "../components/CaseSection";
2020-06-14 14:20:45 +00:00
import HomeSection from "../components/HomeSection";
2021-04-15 11:47:14 +00:00
import React from "react";
2020-06-14 08:40:51 +00:00
2020-06-14 11:47:02 +00:00
export default function Home({ person, caseStudies }) {
2020-06-14 14:20:45 +00:00
const caseSectionRef = React.useRef();
function scrollToRef() {
console.log(caseSectionRef.current.offsetTop);
if (typeof window !== "undefined") {
console.log(caseSectionRef.current.offsetTop);
window.scrollTo(0, caseSectionRef.current.offsetTop);
}
}
2020-06-14 08:40:51 +00:00
return (
<div className="container">
<Head>
<title>Tanguy Herbron</title>
<link rel="icon" href="/favicon.svg" />
2020-06-14 08:40:51 +00:00
</Head>
2020-06-14 11:47:02 +00:00
2020-06-14 14:20:45 +00:00
<HomeSection scrollFunction={scrollToRef.bind(this)} person={person} />
2020-06-14 11:47:02 +00:00
2020-06-14 14:20:45 +00:00
<div ref={caseSectionRef}>
<CaseSection caseStudies={caseStudies} />
</div>
2020-06-14 08:40:51 +00:00
</div>
2020-06-14 09:06:49 +00:00
);
2020-06-14 08:40:51 +00:00
}
2020-06-14 11:47:02 +00:00
export async function getStaticProps() {
const person = {
firstName: "Tanguy",
lastName: "Herbron",
description: "Full Stack Developer",
profilePicture: "/images/profile-picture.png",
2020-06-14 11:47:02 +00:00
infos: {
location: {
value: "Copenhagen, Denmark",
link: "https://www.visitcopenhagen.com/",
},
github: {
value: "/TanguyHerbron",
link: "https://github.com/TanguyHerbron",
},
linkedin: {
value: "Tanguy Herbron",
link: "https://linkedin.com/in/tanguy-herbron-5a3772150",
},
email: {
value: "tanguy.herbron@outlook.com",
link: "mailto:tanguy.herbron@outlook.com",
},
},
};
const caseStudies = [
{
2021-04-19 13:40:13 +00:00
title: "Dotfiles",
2020-06-14 11:47:02 +00:00
short_description:
2021-04-19 13:40:13 +00:00
"A set of Linux configuration files (dotfiles) I am using on a daily basis accross all of my machines. This includes configuration for my window manager, text editor and development environment. It also includes a set of custom scripts for various usages.",
cover: "/images/dotfiles/cover.png",
2021-04-19 13:38:43 +00:00
icon: "/images/dotfiles/icon.svg",
2021-04-19 13:34:05 +00:00
link: "https://github.com/TanguyHerbron/dotfiles"
2020-06-14 11:47:02 +00:00
},
{
2021-04-19 13:40:13 +00:00
title: "Halia",
2020-06-14 11:47:02 +00:00
short_description:
2021-04-19 13:40:13 +00:00
"Personal infrastructure grouping self-hosted production ready services, tinkering environment and more. As of now, it includes Bitwarden, Nextcloud, Jellyfin and Focalboard just to name a few.",
cover: "/images/halia/cover.png",
2021-04-19 13:38:43 +00:00
icon: "/images/halia/logo.svg",
2021-04-19 13:34:05 +00:00
link: "https://wiki.halia.dev"
2020-06-14 11:47:02 +00:00
},
{
2021-04-19 13:40:13 +00:00
title: "Moodl",
2020-06-14 11:47:02 +00:00
short_description:
2021-04-19 13:40:13 +00:00
"Android application for easy cryptocurrency and ICO portfolio tracking, with additional information such as global market volumes, global market share and more.",
cover: "/images/moodl/cover.png",
2021-04-19 13:38:43 +00:00
icon: "/images/moodl/icon.png",
2021-04-19 13:34:05 +00:00
link: "https://github.com/TanguyHerbron/Moodl"
2020-06-14 11:47:02 +00:00
},
];
return {
props: {
person: person,
caseStudies: caseStudies,
},
};
}