Skip to content

Commit

Permalink
add skills section
Browse files Browse the repository at this point in the history
  • Loading branch information
David committed Apr 18, 2023
1 parent 7163ba0 commit 0fc1f06
Show file tree
Hide file tree
Showing 19 changed files with 336 additions and 246 deletions.
65 changes: 30 additions & 35 deletions app/components/About.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,47 +4,46 @@ import photo from '../../public/David.jpg'
export default function About() {
return (
<section
className="mt-[60px] sm:mt-[100px] lg:mt-[120px] xl:mt-[150px] 2xl:mt-[200px] py-[80px] lg:px-[80px] xl:px-[150px] 2xl:mx-auto 2xl:max-w-[1140px] 2xl:py-[50px] 2xl:px-0"
className="mt-[90px] py-[40px] sm:py-[50px] md:py-[70px] lg:py-[120px] lg:mt-[50px] lg:max-w-[74%] xl:max-w-[68%] lg:mx-auto xl:mt-[100px] 2xl:max-w-[1000px]"
id="about"
>
<div className='flex flex-col lg:flex-row lg:justify-between lg:gap-[5%]'>
<div className='lg:w-[60%]'>
<div className='flex justify-start items-center gap-[10px] md:gap-[13px] flex-nowrap'>
<span
className="text-[16px] sm:text-[18px] md:text-[19px] xl:text-[20px] font-normal mt-[3px] sm:mt-[4px]"
>
01.
<div className="flex flex-col lg:flex-row lg:justify-between lg:gap-[5%]">
<div className="lg:w-[60%]">
<div className="flex flex-nowrap items-center justify-start gap-[8px] md:gap-[13px]">
<span className="mt-[3px] text-[19px] font-normal sm:mt-[4px] md:text-[20px] xl:text-[21px]">
01.
</span>
<h2
className="whitespace-nowrap text-[21px] sm:text-[26px] lg:text-[28px] xl:text-[30px] sm:mr-[10px] font-semibold"
>
<h2 className="whitespace-nowrap mr-[10px] text-[26px] font-semibold sm:mr-[10px] sm:text-[28px] lg:text-[30px] xl:text-[32px]">
About Me
</h2>
<span
className='inline-block w-full h-[1px] bg-black '
>
</span>
<span className="inline-block h-[1px] w-full bg-black "></span>
</div>

<p className='mt-[40px] text-[16px] md:text-[17px] xl:text-[18px]'>
<p className="mt-[40px] text-[16px] md:text-[17px] xl:text-[18px]">
Hello! My name is David Bazashvili and I'm all about crafting unique
web products that leave a lasting impression. My interest in computers
began at a tender age of 12, and I was instantly hooked. The sheer
power of this tool to create, learn, entertain and connect with others
was too good to resist.
web products that leave a lasting impression. My interest in
computers began at a tender age of 12, and I was instantly hooked.
The sheer power of this tool to create, learn, entertain and connect
with others was too good to resist.
</p>
<p className='mt-[20px] text-[16px] md:text-[17px] xl:text-[18px]'>
Despite spending countless hours on my computer, I never imagined that I would become a programmer. It wasn't until a couple of years ago when I decided to take the plunge and learn HTML and CSS that my interest in programming truly began to blossom.
<p className="mt-[20px] text-[16px] md:text-[17px] xl:text-[18px]">
Despite spending countless hours on my computer, I never imagined
that I would become a programmer. It wasn't until a couple of years
ago when I decided to take the plunge and learn HTML and CSS that my
interest in programming truly began to blossom.
</p>
<p className='mt-[20px] text-[16px] md:text-[17px] xl:text-[18px]'>
Fast forward to 2023, and I've come a long way since those
early days. I now have experience building full-stack applications
using cutting-edge technologies like React, Node.js, and APIs. Along
the way, I've had the opportunity to work for a prestigious jewellery
<p className="mt-[20px] text-[16px] md:text-[17px] xl:text-[18px]">
Fast forward to 2023, and I've come a long way since those early
days. I now have experience building full-stack applications using
cutting-edge technologies like React, Node.js, and APIs. Along the
way, I've had the opportunity to work for a prestigious jewellery
brand based in Hatton Garden.
</p>
<p className='mt-[20px] text-[16px] md:text-[17px] xl:text-[18px]'>
But my journey doesn't end here. My passion for learning and keeping up with the latest technologies drives me to continue to improve my skills. After all, the world of programming is constantly evolving, and I'm excited to see where this journey takes me next.
<p className="mt-[20px] text-[16px] md:text-[17px] xl:text-[18px]">
But my journey doesn't end here. My passion for learning and keeping
up with the latest technologies drives me to continue to improve my
skills. After all, the world of programming is constantly evolving,
and I'm excited to see where this journey takes me next.
</p>
{/* <p className='mt-[20px] text-[16px] md:text-[18px]'>
If you're interested in learning more about the technologies I've been
Expand All @@ -71,12 +70,8 @@ export default function About() {
</div>

<div className="lg:w-[35%]">
<div className='photo relative mx-auto lg:mx-0 w-[70%] lg:w-full max-w-[280px] sm:max-w-[320px] lg:max-w-[320px] rounded-md mt-[50px] lg:mt-[87px]'>
<Image
src={photo}
alt="David's photo"
className="rounded-md"
/>
<div className="photo relative mx-auto mt-[50px] w-[70%] max-w-[280px] rounded-md sm:max-w-[320px] lg:mx-0 lg:mt-[87px] lg:w-full lg:max-w-[320px]">
<Image src={photo} alt="David's photo" className="rounded-md" />
</div>
</div>
</div>
Expand Down
4 changes: 2 additions & 2 deletions app/components/Hero.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ import Link from 'next/link'

export default function Hero() {
return (
<section className="py-[40px] sm:py-[70px] lg:px-[80px] xl:px-[150px] 2xl:mx-auto 2xl:max-w-[1140px] 2xl:py-[50px] xl:mt-[50px] 2xl:mt-[100px] 2xl:px-0">
<section className="py-[40px] sm:py-[70px] lg:px-[80px] xl:mt-[50px] xl:px-[150px] 2xl:mx-auto 2xl:mt-[100px] 2xl:max-w-[1140px] 2xl:py-[50px] 2xl:px-0">
<h2 className="ml-[2px] text-[17px] md:text-[18px]">Hi, my name is</h2>

<h1 className="mt-[20px] text-[40px] font-[800] leading-[46px] sm:text-[50px] sm:leading-[56px] md:mt-[30px] md:text-[58px] md:leading-[64px] lg:text-[64px] lg:leading-[70px] xl:mt-[40px] xl:text-[72px] xl:leading-[80px]">
Expand All @@ -13,7 +13,7 @@ export default function Hero() {
I build things for the web.
</h2>

<p className="mt-[20px] max-w-[630px] text-[16px] md:mt-[30px] md:text-[17px] xl:text-[18px] lg:mt-[40px] xl:mt-[50px]">
<p className="mt-[20px] max-w-[630px] text-[16px] md:mt-[30px] md:text-[17px] lg:mt-[40px] xl:mt-[50px] xl:text-[18px]">
I'm a software engineer specialising in Front End development with
extensive knowledge of the Back End. Currently, I'm looking for new
opportunities, and I'd be glad to bring my expertise to your business.
Expand Down
33 changes: 12 additions & 21 deletions app/components/Nav.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -19,21 +19,15 @@ export default function Nav() {
document.querySelector('.x-1')?.classList.add('close-x-1')
document.querySelector('.x-2')?.classList.add('close-x-2')
document.querySelector('.x-3')?.classList.add('close-x-3')
// document.querySelector('.menu')?.classList.add('show-menu')
document.querySelector('.menu')?.classList.remove('move-menu-off')
document.querySelector('.menu')?.classList.add('move-menu-on')
// setTimeout(() => {
// }, 1)
} else {
document.querySelector('body')?.classList.remove('disable-scroll')
document.querySelector('.x-1')?.classList.remove('close-x-1')
document.querySelector('.x-2')?.classList.remove('close-x-2')
document.querySelector('.x-3')?.classList.remove('close-x-3')
document.querySelector('.menu')?.classList.remove('move-menu-on')
document.querySelector('.menu')?.classList.add('move-menu-off')
// setTimeout(() => {
// document.querySelector('.menu')?.classList.remove('show-menu')
// }, 310)
}
}

Expand All @@ -42,13 +36,13 @@ export default function Nav() {
<div className="flex items-center justify-between">
<a
href="http://localhost:3000/"
className={`${outfit.className} text-[26px] md:mt-[-8px] md:text-[28px] lg:text-[30px] xl:mt-[-10px] xl:text-[30px] 2xl:text-[32px]`}
className={`${outfit.className} text-[24px] md:mt-[-8px] md:text-[26px] lg:text-[28px] xl:mt-[-10px] xl:text-[30px] 2xl:text-[32px]`}
>
davbaz
</a>

<div className="hidden items-center justify-between gap-8 md:flex lg:gap-12">
<ul className="flex items-center justify-between gap-5 text-[15px] lg:gap-10 lg:text-[16px] 2xl:text-[18px]">
<ul className="flex items-center justify-between gap-5 text-[13px] lg:gap-8 lg:text-[15px] 2xl:text-[18px]">
<li>
<a
href="#about"
Expand Down Expand Up @@ -100,7 +94,7 @@ export default function Nav() {
<a
href="/resume.pdf"
target="_blank"
className="block w-full py-[9px] text-center text-[15px] sm:text-[17px] md:text-[15px] lg:text-[16px] xl:py-[10px] 2xl:text-[18px]"
className="block w-full py-[9px] text-center text-[13px] lg:text-[16px] xl:py-[10px] 2xl:text-[18px]"
>
Resume
</a>
Expand All @@ -109,22 +103,15 @@ export default function Nav() {

<div
onClick={toggleMenu}
className="close z-10 flex cursor-pointer flex-col items-end justify-between gap-[5px] p-[3px] duration-500 md:hidden"
className="close z-10 flex cursor-pointer flex-col items-end justify-between gap-[5px] p-[3px] md:hidden"
>
<span
className="x-1 inline-block h-[3px] w-[30px] rounded-md bg-black duration-300">
</span>
<span
className="x-2 inline-block h-[3px] w-[20px] rounded-md bg-black duration-300">
</span>
<span
className="x-3 inline-block h-[3px] w-[30px] rounded-md bg-black duration-300">
</span>
<span className="x-1 inline-block h-[3px] w-[30px] rounded-md bg-black duration-300"></span>
<span className="x-2 inline-block h-[3px] w-[20px] rounded-md bg-black duration-300"></span>
<span className="x-3 inline-block h-[3px] w-[30px] rounded-md bg-black duration-300"></span>
</div>
</div>

<aside
className="menu move-menu-off menu-width fixed top-0 flex flex-col justify-between h-[100dvh] rounded-l-lg bg-white px-[30px] py-[30px] duration-300 md:w-[320px]">
<aside className="menu move-menu-off menu-width fixed top-0 flex h-[100dvh] flex-col justify-between rounded-l-lg bg-white px-[30px] py-[30px] duration-300 md:w-[320px]">
<div className="mt-[70px]">
<ul className="mx-auto flex flex-col items-center justify-between gap-6 text-[17px]">
<li className="block w-full">
Expand All @@ -141,6 +128,7 @@ export default function Nav() {
<a
href="#skills"
className="flex w-full flex-col items-center justify-center"
onClick={toggleMenu}
>
<span>02 . </span>
Skills
Expand All @@ -150,6 +138,7 @@ export default function Nav() {
<a
href="#playground"
className="flex w-full flex-col items-center justify-center"
onClick={toggleMenu}
>
<span>03 . </span>
Playground
Expand All @@ -159,6 +148,7 @@ export default function Nav() {
<a
href="#work"
className="flex w-full flex-col items-center justify-center"
onClick={toggleMenu}
>
<span>04 . </span>
Work
Expand All @@ -168,6 +158,7 @@ export default function Nav() {
<a
href="#contact"
className="flex w-full flex-col items-center justify-center"
onClick={toggleMenu}
>
<span>05 . </span>
Contact
Expand Down
154 changes: 154 additions & 0 deletions app/components/Skills.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,154 @@
import Image from 'next/image'
import JavaScript from '../../public/javascript.svg'
import HTML from '../../public/html5.svg'
import CSS from '../../public/css3.svg'
import React from '../../public/react.svg'
import Next from '../../public/nextjs.svg'
import Node from '../../public/nodejs.svg'
import TypeScript from '../../public/typescript.svg'
import Go from '../../public/golang.svg'
import Tailwind from '../../public/tailwind.svg'
import Git from '../../public/git.svg'
import API from '../../public/api.svg'
import Database from '../../public/database.svg'

// changes

export default function Skills() {
return (
<section
className="mt-[20px] py-[40px] sm:py-[50px] md:py-[70px] lg:py-[100px] lg:max-w-[64%] lg:mx-auto xl:py-[120px] xl:max-w-[58%] 2xl:max-w-[800px]"
id="skills"
>
<div className="flex flex-nowrap justify-start items-center gap-[8px] md:gap-[13px]">
<span className="mt-[3px] text-[19px] font-normal sm:mt-[4px] md:text-[20px] xl:text-[21px]">
02.
</span>
<h2 className="whitespace-nowrap mr-[10px] text-[26px] font-semibold sm:mr-[10px] sm:text-[28px] lg:text-[30px] xl:text-[32px]">
Skills
</h2>
<span className="inline-block h-[1px] w-full lg:w-[70%] bg-black"></span>
</div>

<p className='mt-[40px] text-[17px] md:text-[18px]'>
Here are some of the technologies I use:
</p>

<div className='flex flex-col md:flex-row gap-8 mt-[40px] text-[16px] md:text-[17px] xl:text-[18px]'>
<ul className='flex flex-col gap-8'>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={JavaScript} alt={`JavaScript`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>1 year</p>
<p><span className='italic'>JavaScript</span> - a programming language</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={HTML} alt={`HTML`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>2 years</p>
<p><span className='italic'>HTML</span> - a mark up language</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={CSS} alt={`CSS`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>2 years</p>
<p><span className='italic'>CSS</span> - a stylesheet language</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={React} alt={`React`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>1 year</p>
<p><span className='italic'>React</span> - a JavaScript library for building Front-End</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={Next} alt={`Next.js`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>1 year</p>
<p><span className='italic'>Next.js</span> - a React framework for building Front-End and Back-End</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={Node} alt={`Node.js`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>{`<`}1 year</p>
<p><span className='italic'>Node.js</span> - a Back-End JavaScript runtime</p>
</div>
</li>
</ul>

<ul className='flex flex-col gap-8'>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={TypeScript} alt={`TypeScript`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>{`<`}1 year</p>
<p><span className='italic'>TypeScript</span> - a programming language</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={Go} alt={`Go`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>{`<`}1 year</p>
<p><span className='italic'>Golang</span> - a programming language</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={Tailwind} alt={`Tailwind`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>1 year</p>
<p><span className='italic'>Tailwind</span> - a CSS framework</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={Git} alt={`Git`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>2 years</p>
<p><span className='italic'>Git</span> - a version control system</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={API} alt={`API`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>1 year</p>
<p><span className='italic'>API's</span> - a way for programs to communicate with each other</p>
</div>
</li>
<li className="flex justify-start items-center gap-6">
<div className='w-16 h-16'>
<Image src={Database} alt={`Database`} className='w-16 h-16'/>
</div>
<div className='max-w-[calc(100%-88px)]'>
<p className='font-semibold'>1 year</p>
<p><span className='italic'>Database</span> - a collection of data stored and accessed electronically</p>
</div>
</li>
</ul>
</div>
</section>
)
}
Loading

1 comment on commit 0fc1f06

@vercel
Copy link

@vercel vercel bot commented on 0fc1f06 Apr 18, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Successfully deployed to the following URLs:

portfolio – ./

portfolio-git-main-davbazz.vercel.app
portfolio-davbazz.vercel.app
portfolio-nine-sigma-18.vercel.app

Please sign in to comment.