From e4107e0ef9f9784df3d2d43020a4e065f10f3334 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Micha=C5=82=20Skolak?= Date: Fri, 23 Feb 2024 21:37:58 +0100 Subject: [PATCH] feat: finish website (#35) * refactor: improve margins in sections * feat: add interactive navbar * feat: add contents * feat: improve metadata --- d | 253 +++++++++++++++++++++ next-sitemap.config.js | 2 +- public/opengraph-image.png | Bin 87773 -> 0 bytes public/project-image.jpg | Bin 1729 -> 0 bytes public/projects/audiophile.png | Bin 0 -> 735 bytes public/projects/nextstarter.png | Bin 0 -> 538 bytes public/projects/socialhub.png | Bin 0 -> 587 bytes src/app/layout.tsx | 22 +- src/app/page.tsx | 2 - src/components/about.tsx | 35 +-- src/components/active-section-provider.tsx | 51 +++++ src/components/contact.tsx | 5 +- src/components/experience.tsx | 6 +- src/components/footer.tsx | 2 +- src/components/header.tsx | 26 ++- src/components/intro.tsx | 27 ++- src/components/project.tsx | 6 +- src/components/projects.tsx | 7 +- src/components/section-divider.tsx | 2 +- src/components/section-heading.tsx | 2 +- src/components/skills.tsx | 2 +- src/hooks/use-section-in-view.ts | 31 +++ src/lib/data.tsx | 75 +++--- src/lib/site-config.ts | 32 ++- src/lib/types.ts | 3 + 25 files changed, 486 insertions(+), 105 deletions(-) create mode 100644 d delete mode 100644 public/opengraph-image.png delete mode 100644 public/project-image.jpg create mode 100644 public/projects/audiophile.png create mode 100644 public/projects/nextstarter.png create mode 100644 public/projects/socialhub.png create mode 100644 src/components/active-section-provider.tsx create mode 100644 src/hooks/use-section-in-view.ts create mode 100644 src/lib/types.ts diff --git a/d b/d new file mode 100644 index 0000000..17605c2 --- /dev/null +++ b/d @@ -0,0 +1,253 @@ +commit a4dc8930cab79d7a5e78463fa0c6bbc092da80b9 (HEAD -> finish-website) +Author: Michał +Date: Fri Feb 23 14:51:56 2024 +0100 + + refactor: improve margins in sections + +commit 7935f7de6d5a422c7f738192c1a5c2372496eeed (origin/main, origin/HEAD, main) +Author: Michał Skolak +Date: Mon Feb 19 21:27:58 2024 +0100 + + feat: add animations (#33) + +commit 0b18dd2862ae2c50c40b25dc7754170434698313 +Author: Michał Skolak +Date: Sun Feb 18 12:12:15 2024 +0100 + + feat: add email sending (#32) + + * feat: add basic email sending functionality + + * feat: add toast after submit form + +commit 025a952b040e1bbe785dc7d29e0f619d1c14706f +Author: Michał Skolak +Date: Sat Feb 17 15:53:12 2024 +0100 + + feat: create header (#29) + +commit dde5564951fbfa7f6f04c59d3ba1e6e6878d00fb +Author: Michał Skolak +Date: Wed Feb 14 20:48:21 2024 +0100 + + feat: create contact section (#27) + + * feat: create contact form + + * feat: create footer + + * feat: add form validation + +commit ad8b85e43e2470633e7dc74b1dcdd70a013c2a62 +Author: Michał Skolak +Date: Wed Feb 14 17:09:33 2024 +0100 + + feat: create experience section (#25) + +commit ab93a9df2ccb5103484a041d7d59746457a113d2 +Author: Michał Skolak +Date: Wed Feb 14 12:57:37 2024 +0100 + + feat: create projects section (#23) + +commit c4ece005bb1f292a8c1668d1439c10162cf76beb +Author: Michał Skolak +Date: Tue Feb 13 19:01:22 2024 +0100 + + feat: create about section (#21) + +commit 56cd71f47fc62537ac49d10c6033486d0b84a49a +Author: Michał Skolak +Date: Mon Feb 12 21:15:58 2024 +0100 + + feat: create intro section (#19) + + * feat: add intro section + + * feat: add section divider + +commit af8f2069b089002b14d6aba282fb43912ce4cc5c +Author: Michał Skolak +Date: Mon Feb 12 20:05:15 2024 +0100 + + feat: create reusable button component (#17) + + * feat: add reusable button component and implement it to theme toggle + + * fix: change link in PR template + +commit 53fa2699145d9251c317c5a279fc969c620840db +Author: Michał Skolak +Date: Sun Feb 11 20:26:16 2024 +0100 + + feat: Init next app (#15) + + * feat: init next app + + * feat: clean up project + +commit 5a6f93881ac79d6e62fc561d828239053337db1c +Author: Michał Skolak <76774237+Skolaczk@users.noreply.github.com> +Date: Sat Jan 13 14:59:42 2024 +0100 + + Remove env file + +commit 48ebdb1b012cf928741b81b3af0b05313c560ed2 +Author: Michał Skolak <76774237+Skolaczk@users.noreply.github.com> +Date: Sat Jan 13 14:54:05 2024 +0100 + + Update content#2 (#6) + +commit 253c3e2ba5568b98ad6eb8bb27dca1091c7f7659 +Author: Michał Skolak <76774237+Skolaczk@users.noreply.github.com> +Date: Mon Jan 1 16:20:22 2024 +0100 + + Fix wrapper + +commit 1d46bef869965c9fe6fd69dba5bea4c3e6b75fa6 +Author: Michał Skolak <76774237+Skolaczk@users.noreply.github.com> +Date: Mon Jan 1 15:31:19 2024 +0100 + + Remove gallery field + +commit a276e9b0e144f851af09cfec25510162ce93628c +Author: Michał Skolak <76774237+Skolaczk@users.noreply.github.com> +Date: Mon Jan 1 15:23:36 2024 +0100 + + Update content (#4) + + * Update Hero.js + + * Update AboutMe.js + + * Update Footer.js + + * Update README.md + +commit 4ab07de9340166f10f983e44745ea066db220485 +Author: Michał Skolak <76774237+Skolaczk@users.noreply.github.com> +Date: Mon Jan 1 15:11:02 2024 +0100 + + Remove gallery modal (#3) + +commit 94f5b884a1a5cfd41526b46c2e4bebb6fb4bba07 +Author: Michał <76774237+Skolaczk@users.noreply.github.com> +Date: Fri Apr 7 11:57:38 2023 +0200 + + Update content + +commit a4f558a39ed2ab4a5861e71fdb488a7e09376507 +Author: Skolaczk +Date: Tue Dec 27 11:19:09 2022 +0100 + + Add google-site-verification + +commit 86d51d3de9b55c54809332769fa0165d37f2c758 +Author: Skolaczk +Date: Sun Dec 18 12:12:51 2022 +0100 + + Add gallery of projects + + Install react-responsive-carousel and react-modal to create + carousel in modal. Create hooks - useModal and useWindow. + useModal is responsible for modal functionality, and useWindow + for return matchMedia. + +commit 2e5524df05ca0a311d949cc1739dd756c19072dc +Merge: d08b6a6 e898a91 +Author: Skolaczk +Date: Sat Nov 19 19:40:54 2022 +0100 + + Merge branch 'main' of github.com:Skolaczk/Portfolio into main + +commit d08b6a658ff8c8e42d6e2f2380834ed091ee992a +Author: Skolaczk +Date: Sat Nov 19 19:38:01 2022 +0100 + + Add environment variables + +commit e898a915154bda30ca30b74458e340fb05284d8b +Author: Michał <76774237+Skolaczk@users.noreply.github.com> +Date: Sun Sep 4 15:19:09 2022 +0200 + + Update README.md + +commit 19ec8b841ca0b6e91798aa9167874fd4a35f1f87 +Author: Skolaczk +Date: Sat Sep 3 19:51:44 2022 +0200 + + Create the final version + + Create SEO component using react-helmet. Now, data from + gatsby-config.js file is in head tag. Create 404 page. + Fix some bugs related to operation of the site. + +commit 9e8d83eb65726524a32c6c6015394bd62c47b04c +Author: Skolaczk +Date: Fri Aug 19 20:32:26 2022 +0200 + + Add email sending + + Install EmailJs library to sending email from page. Install Formik + and Yup to validate form. If values in form are incorrect, erros is + displayed and the form is not send. Update styles for Contact component. + +commit 0fcbd45a48869be777d818e95aecdb1315ddb252 +Author: Skolaczk +Date: Thu Aug 18 10:44:02 2022 +0200 + + Fetching data from Contenful + + Create custom hook - useData. It uses hook - useStaticQuery() to get data + and returns it. Create Icons component. It displays data from CMS. + +commit d3dbb19cb42172e1c31d3ae1c15396a3563e132e +Author: Skolaczk +Date: Tue Aug 16 18:06:10 2022 +0200 + + Create animations + + Install gsap with scrollTrigger plugin to do better animations. + Create animation for showing hero elements and use scrollTrigger + plugin to do showing projects when page is scrolling. Make a several + smaller animations with color change on hover. Now, after click + burger button, navigation moves from the right side. Also, burger + button is animated after click. The last animation is related to + scroll and header. When page scrolls down header is not visible, + and when page scrolls up header is visible. + +commit 70b578411d597754b88a2fe1c6cab48a13cac8ea +Author: Skolaczk +Date: Sat Aug 13 20:24:16 2022 +0200 + + Create desktop homepage view + + Add styles for tablet and desktop view. + +commit 41a115b54e2dd2e7c6be7b49b0d340f3462fcf0d +Author: Skolaczk +Date: Thu Aug 11 10:53:56 2022 +0200 + + Create mobile homepage view + + Add a templates: Hero, AboutMe, Projects and Contact. + They make a homepage in index.js. Add a components: + Button, Footer, Heading, Navigation, SectionWrapper. + Install gatsby-plugin-react-svg to use svg file as react + component. Add files to icons folder. + +commit c5f8d8d413047541dc7f19168ef39c48cc3ef233 +Author: Skolaczk +Date: Sat Aug 6 15:35:27 2022 +0200 + + Add initial files + + Install needed plugins and configure project. Create assets folder. + There are GlobalStyles.js, normalize.css and theme.js files. + Create MainTemplate.js file and gatsby-browser.js so that each page + can use the styles. Configure eslint with airbnb extends to keep + clean code. + +commit 38ed13100f3a34d922678b0afc76cd3e2f2a5928 +Author: Skolaczk +Date: Fri \ No newline at end of file diff --git a/next-sitemap.config.js b/next-sitemap.config.js index ca94d67..114dea6 100644 --- a/next-sitemap.config.js +++ b/next-sitemap.config.js @@ -1,5 +1,5 @@ module.exports = { - siteUrl: process.env.NEXT_PUBLIC_SITE_URL || '', + siteUrl: process.env.SITE_URL || '', generateRobotsTxt: true, generateIndexSitemap: false, robotsTxtOptions: { diff --git a/public/opengraph-image.png b/public/opengraph-image.png deleted file mode 100644 index c61f9bd2064a5a38c30798961a1f28860276a266..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 87773 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�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 JPDHLkV1gBy0O|k$ diff --git a/public/project-image.jpg b/public/project-image.jpg deleted file mode 100644 index 16f74e526dc7bdc2ba378ae8462e79ea5e6f03c5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1729 zcmbu+do+}J7zgloZicB$ll%Ry4DGCIE^|!S6dIx#3S}cjS(8M=PDwIJ#ZnPn(BwKO zqUeHYT*@VhTt;gQrcBxG9Tu6Z)x>s_5)oB
{g+d}%rcbT>14tZdgN~_#l$_@Qv~GmFS$tZaw4P%HN5QKL z)He@2epUvfsHCi-YGAl=lM&v+(rSyfjjhuU+nl%WaBCtXNRzjF0jM&|Xb>^rQx`2~eV#U+&ws;VD8s;PbaoZHyc-16dO z>znSLx4nJ+13baV=$P>RhjGzI@#NGW(=)Ts-2AEw1|Yt!>d}mMX|a5#nM+&FoYos9nza$Vxxy1A$KFRaUjI(D z6)ef8-VBORN!cu{F?pV{?lmPpBQP@DzvS}C3)GUJjj}t5_a~{HUG+KXt;vVHr5I;&A)rghUOzQr_kzU7w#;%i4JOf|Hdnh)v{_s3_f2&QJv zLyn_-5igw{J9#PQ8H-e~e7z2H?8Et+8iEwN#N+P@vAdaIPmR(g(^_{W?0I(9dvWVA z`l4d+4Lt6$Yb_H`i6oL4?t~mU>rt?x*pu_xO^mOq!~tIb3}TySc*Gr79s=Mhpv z4u-*aGwp%3PYn{(D;>dw_S#zI@~$P0_x*JD##S-rW%R?|D;yq!G?V;`kd$WzaDMb|SrVl%?F$5Oi%KY$>z?=e-DLe z$-cQ;Z0%Kyuh*kvmoY~RAe!e=ZWSS!4-g3pE(`+HBu<_k$w(6rG(L^GRD)w(kNZX5 z%hZ;{#oY>H-j5Zt1Z{RZ+O1Lx>oWE9)0ZlD)nl8Mk)zh}#~zZHH6P5ug(T}ZofrfE zK|>Ca97eT$#P)UJnzjYIwBZ7jY*Tp@>a~yp*2D;ZGGLLcZ+u8|lYpKRKlyn*Jt(DS zN~>8V+V6Hy9b27s`zSX4PTua#?JQq;vvx!3dDa@w42|Kjo`O&AeA(08B&9m7MH-ZU zaL0jwIxv47}FsmsCbZW% zDnS%JUQ9>=AxV)ZA&^%QND8q~QPe`Pwb4dPQLynRSSZ$lKfxbhEebwCEws@>6hTly zM8yZ92zu_$K$bfj7Y(_=#t#PeaL$?e_Pl0S0ssg*#2?r(_5}6>_5}6>q+$x4P6rx| z1|AVLhvVa8sMTuJ zFO^D(9Ysemzb-B=FdPo!Iy9S2ESJl?>~uQOWHRw`Hk(C`z*=9j=l%UX3eRH*aEvjN z$>6pS64-=9B7uj8hYSIx2JCh_sMTsFJneQH;_*0)$79$QBn`1x3@Vih2-9k{T0t}g z(P)%m?DP3hDwR^*!@~m>i^Yu*C=?2KdwWZL4h{~`@AotMNF*Yjg5hw;8C%775^bCPk ztHnRx+}yzH>nmeyHk)A+gf^r_udlCpxzT8R@!`V}2n3jLlD4y0ET~W@(ChW05bIJf zo6TtL$Ye6)3J$rKV)VgaP`n1--`{aEnc%kgZX1%l$r&J41Kf}Sm&*mK)e8PM$es>| zgP!p(zKr5fC`668_5r2yFMkud(;AcMQRJ9v6} zqB8f^z)eW-cs!8H<<^ozv2}iajvpT%`110C9Fes)!W6jOZaVFrpP#Ak=S&b=qL&c? zHy7yoE*6Ug)a&)FYoKmnitZ~zXFfCE4QIG_?*1-*PblTPR~Y2ogMKY24dDcd%A zd2h3{B_g?e5MT0PL;{gOB=GIK(d~AN>m*5v>vp@Xk*2AJ3-ZI^uz2Twze^M3RdGI_ za|<(Rk>6}KnqzdI-)^^g8IQ*!Hyg=)YY>er7>~!n`}6r+3?aR~TrP4tom2r-G#gQ6 ze5fVBL@W@RWVu}GxZm$(G#bftI@J+CqTlboPXHfTJT!?V=Xwrt>VXK=LM;L01hd)9 z`;0Bp)oS%ryw~ehqg<>n5dio)nM}Mk>~=dHQOOjZ`c6%_WPVM6#Rr3d_x@tBD3m~U zb1IZfNV&!Y4u^w|NbJM$c$8kRr;AgJmJIoj5{(GpA-fC}q6MC>*K0im*89*gZrq9~ zMz_;hki&1ntq~M}G^neEU?(&l>TfgoQLjV8( literal 0 HcmV?d00001 diff --git a/public/projects/socialhub.png b/public/projects/socialhub.png new file mode 100644 index 0000000000000000000000000000000000000000..896cc43e9d8e7be6bf3a244589d170b9447dda5d GIT binary patch literal 587 zcmV-R0<`^!P)La17HH!fDwQR7y&UsyFt4_+X-@ckzVAcDdp?>6H8Wu6Wh=B zOT~snb3&F`dun=5o21=ksY^ub2DocDvS@^?Ge?x0~DF zZnx1mh(W>m$eFIw@p$x3RaKdyDEx0E!t+Ewozu&vP^ZD!w0N6nQsGPD| zty=ah%bXp-Acw=jESF1{JUkBta46PD{uKbCMv`#vdcAsZNKQMt5(2M=&G+DKfcwB#q-vNN2 zr~n-Z?F_2P3DWUK=oaI?e+!`X5`s9kYEK{v2zNT2+!|z}yx(t6z&y{rT@zOee6>F$ z`V_~WO*)3`x7B(u8Zbb>hx=IDaf { @@ -48,8 +34,10 @@ const RootLayout = ({ children }: PropsWithChildren) => { - {children} - + + {children} + + diff --git a/src/app/page.tsx b/src/app/page.tsx index 91b5d7d..6d10f0f 100644 --- a/src/app/page.tsx +++ b/src/app/page.tsx @@ -6,7 +6,6 @@ import { Header } from '@/components/header'; import { Intro } from '@/components/intro'; import { Projects } from '@/components/projects'; import { SectionDivider } from '@/components/section-divider'; -import { Skills } from '@/components/skills'; import { ThemeToggle } from '@/components/theme-toggle'; const Home = () => { @@ -17,7 +16,6 @@ const Home = () => { - diff --git a/src/components/about.tsx b/src/components/about.tsx index 5dadf19..c8052b1 100644 --- a/src/components/about.tsx +++ b/src/components/about.tsx @@ -3,35 +3,42 @@ import { motion } from 'framer-motion'; import { SectionHeading } from '@/components/section-heading'; +import { Skills } from '@/components/skills'; +import { useSectionInView } from '@/hooks/use-section-in-view'; export const About = () => { + const { ref } = useSectionInView('About'); + return ( -
+

- After graduating with a degree in Accounting, I decided to pursue my - passion for programming. I enrolled in a coding bootcamp and learned - full-stack web development. My favorite part of programming is the - problem-solving aspect. I love the feeling of finally figuring out a - solution to a problem. My core stack is React, Next.js, Node.js, and - MongoDB. I am also familiar with TypeScript and Prisma. I am always - looking to learn new technologies. I am currently looking for a - full-time position as a software developer. + I'm Michał Skolak, I'm a front-end developer from Poland. + I've been learning programming for over 3 years. After I started + high school, I decided to pursue my passion for programming. My + favorite part of programming is the problem-solving aspect. I love the + feeling of finally figuring out a solution to a problem. I've had + the opportunity to work on several exciting projects during my + learning journey, ranging from personal projects to collaborative + ventures. My core stack is React, Next.js, TypeScript, and Tailwind + CSS. I am also familiar with Nest.js and Prisma. I am always looking + to learn new technologies.

- When I am not coding, I enjoy playing video games, watching movies, - and playing with my dog. I also enjoy learning new things. I am - currently learning about history and philosophy. I am also learning - how to play the guitar. + I'm open to Job opportunities where I can contribute, learn and + grow. If you have a good opportunity that matches my skills and + experience then don't hesitate to contact me.

+ ); }; diff --git a/src/components/active-section-provider.tsx b/src/components/active-section-provider.tsx new file mode 100644 index 0000000..2984867 --- /dev/null +++ b/src/components/active-section-provider.tsx @@ -0,0 +1,51 @@ +'use client'; + +import React, { + createContext, + PropsWithChildren, + useContext, + useState, +} from 'react'; + +import type { SectionName } from '@/lib/types'; + +type TActiveSectionContext = { + activeSection: SectionName; + setActiveSection: React.Dispatch>; + timeOfLastClick: number; + setTimeOfLastClick: React.Dispatch>; +}; + +export const ActiveSectionContext = createContext( + null +); + +export const ActiveSectionProvider = ({ children }: PropsWithChildren) => { + const [activeSection, setActiveSection] = useState('Home'); + const [timeOfLastClick, setTimeOfLastClick] = useState(0); + + return ( + + {children} + + ); +}; + +export const useActiveSection = () => { + const context = useContext(ActiveSectionContext); + + if (context === null) { + throw new Error( + 'useActiveSection must be used within an ActiveSectionProvider' + ); + } + + return context; +}; diff --git a/src/components/contact.tsx b/src/components/contact.tsx index 6794fde..33b6788 100644 --- a/src/components/contact.tsx +++ b/src/components/contact.tsx @@ -10,6 +10,7 @@ import { sendEmail } from '@/actions/send-email'; import { Button } from '@/components/button'; import { Icons } from '@/components/icons'; import { SectionHeading } from '@/components/section-heading'; +import { useSectionInView } from '@/hooks/use-section-in-view'; import { cn } from '@/lib/utils'; const formSchema = z.object({ @@ -23,6 +24,7 @@ const formSchema = z.object({ export type TFormSchema = z.infer; export const Contact = () => { + const { ref } = useSectionInView('Contact'); const { register, handleSubmit, @@ -44,8 +46,9 @@ export const Contact = () => { return ( { const { ref, inView } = useInView({ triggerOnce: true }); + const { ref: sectionRef } = useSectionInView('Experience'); return ( -
+
{experiencesData.map(({ title, description, location, date }) => ( diff --git a/src/components/footer.tsx b/src/components/footer.tsx index 5584a42..4398e53 100644 --- a/src/components/footer.tsx +++ b/src/components/footer.tsx @@ -5,7 +5,7 @@ export const Footer = () => { diff --git a/src/components/header.tsx b/src/components/header.tsx index 9333de0..c89c7c7 100644 --- a/src/components/header.tsx +++ b/src/components/header.tsx @@ -4,6 +4,7 @@ import { useState } from 'react'; import { motion } from 'framer-motion'; import Link from 'next/link'; +import { useActiveSection } from '@/components/active-section-provider'; import { Button } from '@/components/button'; import { Dialog, @@ -18,12 +19,14 @@ import { links } from '@/lib/data'; export const Header = () => { const [open, setOpen] = useState(false); + const { activeSection, setActiveSection, setTimeOfLastClick } = + useActiveSection(); return ( @@ -31,7 +34,7 @@ export const Header = () => { Menu - + Navigation @@ -56,14 +59,29 @@ export const Header = () => {