Skip to content
Draft
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
51 changes: 26 additions & 25 deletions app/components/home/portfolio.tsx
Original file line number Diff line number Diff line change
@@ -1,9 +1,8 @@
import React from "react";
import Album from '@/app/Media/Photos/Fox Album Cover Alt2.jpg';
import Ript from '@/app/Media/Photos/Ript Portfolio Icon.png';
import Dansbands from '@/app/Media/Photos/dansbands icon.png';
import Image from "next/image";
import { portfolioItems } from "@/app/util/const";

const featuredItems = portfolioItems.slice(0, 3);

const Portfolio = () => {
return (
Expand All @@ -17,28 +16,30 @@ const Portfolio = () => {
<h2 className="subtitle">
SELECTED PROJECTS. <a href="/portfolio">{"SEE MORE >"}</a>
</h2>
<div className="row">
<Image
alt="Fox album artwork"
src={Album}
width={300}
height={300}
sizes="(max-width: 767px) 200px, (max-width: 1199px) 200px, 300px"
/>
<Image
alt="Ript project cover"
src={Ript}
width={300}
height={300}
sizes="(max-width: 767px) 200px, (max-width: 1199px) 200px, 300px"
/>
<Image
alt="dansbands project cover"
src={Dansbands}
width={300}
height={300}
sizes="(max-width: 767px) 200px, (max-width: 1199px) 200px, 300px"
/>
<div className="recent-work-grid">
{featuredItems.map((item) => (
<a
key={item.title}
href="/portfolio"
className="recent-work-card"
aria-label={`View ${item.title}`}
>
<div className="recent-work-card-image">
<Image
alt={`${item.title} project screenshot`}
src={item.image}
width={300}
height={300}
sizes="(max-width: 767px) 200px, (max-width: 1199px) 200px, 300px"
style={{ objectFit: "cover", width: "100%", height: "100%" }}
/>
</div>
<div className="recent-work-card-info">
<p className="recent-work-card-title">{item.title}</p>
<p className="recent-work-card-subtitle">{item.subtitle}</p>
</div>
</a>
))}
</div>
</div>
</div>
Expand Down
96 changes: 29 additions & 67 deletions app/components/home/professional.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,16 @@

import React, { useRef, useEffect } from "react";

const techRow1 = [
"React", "TypeScript", "Next.js", "Node.js", "Redux", "XState",
"Express", "PostgreSQL", "MongoDB", "Figma", "CSS3", "HTML5",
];

const companyRow2 = [
"TD Bank / TD Securities", "Care/of", "Comcast Business", "American Express",
"AllSocial", "Attck / TimeRepublik", "Crane.ai",
];

const Professional = () => {
const professionalRef = useRef<HTMLDivElement>(null);
const animationContainerRef = useRef<HTMLDivElement>(null);
Expand All @@ -19,7 +29,7 @@ const Professional = () => {
}
});
},
{ threshold: 0.35 }
{ threshold: 0.25 }
);

if (sectionElement) {
Expand All @@ -40,74 +50,26 @@ const Professional = () => {
<h1 className="title">
<span className="gray">01</span> PROFESSIONAL
</h1>
<h2 className="subtitle">CORE TECHNOLOGIES USED IN SHIPPED WORK</h2>
<h2 className="subtitle">CORE STACK &amp; EXPERIENCE</h2>
<div className="visible-on-scroll" ref={animationContainerRef}>
<div id="skills">
<div id="apps">
<p>JavaScript</p>
<p>HTML5</p>
<p>CSS3</p>
<p>Express</p>
<p>React</p>
<p>NextJS</p>
<p>Figma</p>
<div className="tech-ticker-wrap" aria-hidden="true">
<div className="tech-ticker tech-ticker--forward">
{[...techRow1, ...techRow1].map((label, i) => (
<span key={`tech-${label}-${i}`} className="tech-ticker-item">
<span className="tech-ticker-dot" />
{label}
</span>
))}
</div>

<div className="grid">
<div className="bar pct-95">
<div className="inner"></div>
<div className="right">
<p>95%</p>
</div>
</div>
<div className="bar pct-95">
<div className="inner2"></div>
<div className="right">
<p>95%</p>
</div>
</div>
<div className="bar pct-95">
<div className="inner3"></div>
<div className="right">
<p>95%</p>
</div>
</div>
<div className="bar pct-85">
<div className="inner"></div>
<div className="right">
<p>85%</p>
</div>
</div>
<div className="bar pct-95">
<div className="inner3"></div>
<div className="right">
<p>95%</p>
</div>
</div>
<div className="bar pct-95">
<div className="inner2"></div>
<div className="right">
<p>95%</p>
</div>
</div>
<div className="bar pct-85">
<div className="inner"></div>
<div className="right">
<p>85%</p>
</div>
</div>

<div className="v-divider one"></div>
<div className="v-divider two"></div>
<div className="v-divider three"></div>

<div id="scale">
<p className="zero">0%</p>
<p className="one">25%</p>
<p className="two">50%</p>
<p className="three">75%</p>
<p className="four">100%</p>
</div>
</div>
<div className="tech-ticker-wrap tech-ticker-wrap--reverse" aria-hidden="true">
<div className="tech-ticker tech-ticker--reverse">
{[...companyRow2, ...companyRow2].map((label, i) => (
<span key={`company-${label}-${i}`} className="tech-ticker-item tech-ticker-item--company">
<span className="tech-ticker-dot tech-ticker-dot--accent" />
{label}
</span>
))}
</div>
</div>
</div>
Expand Down
Loading