UI update and added text_imgs
All checks were successful
ci/cd / Build (push) Successful in 9s

This commit is contained in:
Mariia Shabelnik 2024-01-05 21:57:43 +01:00
parent 9ddf5233ad
commit 0cbe047fc5
17 changed files with 88 additions and 190 deletions

View File

@ -17,6 +17,15 @@
href="https://fonts.googleapis.com/css2?family=Roboto+Mono:wght@400;700&display=swap"
rel="stylesheet"
/>
<link
href="https://fonts.googleapis.com/css2?family=Ubuntu+Mono:wght@400;700&display=swap"
rel="stylesheet"
/>
<link
href="https://fonts.googleapis.com/css2?family=Tektur:wght@400;500;600;700;800;900&display=swap"
rel="stylesheet"
/>
<title>Mariia Shabelnik</title>
</head>
<body>

BIN
public/img/letsfly_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

BIN
public/img/letsfly_2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 415 KiB

BIN
public/img/letsfly_3.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 641 KiB

BIN
public/img/net0_0.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.5 MiB

BIN
public/img/net0_1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 MiB

BIN
public/img/net0_2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

@ -1,109 +0,0 @@
body {
margin: 0;
font-family: "Roboto Mono", monospace;
background-color: #302f39;
color: white;
}
.container {
max-width: 1000px;
margin: 0 auto;
padding: 0 1em;
}
.nav .container {
height: 4em;
}
.content {
margin-top: 5em;
}
.nav {
background-color: #302f38;
height: 4em;
position: fixed;
left: 0;
right: 0;
top: 0;
z-index: 100000;
}
/*box-shadow: inset 0px 3px 20px 10px rgba(0, 0, 0, 0.3);*/
.nav a {
text-decoration: none;
color: #e5e5ff;
transition: 0.3s;
}
.nav a:hover {
color: #fff;
text-shadow: 0 0 5px #f2ef00;
}
.nav-items {
display: flex;
justify-content: space-between;
height: 100%;
align-items: center;
}
.menu-items {
display: flex;
}
.menu-items div {
margin-left: 1em;
}
.logo {
font-size: 2em;
font-weight: bold;
}
.logo a {
text-shadow: 0 0 5px #ccff00, 0 0 15px #ccff00;
z-index: 10000;
}
.hamburger {
display: none;
}
.copyright {
font-size: 0.7em;
text-align: center;
}
.hamburger-menu {
background-color: #302f38;
z-index: 100;
position: fixed;
right: 0;
backdrop-filter: blur(3px) contrast(60%);
-webkit-backdrop-filter: blur(3px) contrast(60%);
top: 4em;
bottom: 0;
left: 0px;
display: flex;
flex-direction: column;
justify-content: center;
align-items: flex-end;
}
.hamburger-menu a {
font-size: 2em;
text-decoration: none;
margin-right: 1em;
}
@media screen and (max-width: 768px) {
.hamburger {
display: inline;
}
.menu-items {
display: none;
}
}

View File

@ -40,7 +40,7 @@ function Header() {
);
});
const headerClasses = ["sticky", "top-0", "z-40", "backdrop-blur-sm", "h-16"];
const headerClasses = ["sticky", "top-0", "z-40", "backdrop-blur-md", "h-16"];
const logoClasses = ["hover:drop-shadow-light"];
const overlayMenu = [
"bg-black/90",
@ -73,7 +73,7 @@ function Header() {
<header className={headerClasses.join(" ")}>
<div className="container mx-auto h-full">
<nav className="flex items-center h-full px-2">
<div className="flex-none text-4xl font-black ">
<div className="flex-none text-3xl md:text-4xl font-black font-headline ">
<Link className={logoClasses.join(" ")} to="/#start">
MS.
</Link>

View File

@ -6,7 +6,11 @@ function Tags({ listOfTags }) {
</div>
);
});
return <div className="text-tags flex flex-wrap gap-2 ">{tagList}</div>;
return (
<div className="text-tags flex flex-wrap gap-2 font-tags text-highlight ">
{tagList}
</div>
);
}
export default Tags;

View File

@ -6,3 +6,6 @@
body {
background-color: #031417;
}
::selection {
background: #7d9c00b1;
}

View File

@ -8,7 +8,9 @@ function About() {
return (
<div className="relative">
<div id="about" className=" absolute -top-16 "></div>
<h2 className="mb-2 text-subT"> About</h2>
<h2 className="mb-2 text-subTPhone md:text-subT font-headline">
About<span className=" text-highlight">.</span>
</h2>
<div className="flex flex-col md:flex-row">
<div className="basis-2/3 text-base">
<p>

View File

@ -9,7 +9,7 @@ function Experiance() {
const experianceListUI = experianceList.map((item, key) => {
const position = key % 2;
const imgClasses = ["flex-1", "hidden", "md:block"];
const imgClasses = ["basis-1/3", "hidden", "md:block"];
if (position === 1) {
imgClasses.push("md:order-last");
@ -20,9 +20,11 @@ function Experiance() {
<div className={imgClasses.join(" ")}>
<img className="rounded-md" src={item.img[0]} />
</div>
<div className="flex-1 flex flex-col">
<div className="basis-2/3 flex flex-col">
<div>
<h2 className="text-2xl mb-4"> {item.title}</h2>
<h2 className="text-subTMiniPhone md:text-subTMini mb-4 ">
{item.title}
</h2>
</div>
<div>
<img
@ -30,7 +32,7 @@ function Experiance() {
src={item.img[0]}
/>
</div>
<div className="text-sm mb-6">
<div className="text-base mb-6 line-clamp-3 md:line-clamp-6">
<p>{item.info}</p>
</div>
<Tags listOfTags={item.tags} />
@ -51,7 +53,9 @@ function Experiance() {
return (
<div className="relative">
<div id="experience" className=" absolute -top-16 "></div>
<h1>Welcome to Experience</h1>
<h2 className=" text-subTPhone md:text-subT font-headline">
Experience<span className=" text-highlight">.</span>
</h2>
<div className="py-4">{experianceListUI}</div>
</div>
);

View File

@ -46,14 +46,16 @@ function ExperianceDetail() {
>
<BackButton />
</button>
<div className="flex">
<div className="flex flex-col">
<div className="flex-1">
<h1>Project: {myProject.title}</h1>
<h1 className=" text-subTPhone md:text-subT">
Project: {myProject.title}
</h1>
</div>
<div className="flex-1 mt-2 mb-6">
<Tags listOfTags={myProject.tags} />
</div>{" "}
</div>
{linkUI}
<div className="flex flex-col md:flex-row gap-4">
<div className="flex-1">
<ImageGallery
@ -65,9 +67,14 @@ function ExperianceDetail() {
items={projectImg}
/>
</div>
<div className="flex-1">{myProject.info}</div>
<div className="flex-1 text-base">
{myProject.info}
<div className=" drop-shadow-doublelight hover:drop-shadow-light my-2 text-end">
{linkUI}
</div>
</div>
</div>{" "}
</div>
);
}
4;

View File

@ -4,8 +4,12 @@ function Start() {
<div id="start" className="absolute -top-16 "></div>
<div>
<h1 className=" text-title">Hello, my name is Maria.</h1>
<h2 className=" text-subT">I'm a Frontend Engineer</h2>
<h1 className="text-titlePhone md:text-title md:leading-tight mb-2 font-headline">
Hello, my name is Maria<span className=" text-highlight">.</span>
</h1>
<h2 className="text-subTPhone md:text-subT font-headline">
I'm a<span className=" text-highlight"> Frontend Engineer</span>
</h2>
<p className="text-base">
In my recent journey as a junior frontend engineer, I've gained
valuable experience through involvement in various projects within

View File

@ -4,67 +4,27 @@ const experianceList = [
{
id: "46bf76ae-8915-4e5d-ae92-4151be80e75a",
title: "Netzero web",
info: "Lorem ipsum dolor, sit amet consectetur adipisicing elit. Beatae cumque laborum, placeat nobis fugit nemo ipsa voluptates error quo possimus ea velit quos voluptatum magnam id eius quam accusamus. Eum blanditiis aperiam minus inventore laboriosam, et vel ipsam perspiciatis a facilis cum, iure alias recusandae dolorem adipisci illum. Quo maxime nisi minus mollitia praesentium cumque, temporibus incidunt nulla culpa eligendi consequatur doloremque repudiandae aspernatur quas necessitatibus tenetur. ",
img: [
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
info: "Discover the intersection of sustainability and technology in my collaboration with Net0. As the creative force behind the UI/UX design, I meticulously crafted a seamless and visually appealing user experience. Bringing this vision to life, I also spearheaded the frontend development, using React to construct an intuitive and efficient system for Net0. Immerse yourself in the synergy of eco-conscious practices and cutting-edge technology as we navigate towards a greener future, one React component at a time.",
img: ["/img/net0_0.png", "/img/net0_1.png", "/img/net0_2.png"],
tags: [
"React",
"Vite",
"Figma",
"Tailwind",
"TypeScript",
"Rest API",
"Node.js",
"Postgres",
],
tags: ["React", "Vite", "Wordpress"],
link: "https://www.net0.se",
},
{
id: "55515a25-deb1-451c-bc7d-006d293f54aa",
title: "Lets fly",
info: "Lorem ipsum dolor, sit amet consectetur adipisicing elit. Beatae cumque laborum, placeat nobis fugit nemo ipsa voluptates error quo possimus ea velit quos voluptatum magnam id eius quam accusamus. Eum blanditiis aperiam minus inventore laboriosam, et vel ipsam perspiciatis a facilis cum, iure alias recusandae dolorem adipisci illum. Quo maxime nisi minus mollitia praesentium cumque, temporibus incidunt nulla culpa eligendi consequatur doloremque repudiandae aspernatur quas necessitatibus tenetur. ",
img: [
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
],
tags: ["react", "vite", "shopify"],
link: undefined,
},
{
id: "e93a5d54-3442-4b19-b568-8ae550aa09fe",
title: "Project 3",
info: "Lorem ipsum dolor, sit amet consectetur adipisicing elit. Beatae cumque laborum, placeat nobis fugit nemo ipsa voluptates error quo possimus ea velit quos voluptatum magnam id eius quam accusamus. Eum blanditiis aperiam minus inventore laboriosam, et vel ipsam perspiciatis a facilis cum, iure alias recusandae dolorem adipisci illum. Quo maxime nisi minus mollitia praesentium cumque, temporibus incidunt nulla culpa eligendi consequatur doloremque repudiandae aspernatur quas necessitatibus tenetur. Similique fuga rerum provident distinctio doloremque qui accusamus, sequi voluptate eveniet voluptatum autem odio placeat quasi temporibus quas nulla laborum sunt tenetur dolorum, incidunt error porro amet modi? Temporibus amet optio mollitia omnis?",
img: [
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
],
tags: ["react", "vite", "wordpress"],
link: undefined,
},
{
id: "cedeb531-0409-4e1f-b7e9-9668dcaa5e71",
title: "Project 4",
info: "Lorem ipsum dolor, sit amet consectetur adipisicing elit. Beatae cumque laborum, placeat nobis fugit nemo ipsa voluptates error quo possimus ea velit quos voluptatum magnam id eius quam accusamus. Eum blanditiis aperiam minus inventore laboriosam, et vel ipsam perspiciatis a facilis cum, iure alias recusandae dolorem adipisci illum. Quo maxime nisi minus mollitia praesentium cumque, temporibus incidunt nulla culpa eligendi consequatur doloremque repudiandae aspernatur quas necessitatibus tenetur. Similique fuga rerum provident distinctio doloremque qui accusamus, sequi voluptate eveniet voluptatum autem odio placeat quasi temporibus quas nulla laborum sunt tenetur dolorum, incidunt error porro amet modi? Temporibus amet optio mollitia omnis?",
img: [
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
],
tags: ["react", "vite", "wordpress"],
link: undefined,
},
{
id: "5e2ea8b8-bb1e-4c9d-a723-42406bf7be72",
title: "Project 5",
info: "Lorem ipsum dolor, sit amet consectetur adipisicing elit. Beatae cumque laborum, placeat nobis fugit nemo ipsa voluptates error quo possimus ea velit quos voluptatum magnam id eius quam accusamus. Eum blanditiis aperiam minus inventore laboriosam, et vel ipsam perspiciatis a facilis cum, iure alias recusandae dolorem adipisci illum. Quo maxime nisi minus mollitia praesentium cumque, temporibus incidunt nulla culpa eligendi consequatur doloremque repudiandae aspernatur quas necessitatibus tenetur. Similique fuga rerum provident distinctio doloremque qui accusamus, sequi voluptate eveniet voluptatum autem odio placeat quasi temporibus quas nulla laborum sunt tenetur dolorum, incidunt error porro amet modi? Temporibus amet optio mollitia omnis?",
img: [
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
"/img/placeholder.png",
],
tags: ["react", "vite", "wordpress"],
link: undefined,
info: "Letsfly is a website aimed at providing a platform for aviation-related services and information. Built on Next.js, a popular React framework, the website leverages its server-side rendering (SSR) capability to enhance performance and user experience. Tailwind was used as the CSS framework to quickly and efficiently create an attractive and responsive design. WordPress, a well-known Content Management System (CMS), was employed as the content management system to administer and publish content on the website. The reason for choosing WordPress was a client request; he was familiar with this system and wanted to be able to modify the content himself. GraphQL was selected as the API layer to enable efficient data management and flexible data queries between the frontend and backend.",
img: ["/img/letsfly_1.png", "/img/letsfly_2.png", "/img/letsfly_3.png"],
tags: ["React", "NextJS", "Wordpress", "GraphQL", "MySQL", "Tailwind"],
link: "https://preview.letsfly.app/",
},
];
@ -87,6 +47,15 @@ export const skillsAtom = atom({
"WordPress",
"Shopify",
],
tools: ["GIT", "MySQL", "Docker"],
tools: [
"GIT",
"MySQL",
"Docker",
"Visual Studio Code",
"Postman API",
"TablePlus",
"Trello",
"Figma",
],
},
});

View File

@ -3,13 +3,17 @@ export default {
content: ["./index.html", "./src/**/*.{js,ts,jsx,tsx}"],
theme: {
fontFamily: {
sans: ["Roboto Mono", "system-ui"],
headline: ["Roboto Mono", "system-ui"],
sans: ["Ubuntu Mono", "system-ui"],
headline: ["Tektur", "system-ui"],
tags: ["Ubuntu Mono", "system-ui"],
},
fontSize: {
title: ["5rem", { fontWeight: "800" }],
subT: ["3.5rem", { fontWeight: "800" }],
subTMini: ["1.4rem", { fontWeight: "800" }],
title: ["5rem", { lineHeight: "5rem", fontWeight: "900" }],
titlePhone: ["3rem", { lineHeight: "3rem", fontWeight: "900" }],
subT: ["3.5rem", { lineHeight: "3.5rem", fontWeight: "800" }],
subTPhone: ["2.5rem", { lineHeight: "2.5rem", fontWeight: "800" }],
subTMini: ["1.4rem", { lineHeight: "1.4rem", fontWeight: "900" }],
subTMiniPhone: ["1.2rem", { lineHeight: "1.2rem", fontWeight: "800" }],
tags: ["0.8rem", { fontWeight: "400" }],
sm: "0.8rem",
base: "1rem",
@ -22,7 +26,8 @@ export default {
extend: {
colors: {
neon: "#ccff00",
bgColor: "#302f39",
bgColor: "#031417",
highlight: "#ccff00",
},
dropShadow: {
light: "0 0 5px theme('colors.indigo.800')",