This commit is contained in:
parent
1d67745c69
commit
438f83e217
@ -11,28 +11,19 @@ const messages = defineMessages({
|
|||||||
defaultMessage: "Skills",
|
defaultMessage: "Skills",
|
||||||
id: "Experience.skills",
|
id: "Experience.skills",
|
||||||
},
|
},
|
||||||
yourpass: {
|
|
||||||
defaultMessage: "July 2021 - Present ({count} years)",
|
|
||||||
id: "Experience.yourpass",
|
|
||||||
},
|
|
||||||
yoursystem: {
|
|
||||||
defaultMessage: "February 2016 - December 2021 (5 years)",
|
|
||||||
id: "Experience.yoursystem",
|
|
||||||
},
|
|
||||||
past: {
|
|
||||||
defaultMessage: "Birth - February 2016",
|
|
||||||
id: "Experience.past",
|
|
||||||
},
|
|
||||||
pastDescription: {
|
|
||||||
defaultMessage:
|
|
||||||
"Working on smaller projects such as chats, forum based websites, web based presentations, most notably a system for handling the driver training center and driving school agenda... Tinkering...",
|
|
||||||
id: "Experience.pastDescription",
|
|
||||||
},
|
|
||||||
});
|
});
|
||||||
|
|
||||||
const approxCurrentYears = Math.round(
|
const approxCurrentYears = {
|
||||||
|
InvestBay: Math.round(
|
||||||
|
(Date.now() - new Date("2024-02-01").getTime()) / 1000 / 60 / 60 / 24 / 365
|
||||||
|
),
|
||||||
|
YourPass: Math.round(
|
||||||
(Date.now() - new Date("2021-06-01").getTime()) / 1000 / 60 / 60 / 24 / 365
|
(Date.now() - new Date("2021-06-01").getTime()) / 1000 / 60 / 60 / 24 / 365
|
||||||
);
|
),
|
||||||
|
YourSystemSysOps: Math.round(
|
||||||
|
(Date.now() - new Date("2022-01-01").getTime()) / 1000 / 60 / 60 / 24 / 365
|
||||||
|
),
|
||||||
|
};
|
||||||
|
|
||||||
const yourpassSkills = [
|
const yourpassSkills = [
|
||||||
"DevOps",
|
"DevOps",
|
||||||
@ -79,13 +70,40 @@ const Experience: React.FC = () => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
|
<Headline level={3}>INVESTBAY s.r.o.</Headline>
|
||||||
|
<SubHeadline level={4}>DevOps Architect</SubHeadline>
|
||||||
|
<Content>
|
||||||
|
<Paragraph>
|
||||||
|
{intl.formatMessage(
|
||||||
|
{
|
||||||
|
defaultMessage: "February 2024 - Present",
|
||||||
|
id: "Experience.investbay",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
// not used atm
|
||||||
|
count: approxCurrentYears.InvestBay,
|
||||||
|
}
|
||||||
|
)}
|
||||||
|
</Paragraph>
|
||||||
|
<Paragraph>
|
||||||
|
<strong>{intl.formatMessage(messages.skills)}:</strong>{" "}
|
||||||
|
{yourpassSkills.join(" · ")}
|
||||||
|
</Paragraph>
|
||||||
|
</Content>
|
||||||
|
|
||||||
<Headline level={3}>YOUR PASS s.r.o.</Headline>
|
<Headline level={3}>YOUR PASS s.r.o.</Headline>
|
||||||
<SubHeadline level={4}>DevOps Engineer</SubHeadline>
|
<SubHeadline level={4}>DevOps Engineer</SubHeadline>
|
||||||
<Content>
|
<Content>
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
{intl.formatMessage(messages.yourpass, {
|
{intl.formatMessage(
|
||||||
count: approxCurrentYears,
|
{
|
||||||
})}
|
defaultMessage: "July 2021 - Present ({count} years)",
|
||||||
|
id: "Experience.yourpass",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
count: approxCurrentYears.YourPass,
|
||||||
|
}
|
||||||
|
)}
|
||||||
</Paragraph>
|
</Paragraph>
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<strong>{intl.formatMessage(messages.skills)}:</strong>{" "}
|
<strong>{intl.formatMessage(messages.skills)}:</strong>{" "}
|
||||||
@ -96,10 +114,35 @@ const Experience: React.FC = () => {
|
|||||||
<Spacer />
|
<Spacer />
|
||||||
|
|
||||||
<Headline level={3}>YOUR SYSTEM s.r.o.</Headline>
|
<Headline level={3}>YOUR SYSTEM s.r.o.</Headline>
|
||||||
|
<SubHeadline level={4}>SysOps</SubHeadline>
|
||||||
|
|
||||||
|
<Content>
|
||||||
|
<Paragraph>
|
||||||
|
{intl.formatMessage(
|
||||||
|
{
|
||||||
|
defaultMessage: "January 2022 - Present ({count} years)",
|
||||||
|
id: "Experience.yoursystem",
|
||||||
|
},
|
||||||
|
{
|
||||||
|
count: approxCurrentYears.YourSystemSysOps,
|
||||||
|
}
|
||||||
|
)}
|
||||||
|
</Paragraph>
|
||||||
|
<Paragraph>
|
||||||
|
<strong>{intl.formatMessage(messages.skills)}:</strong>{" "}
|
||||||
|
{yoursystemSkills.join(" · ")}
|
||||||
|
</Paragraph>
|
||||||
|
</Content>
|
||||||
|
|
||||||
<SubHeadline level={4}>Lead Developer/Architect</SubHeadline>
|
<SubHeadline level={4}>Lead Developer/Architect</SubHeadline>
|
||||||
|
|
||||||
<Content>
|
<Content>
|
||||||
<Paragraph>{intl.formatMessage(messages.yoursystem)}</Paragraph>
|
<Paragraph>
|
||||||
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "February 2016 - December 2021 (5 years)",
|
||||||
|
id: "Experience.yoursystem",
|
||||||
|
})}
|
||||||
|
</Paragraph>
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<strong>{intl.formatMessage(messages.skills)}:</strong>{" "}
|
<strong>{intl.formatMessage(messages.skills)}:</strong>{" "}
|
||||||
{yoursystemSkills.join(" · ")}
|
{yoursystemSkills.join(" · ")}
|
||||||
@ -110,8 +153,19 @@ const Experience: React.FC = () => {
|
|||||||
<SubHeadline level={4}>Developer</SubHeadline>
|
<SubHeadline level={4}>Developer</SubHeadline>
|
||||||
|
|
||||||
<Content>
|
<Content>
|
||||||
<Paragraph>{intl.formatMessage(messages.past)}</Paragraph>
|
<Paragraph>
|
||||||
<Paragraph>{intl.formatMessage(messages.pastDescription)}</Paragraph>
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Birth - February 2016",
|
||||||
|
id: "Experience.past",
|
||||||
|
})}
|
||||||
|
</Paragraph>
|
||||||
|
<Paragraph>
|
||||||
|
{intl.formatMessage({
|
||||||
|
defaultMessage:
|
||||||
|
"Working on smaller projects such as chats, forum based websites, web based presentations, most notably a system for handling the driver training center and driving school agenda... Tinkering...",
|
||||||
|
id: "Experience.pastDescription",
|
||||||
|
})}
|
||||||
|
</Paragraph>
|
||||||
</Content>
|
</Content>
|
||||||
</>
|
</>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import React from "react";
|
import React from "react";
|
||||||
import { defineMessages, useIntl } from "react-intl";
|
import { useIntl } from "react-intl";
|
||||||
|
|
||||||
import { SubHeadline } from "../common/Headline";
|
import { SubHeadline } from "../common/Headline";
|
||||||
import { List, ListItem } from "../common/List";
|
import { List, ListItem } from "../common/List";
|
||||||
@ -7,43 +7,6 @@ import { Spacer } from "../common/Spacer";
|
|||||||
import { Paragraph } from "../common/Text";
|
import { Paragraph } from "../common/Text";
|
||||||
import Skill from "./Skill";
|
import Skill from "./Skill";
|
||||||
|
|
||||||
const messages = defineMessages({
|
|
||||||
backendDevelopment: {
|
|
||||||
defaultMessage:
|
|
||||||
"Deep knowledge of backend operations, mostly supporting web based applications using various technologies, programming languages and frameworks.",
|
|
||||||
id: "Skills.backendDevelopment",
|
|
||||||
},
|
|
||||||
backendDevelopmentAdditional: {
|
|
||||||
defaultMessage:
|
|
||||||
"In recent years, the main focus was on Go to write tooling and backend services.",
|
|
||||||
id: "Skills.backendDevelopment",
|
|
||||||
},
|
|
||||||
devops: {
|
|
||||||
defaultMessage:
|
|
||||||
"Several years of experience developing, maintaining and adhering to the DevOps practices to streamline organization's processes across both backend and frontend development.",
|
|
||||||
id: "Skills.devops",
|
|
||||||
},
|
|
||||||
frontendDevelopment: {
|
|
||||||
defaultMessage:
|
|
||||||
"Extensive experience in frontend development spanning back to the early 2000s.",
|
|
||||||
id: "Skills.frontendDevelopment",
|
|
||||||
},
|
|
||||||
infrastructureOperations: {
|
|
||||||
defaultMessage:
|
|
||||||
"Throughout my career, I have gained valuable experience in developing and maintaining high-load infrastructures over several years.",
|
|
||||||
id: "Skills.infrastructureOperations",
|
|
||||||
},
|
|
||||||
infrastructureOperationsAdditional: {
|
|
||||||
defaultMessage:
|
|
||||||
"Following the OCI (Open Container Initiative) and leveraging Docker and Kubernetes to create highly available deployments, primarily on the AWS platform, was a challenging and enjoyable experience, that has greatly enhanced my skills in this area.",
|
|
||||||
id: "Skills.infrastructureOperationsAdditional",
|
|
||||||
},
|
|
||||||
otherNotableSkills: {
|
|
||||||
defaultMessage: "Other notable skills",
|
|
||||||
id: "Skills.otherNotableSkills",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
type OtherSkill = {
|
type OtherSkill = {
|
||||||
title: string;
|
title: string;
|
||||||
description?: string;
|
description?: string;
|
||||||
@ -51,13 +14,13 @@ type OtherSkill = {
|
|||||||
|
|
||||||
const otherSkills: OtherSkill[] = [
|
const otherSkills: OtherSkill[] = [
|
||||||
{
|
{
|
||||||
title: "Primary languages",
|
title: "Strong proficiency in",
|
||||||
description: "Go, Typescript (and Javascript)",
|
description: "Go, Typescript (and Javascript), Bash, IaaC tools",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Infrastructure based skills",
|
title: "Infrastructure related skills",
|
||||||
description:
|
description:
|
||||||
"Kubernetes and AWS EKS, Containerized applications, Linux system administration, Amazon Web Services - good understanding of Networking, RDS, Queues",
|
"Kubernetes and AWS EKS, Containerized applications, Linux system administration, Amazon Web Services - good understanding of Networking, RDS, Queues. Notable experience with GCP/Azure.",
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
title: "Databases",
|
title: "Databases",
|
||||||
@ -88,21 +51,50 @@ const Skills: React.FC = () => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<Skill title="DevOps">{intl.formatMessage(messages.devops)}</Skill>
|
<Skill title="DevOps">
|
||||||
|
{intl.formatMessage({
|
||||||
|
defaultMessage:
|
||||||
|
"Several years of experience developing, maintaining and adhering to the DevOps practices to streamline organization's processes across both backend and frontend development.",
|
||||||
|
id: "Skills.devops",
|
||||||
|
})}
|
||||||
|
</Skill>
|
||||||
<Skill title="Front-End Development">
|
<Skill title="Front-End Development">
|
||||||
{intl.formatMessage(messages.frontendDevelopment)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage:
|
||||||
|
"Extensive experience in frontend development spanning back to the early 2000s.",
|
||||||
|
id: "Skills.frontendDevelopment",
|
||||||
|
})}
|
||||||
</Skill>
|
</Skill>
|
||||||
<Skill title="Back-End Development">
|
<Skill title="Back-End Development">
|
||||||
{intl.formatMessage(messages.backendDevelopment)}
|
{intl.formatMessage({
|
||||||
{intl.formatMessage(messages.backendDevelopmentAdditional)}
|
defaultMessage:
|
||||||
|
"Deep knowledge of backend operations, mostly supporting web based applications using various technologies, programming languages and frameworks.",
|
||||||
|
id: "Skills.backendDevelopment",
|
||||||
|
})}
|
||||||
|
{intl.formatMessage({
|
||||||
|
defaultMessage:
|
||||||
|
"In recent years, the main focus was on Go to write tooling and backend services.",
|
||||||
|
id: "Skills.backendDevelopment",
|
||||||
|
})}
|
||||||
</Skill>
|
</Skill>
|
||||||
<Skill title="Infrastructure operations">
|
<Skill title="Infrastructure operations">
|
||||||
{intl.formatMessage(messages.infrastructureOperations)}
|
{intl.formatMessage({
|
||||||
{intl.formatMessage(messages.infrastructureOperationsAdditional)}
|
defaultMessage:
|
||||||
|
"Throughout my career, I have gained valuable experience in developing and maintaining high-load infrastructures over several years.",
|
||||||
|
id: "Skills.infrastructureOperations",
|
||||||
|
})}
|
||||||
|
{intl.formatMessage({
|
||||||
|
defaultMessage:
|
||||||
|
"Following the OCI (Open Container Initiative) and leveraging Docker and Kubernetes to create highly available deployments, primarily on the AWS platform, was a challenging and enjoyable experience, that has greatly enhanced my skills in this area.",
|
||||||
|
id: "Skills.infrastructureOperationsAdditional",
|
||||||
|
})}
|
||||||
</Skill>
|
</Skill>
|
||||||
<Spacer withDivider />
|
<Spacer withDivider />
|
||||||
<SubHeadline level={4}>
|
<SubHeadline level={4}>
|
||||||
{intl.formatMessage(messages.otherNotableSkills)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Other notable skills",
|
||||||
|
id: "Skills.otherNotableSkills",
|
||||||
|
})}
|
||||||
</SubHeadline>
|
</SubHeadline>
|
||||||
<List>
|
<List>
|
||||||
{otherSkills.map((s) => (
|
{otherSkills.map((s) => (
|
||||||
|
|||||||
@ -1,5 +1,5 @@
|
|||||||
import React, { useEffect, useRef } from "react";
|
import React, { useEffect, useRef } from "react";
|
||||||
import { defineMessages, useIntl } from "react-intl";
|
import { useIntl } from "react-intl";
|
||||||
|
|
||||||
import { CONTACT_EMAIL, CONTACT_PHONE } from "../../config/environment";
|
import { CONTACT_EMAIL, CONTACT_PHONE } from "../../config/environment";
|
||||||
import { Contact } from "../common/Contact";
|
import { Contact } from "../common/Contact";
|
||||||
@ -7,29 +7,6 @@ import { List, ListItem } from "../common/List";
|
|||||||
import { Spacer } from "../common/Spacer";
|
import { Spacer } from "../common/Spacer";
|
||||||
import NavigationHeadline from "./NavigationHeadline";
|
import NavigationHeadline from "./NavigationHeadline";
|
||||||
|
|
||||||
const messages = defineMessages({
|
|
||||||
certifications: {
|
|
||||||
defaultMessage: "Certifications",
|
|
||||||
id: "Navigation.certifications",
|
|
||||||
},
|
|
||||||
contact: {
|
|
||||||
defaultMessage: "Contact",
|
|
||||||
id: "Navigation.contact",
|
|
||||||
},
|
|
||||||
experience: {
|
|
||||||
defaultMessage: "Experience",
|
|
||||||
id: "Navigation.experience",
|
|
||||||
},
|
|
||||||
objective: {
|
|
||||||
defaultMessage: "Objective",
|
|
||||||
id: "Navigation.objective",
|
|
||||||
},
|
|
||||||
topSkills: {
|
|
||||||
defaultMessage: "Top Skills",
|
|
||||||
id: "Navigation.topSkills",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
const getTopOffset = (input: HTMLElement) => {
|
const getTopOffset = (input: HTMLElement) => {
|
||||||
let el: HTMLElement | Element | null = input;
|
let el: HTMLElement | Element | null = input;
|
||||||
let o = 0;
|
let o = 0;
|
||||||
@ -110,7 +87,10 @@ const MainNavigation: React.FC = () => {
|
|||||||
return (
|
return (
|
||||||
<div ref={ref}>
|
<div ref={ref}>
|
||||||
<NavigationHeadline>
|
<NavigationHeadline>
|
||||||
{intl.formatMessage(messages.contact)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Contact",
|
||||||
|
id: "Navigation.contact",
|
||||||
|
})}
|
||||||
</NavigationHeadline>
|
</NavigationHeadline>
|
||||||
|
|
||||||
<Spacer />
|
<Spacer />
|
||||||
@ -118,28 +98,40 @@ const MainNavigation: React.FC = () => {
|
|||||||
<Contact email={CONTACT_EMAIL} phoneNumber={CONTACT_PHONE} />
|
<Contact email={CONTACT_EMAIL} phoneNumber={CONTACT_PHONE} />
|
||||||
|
|
||||||
<NavigationHeadline href="#objective">
|
<NavigationHeadline href="#objective">
|
||||||
{intl.formatMessage(messages.objective)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Objective",
|
||||||
|
id: "Navigation.objective",
|
||||||
|
})}
|
||||||
</NavigationHeadline>
|
</NavigationHeadline>
|
||||||
|
|
||||||
<NavigationHeadline href="#skills">
|
<NavigationHeadline href="#skills">
|
||||||
{intl.formatMessage(messages.topSkills)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Top Skills",
|
||||||
|
id: "Navigation.topSkills",
|
||||||
|
})}
|
||||||
</NavigationHeadline>
|
</NavigationHeadline>
|
||||||
|
|
||||||
<Spacer />
|
<Spacer />
|
||||||
|
|
||||||
<List>
|
<List>
|
||||||
<ListItem>DevOps</ListItem>
|
<ListItem>DevOps</ListItem>
|
||||||
<ListItem>Front-End Development</ListItem>
|
|
||||||
<ListItem>Back-End Development</ListItem>
|
|
||||||
<ListItem>Kubernetes</ListItem>
|
<ListItem>Kubernetes</ListItem>
|
||||||
<ListItem>Typescript</ListItem>
|
<ListItem>Linux</ListItem>
|
||||||
<ListItem>Go</ListItem>
|
<ListItem>Go</ListItem>
|
||||||
|
<ListItem>Typescript</ListItem>
|
||||||
|
<ListItem>Back-End Development</ListItem>
|
||||||
|
<ListItem>Front-End Development</ListItem>
|
||||||
|
<ListItem>Scripting:</ListItem>
|
||||||
|
<ListItem>Bash, Python, Lua</ListItem>
|
||||||
</List>
|
</List>
|
||||||
|
|
||||||
<Spacer spacing={0} withDivider />
|
<Spacer spacing={0} withDivider />
|
||||||
|
|
||||||
<NavigationHeadline>
|
<NavigationHeadline>
|
||||||
{intl.formatMessage(messages.certifications)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Certifications",
|
||||||
|
id: "Navigation.certifications",
|
||||||
|
})}
|
||||||
</NavigationHeadline>
|
</NavigationHeadline>
|
||||||
|
|
||||||
<Spacer />
|
<Spacer />
|
||||||
@ -152,7 +144,10 @@ const MainNavigation: React.FC = () => {
|
|||||||
<Spacer spacing={0} withDivider />
|
<Spacer spacing={0} withDivider />
|
||||||
|
|
||||||
<NavigationHeadline href="#experience">
|
<NavigationHeadline href="#experience">
|
||||||
{intl.formatMessage(messages.experience)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Experience",
|
||||||
|
id: "Navigation.experience",
|
||||||
|
})}
|
||||||
</NavigationHeadline>
|
</NavigationHeadline>
|
||||||
</div>
|
</div>
|
||||||
);
|
);
|
||||||
|
|||||||
@ -1,6 +1,6 @@
|
|||||||
import styled from "@emotion/styled";
|
import styled from "@emotion/styled";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { defineMessages, useIntl } from "react-intl";
|
import { useIntl } from "react-intl";
|
||||||
|
|
||||||
import { Experience, Skills, Summary } from "../components/CV";
|
import { Experience, Skills, Summary } from "../components/CV";
|
||||||
import MainLayout from "../components/Layout/MainLayout";
|
import MainLayout from "../components/Layout/MainLayout";
|
||||||
@ -11,21 +11,6 @@ import { Headline, SubHeadline } from "../components/common/Headline";
|
|||||||
import { Spacer } from "../components/common/Spacer";
|
import { Spacer } from "../components/common/Spacer";
|
||||||
import { CONTACT_EMAIL, CONTACT_PHONE, POSITION } from "../config/environment";
|
import { CONTACT_EMAIL, CONTACT_PHONE, POSITION } from "../config/environment";
|
||||||
|
|
||||||
const messages = defineMessages({
|
|
||||||
experienceTitle: {
|
|
||||||
defaultMessage: "Experience",
|
|
||||||
id: "Dashboard.experienceTitle",
|
|
||||||
},
|
|
||||||
location: {
|
|
||||||
defaultMessage: "Central Bohemia, Czechia",
|
|
||||||
id: "Dashboard.location",
|
|
||||||
},
|
|
||||||
skillsTitle: {
|
|
||||||
defaultMessage: "Skills",
|
|
||||||
id: "Dashboard.skillsTitle",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
const HiddenWithNav = styled("div")({
|
const HiddenWithNav = styled("div")({
|
||||||
display: "none",
|
display: "none",
|
||||||
[hideNavigationMQ]: {
|
[hideNavigationMQ]: {
|
||||||
@ -41,7 +26,10 @@ const Dashboard: React.FC = () => {
|
|||||||
<Headline level={1}>Lukáš Čech</Headline>
|
<Headline level={1}>Lukáš Čech</Headline>
|
||||||
<SubHeadline level={2}>{POSITION}</SubHeadline>
|
<SubHeadline level={2}>{POSITION}</SubHeadline>
|
||||||
<SubHeadline level={4}>
|
<SubHeadline level={4}>
|
||||||
{intl.formatMessage(messages.location)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Central Bohemia, Czechia",
|
||||||
|
id: "Dashboard.location",
|
||||||
|
})}
|
||||||
</SubHeadline>
|
</SubHeadline>
|
||||||
|
|
||||||
<HiddenWithNav>
|
<HiddenWithNav>
|
||||||
@ -58,7 +46,12 @@ const Dashboard: React.FC = () => {
|
|||||||
<div id="skills" />
|
<div id="skills" />
|
||||||
<Spacer withDivider />
|
<Spacer withDivider />
|
||||||
|
|
||||||
<Headline level={2}>{intl.formatMessage(messages.skillsTitle)}</Headline>
|
<Headline level={2}>
|
||||||
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Skills",
|
||||||
|
id: "Dashboard.skillsTitle",
|
||||||
|
})}
|
||||||
|
</Headline>
|
||||||
<Spacer />
|
<Spacer />
|
||||||
<Content>
|
<Content>
|
||||||
<Skills />
|
<Skills />
|
||||||
@ -68,7 +61,10 @@ const Dashboard: React.FC = () => {
|
|||||||
<Spacer withDivider />
|
<Spacer withDivider />
|
||||||
|
|
||||||
<Headline level={2}>
|
<Headline level={2}>
|
||||||
{intl.formatMessage(messages.experienceTitle)}
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Experience",
|
||||||
|
id: "Dashboard.experienceTitle",
|
||||||
|
})}
|
||||||
</Headline>
|
</Headline>
|
||||||
<Spacer />
|
<Spacer />
|
||||||
<Content>
|
<Content>
|
||||||
|
|||||||
@ -1,16 +1,9 @@
|
|||||||
import styled from "@emotion/styled";
|
import styled from "@emotion/styled";
|
||||||
import React from "react";
|
import React from "react";
|
||||||
import { defineMessages, useIntl } from "react-intl";
|
import { useIntl } from "react-intl";
|
||||||
|
|
||||||
import { Link } from "../components/common/Link";
|
import { Link } from "../components/common/Link";
|
||||||
|
|
||||||
const messages = defineMessages({
|
|
||||||
notFound: {
|
|
||||||
defaultMessage: "Nothing to see here",
|
|
||||||
id: "Router.NotFound",
|
|
||||||
},
|
|
||||||
});
|
|
||||||
|
|
||||||
const Root = styled("div")({
|
const Root = styled("div")({
|
||||||
display: "flex",
|
display: "flex",
|
||||||
flexDirection: "column",
|
flexDirection: "column",
|
||||||
@ -25,7 +18,12 @@ const NotFound = () => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<Root>
|
<Root>
|
||||||
<p>{intl.formatMessage(messages.notFound)}</p>
|
<p>
|
||||||
|
{intl.formatMessage({
|
||||||
|
defaultMessage: "Nothing to see here",
|
||||||
|
id: "Router.NotFound",
|
||||||
|
})}
|
||||||
|
</p>
|
||||||
<Link to="/">Go home</Link>
|
<Link to="/">Go home</Link>
|
||||||
</Root>
|
</Root>
|
||||||
);
|
);
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user