11'use client' ;
2- import { PUBLIC_BLOG_IMAGES_SOURCE } from '@/lib/constants' ;
32import Footer from '@/app/components/footer/footer' ;
43import { motion } from 'framer-motion' ;
5- import { Skeleton } from '@/app/components/ui/skeleton' ;
64import { cn } from '@/lib/utils' ;
7- import React , { Suspense } from 'react' ;
8- import { SITE_NAME } from '@/lib/constants' ;
5+ import React from 'react' ;
6+ import { SITE_NAME , REPO_SOURCE } from '@/lib/constants' ;
97import { GlowingText } from '@/app/components/reusables/content' ;
108import NextLink from 'next/link' ;
119import { ReactNode } from 'react' ;
1210
13- const FrontEnd = [
11+ const ThisSiteTools = [
1412 'TypeScript' ,
1513 'ReactJS' ,
1614 'NextJS' ,
@@ -59,59 +57,12 @@ export default function Page() {
5957 return (
6058 < >
6159 < div className = "mt-12" > </ div >
62- < motion . div
63- animate = { {
64- opacity : 1 ,
65- x : 0 ,
66- } }
67- initial = { {
68- opacity : 0 ,
69- x : 20 ,
70- } }
71- transition = { {
72- duration : 0.2 ,
73- ease : 'easeInOut' ,
74- } }
75- className = "mx-auto w-full px-5 max-w-[1065px] brightness-90"
76- >
77- < Suspense fallback = { < Skeleton /> } >
78- < div className = "relative" >
79- < img
80- className = "rounded-3xl"
81- alt = "niko"
82- src = { PUBLIC_BLOG_IMAGES_SOURCE + 'winston-wolf.png' }
83- />
84- < div className = "absolute bottom-4 left-4 text-white opacity-40 font-bold text-sm" >
85- Pulp Fiction (1994) by Quentin Tarantino
86- </ div >
87- </ div >
88- </ Suspense >
89- </ motion . div >
90- < div className = "flex flex-col items-center justify-center my-7 md:mt-20" >
91- < motion . h2
92- viewport = { { once : true } } // only run once per load
93- whileInView = { {
94- opacity : 1 ,
95- scale : 1 ,
96- } }
97- initial = { {
98- opacity : 0 ,
99- scale : 0.7 ,
100- } }
101- transition = { {
102- duration : 0.2 ,
103- ease : 'easeInOut' ,
104- } }
105- className = "text-center italic text-2xl md:text-3xl font-bold dimmed-4"
106- >
107- - "Hi, I'm Winston Wolf, I solve problems"
108- </ motion . h2 >
109- </ div >
11060 < div className = "flex flex-col items-center justify-center gap-6 mt-8 md:mt-20" >
61+ < MajorHeading title = "Hello" />
11162 < Card title = "" >
11263 < p >
11364 I'm a software developer and technical educator, and I do work
114- for hire. < br />
65+ for < Link href = "/contact" name = " hire." /> < br />
11566 Over the past 7 years I've had the privilge to collaborate with
11667 numerous individuals, teams and startups worldwide, to build, scale,
11768 and lead software projects.
@@ -124,16 +75,18 @@ export default function Page() {
12475 < Link href = "/blog/tag/quality" name = "quality" /> code,
12576 < Link href = "/blog/tag/skill-issues" name = "high-performing" />
12677 teams, and effective
127- < Link href = "/blog/tag/management" name = "management" /> . And my
128- services are aimed at enhancing these aspects for my clients.
78+ < Link href = "/blog/tag/management" name = "management." />
79+ < br /> And I do offer services aimed at enhancing these aspects for
80+ software teams.
12981 </ p >
13082 </ Card >
131- < MajorHeading title = "Stack" />
83+ < MajorHeading id = "stack" title = "Stack" />
13284 < Card title = "" >
13385 < p >
13486 While I have experience with many technologies, I specialize and
135- work mostly in Python and TypeScript, with a heavy focus on
136- everything web related (HTTP, RPC, GraphQL, microservices,
87+ work mostly in < Link href = "/blog/tag/python" name = "Python" /> and
88+ < Link href = "/blog/tag/typescript" name = "TypeScript" /> , with a heavy
89+ focus on everything web related (HTTP, RPC, GraphQL, microservices,
13790 containers, cloud architecture...)
13891 </ p >
13992 </ Card >
@@ -152,23 +105,24 @@ export default function Page() {
152105 Frameworks and libraries don't matter they come and go.
153106 Fundamentals are key. But if you're interested in knowing the
154107 exact tools I use you can check out my
155- < Link href = "/blog/tag/management" name = "cv" /> (it's too long),
156- or, you might want to check out my
157- < Link href = "/blog/tag/management" name = "resume" /> to get a glimpse
158- instead.
108+ < Link href = "#" name = "cv" /> (it's too long), or, you might want
109+ to check out my
110+ < Link href = "#" name = "resume" /> to get a glimpse instead.
159111 </ p >
160112 </ Card >
161113 < MajorHeading title = "About The Website" />
162114 < Card title = "" >
163115 < p >
164116 < code > { SITE_NAME } </ code > is open{ ' ' }
165- < Link href = "/blog/tag/management" name = "source" /> and made with the
166- following technologies and a sprinkle of creativity
117+ < Link href = { REPO_SOURCE } name = "source" />
118+ and made using the following technologies for provisioning,
119+ development, testing, and deployment, with a sprinkle of creativity
120+ and love.
167121 </ p >
168122 </ Card >
169123 < Card title = "" >
170124 < div className = "flex flex-wrap justify-center items-center gap-[0.625rem] text-sm dimmed-4" >
171- { FrontEnd . map ( ( tech ) => (
125+ { ThisSiteTools . map ( ( tech ) => (
172126 < span
173127 key = { tech }
174128 className = "relative rounded-full px-2 py-1 border border-white/10"
@@ -193,6 +147,7 @@ interface BaseHeadingProps {
193147const BaseHeading = ( props : BaseHeadingProps ) => {
194148 return (
195149 < motion . h2
150+ id = { props . id }
196151 animate = { {
197152 opacity : 1 ,
198153 x : 0 ,
@@ -211,17 +166,19 @@ const BaseHeading = (props: BaseHeadingProps) => {
211166 </ motion . h2 >
212167 ) ;
213168} ;
214- const MinorHeading = ( { title } : { title : string } ) => {
169+
170+ type HeadingProps = { title : string ; id ?: string } ;
171+ const MinorHeading = ( { title, id } : HeadingProps ) => {
215172 return (
216- < BaseHeading className = "glows-dimmed dimmed-4 text-1xl font-bold" >
173+ < BaseHeading id = { id } className = "glows-dimmed dimmed-4 text-1xl font-bold" >
217174 { title }
218175 </ BaseHeading >
219176 ) ;
220177} ;
221178
222- const MajorHeading = ( { title } : { title : string } ) => {
179+ const MajorHeading = ( { title, id } : HeadingProps ) => {
223180 return (
224- < BaseHeading className = " glows-dimmed dimmed-4 text-2xl font-bold" >
181+ < BaseHeading id = { id } className = " glows-dimmed dimmed-4 text-2xl font-bold" >
225182 { title }
226183 </ BaseHeading >
227184 ) ;
0 commit comments