diff --git a/package.json b/package.json index a6c9d3f..d9dfce2 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "ov-template", "type": "module", - "version": "0.6.3", + "version": "0.6.6", "repository": { "type": "git", "url": "https://github.com/vratskyi/vratskyi.github.io" diff --git a/public/styles/global.css b/public/styles/global.css index f918f3b..71a68dc 100644 --- a/public/styles/global.css +++ b/public/styles/global.css @@ -1 +1 @@ -/*! tailwindcss v3.4.0 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:sans-serif;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%}@media (min-width:424px){.container{max-width:424px}}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.blur-bg{--tw-backdrop-blur:blur(16px);--tw-backdrop-opacity:opacity(0.5);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);background-color:#4444}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.top-1{top:.25rem}.top-20{top:5rem}.z-40{z-index:40}.z-50{z-index:50}.z-\[-1\]{z-index:-1}.m-auto{margin:auto}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-bottom:auto;margin-top:auto}.mb-10{margin-bottom:2.5rem}.mb-24{margin-bottom:6rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-\[5rem\]{margin-bottom:5rem}.ml-2{margin-left:.5rem}.mr-1{margin-right:.25rem}.mr-5{margin-right:1.25rem}.mt-10{margin-top:2.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-5{margin-top:1.25rem}.mt-\[11\.1111\%\]{margin-top:11.1111%}.mt-\[12\.2222\%\]{margin-top:12.2222%}.mt-\[20\.5555\%\]{margin-top:20.5555%}.mt-\[6rem\]{margin-top:6rem}.mt-\[8rem\]{margin-top:8rem}.line-clamp-1{-webkit-box-orient:vertical;-webkit-line-clamp:1;display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-full{height:100%}.max-h-\[200px\]{max-height:200px}.max-h-\[680px\]{max-height:680px}.min-h-\[200px\]{min-height:200px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-20{width:5rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-full{width:100%}.min-w-full{min-width:100%}.max-w-6xl{max-width:72rem}.max-w-\[200px\]{max-width:200px}.max-w-\[250px\]{max-width:250px}.max-w-\[400px\]{max-width:400px}.max-w-\[600px\]{max-width:600px}.max-w-xl{max-width:36rem}.-rotate-45{--tw-rotate:-45deg}.-rotate-45,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.auto-cols-auto{grid-auto-columns:auto}.grid-flow-col{grid-auto-flow:column}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.place-items-center{place-items:center}.content-center{align-content:center}.content-start{align-content:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-5{gap:1.25rem}.gap-x-10{-moz-column-gap:2.5rem;column-gap:2.5rem}.gap-y-10{row-gap:2.5rem}.gap-y-5{row-gap:1.25rem}.gap-y-6{row-gap:1.5rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.25rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.self-center{align-self:center}.justify-self-start{justify-self:start}.justify-self-center{justify-self:center}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.bg-\[\#040404\]{--tw-bg-opacity:1;background-color:rgb(4 4 4/var(--tw-bg-opacity))}.bg-\[\#040404\]\/\[98\%\]{background-color:rgba(4,4,4,.98)}.bg-background-0\/10{background-color:rgba(68,68,68,.1)}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-primary-0{--tw-gradient-from:#f1362a var(--tw-gradient-from-position);--tw-gradient-to:rgba(241,54,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-accent-0{--tw-gradient-to:#ac1694 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pt-2{padding-top:.5rem}.text-center{text-align:center}.font-sans{font-family:sans-serif}.\!text-6xl{font-size:3.75rem!important;line-height:1!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-8xl{font-size:6rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.\!leading-snug{line-height:1.375!important}.\!tracking-wide{letter-spacing:.025em!important}.tracking-wide{letter-spacing:.025em}.text-\[\#bbcfcf\]{--tw-text-opacity:1;color:rgb(187 207 207/var(--tw-text-opacity))}.text-transparent{color:transparent}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-zinc-200{--tw-text-opacity:1;color:rgb(228 228 231/var(--tw-text-opacity))}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.blur{--tw-blur:blur(8px)}.blur,.blur-\[100px\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[100px\]{--tw-blur:blur(100px)}.backdrop-blur-3xl{--tw-backdrop-blur:blur(64px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,.hover-link:hover,.transition-colors{transition-duration:.15s}.hover-link:hover{color:var(--primary)}.home-icon.active{stroke:var(--primary);transition-duration:.15s}:root{--primary:#f1362a;--secondary:#2f2929;--accent:#ac1694;--background:#040404}html{scroll-behavior:smooth}h1,h2,h3,h4,h5,h6,li{display:inline-block;font-family:Kanit,sans-serif!important}h2{-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(to right,var(--primary),var(--accent));color:transparent;display:inline-block;font-size:3.3rem!important;font-weight:900}body{font-family:Montserrat,sans-serif!important}::-webkit-scrollbar{height:3px;width:10px}::-webkit-scrollbar-track{background:hsla(0,0%,100%,0);border-radius:10px}::-webkit-scrollbar-thumb{background:rgba(240,54,44,.6);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:rgba(240,54,44,.8)}::-webkit-scrollbar-thumb:active{background:#f0362c}blockquote{--tw-border-opacity:1;border-color:rgb(241 54 42/var(--tw-border-opacity));border-left-width:2px;display:inline-block;font-size:1.25rem;font-weight:300;letter-spacing:.025em;line-height:1.75rem;padding-left:.75rem}.horizontal-line{border-bottom-width:1px;border-color:hsla(0,0%,100%,.1);display:block;margin-bottom:1rem;margin-top:1rem}#main-menu>.menu{scroll-margin-top:76px}.blur-menu{backdrop-filter:blur(100px)!important;-webkit-backdrop-filter:blur(100px)!important}#main-menu.animation{animation-duration:.5s;animation-name:animation}@keyframes animation{0%{opacity:0}to{opacity:1}}#menu-icon{transition:src .5s ease-in-out}.animate{opacity:0;position:relative;transform:translateY(150px);transition:all 1s ease}.animate.active{opacity:1;transform:translateY(0)}.active{visibility:visible!important}.hover-link.active{color:var(--primary)}.hover\:border-primary-0:hover{--tw-border-opacity:1;border-color:rgb(241 54 42/var(--tw-border-opacity))}.hover\:bg-primary-0:hover{--tw-bg-opacity:1;background-color:rgb(241 54 42/var(--tw-bg-opacity))}.hover\:bg-zinc-500\/20:hover{background-color:hsla(240,4%,46%,.2)}.hover\:bg-zinc-800:hover{--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}@media not all and (min-width:768px){.max-md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (min-width:424px){.xs\:mt-0{margin-top:0}.xs\:mt-\[10rem\]{margin-top:10rem}}@media (min-width:640px){.sm\:mt-\[12rem\]{margin-top:12rem}}@media (min-width:768px){.md\:left-5{left:1.25rem}.md\:right-5{right:1.25rem}.md\:mr-1{margin-right:.25rem}.md\:mt-\[10rem\]{margin-top:10rem}.md\:inline-block{display:inline-block}.md\:min-h-full{min-height:100%}.md\:px-0{padding-left:0;padding-right:0}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}}@media (min-width:1024px){.lg\:mb-0{margin-bottom:0}.lg\:mb-20{margin-bottom:5rem}.lg\:ml-10{margin-left:2.5rem}.lg\:mt-0{margin-top:0}.lg\:mt-\[10rem\]{margin-top:10rem}.lg\:mt-\[5\.5555\%\]{margin-top:5.5555%}.lg\:line-clamp-none{-webkit-box-orient:horizontal;-webkit-line-clamp:none;display:block;overflow:visible}.lg\:max-h-\[300px\]{max-height:300px}.lg\:min-h-\[700px\]{min-height:700px}.lg\:min-h-full{min-height:100%}.lg\:w-8{width:2rem}.lg\:max-w-6xl{max-width:72rem}.lg\:max-w-\[300px\]{max-width:300px}.lg\:auto-cols-max{grid-auto-columns:max-content}.lg\:grid-flow-col{grid-auto-flow:column}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:content-center{align-content:center}.lg\:justify-between{justify-content:space-between}.lg\:gap-y-0{row-gap:0}.lg\:gap-y-10{row-gap:2.5rem}.lg\:space-x-0>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(0px*(1 - var(--tw-space-x-reverse)));margin-right:calc(0px*var(--tw-space-x-reverse))}.lg\:space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.25rem*var(--tw-space-x-reverse))}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.lg\:p-10{padding:2.5rem}.lg\:px-0{padding-left:0;padding-right:0}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:py-5{padding-bottom:1.25rem;padding-top:1.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-7xl{font-size:4.5rem;line-height:1}.lg\:text-8xl{font-size:6rem;line-height:1}.lg\:text-9xl{font-size:8rem;line-height:1}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1280px){.xl\:max-w-7xl{max-width:80rem}}@media (min-width:1536px){.\32xl\:mt-\[15rem\]{margin-top:15rem}} \ No newline at end of file +/*! tailwindcss v3.4.0 | MIT License | https://tailwindcss.com*/*,:after,:before{border:0 solid #e5e7eb;box-sizing:border-box}:after,:before{--tw-content:""}:host,html{-webkit-text-size-adjust:100%;font-feature-settings:normal;-webkit-tap-highlight-color:transparent;font-family:sans-serif;font-variation-settings:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-feature-settings:normal;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{font-feature-settings:inherit;color:inherit;font-family:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0}fieldset,legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]{display:none}*,:after,:before{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }::backdrop{--tw-border-spacing-x:0;--tw-border-spacing-y:0;--tw-translate-x:0;--tw-translate-y:0;--tw-rotate:0;--tw-skew-x:0;--tw-skew-y:0;--tw-scale-x:1;--tw-scale-y:1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness:proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-color:rgba(59,130,246,.5);--tw-ring-offset-shadow:0 0 #0000;--tw-ring-shadow:0 0 #0000;--tw-shadow:0 0 #0000;--tw-shadow-colored:0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: }.container{width:100%}@media (min-width:424px){.container{max-width:424px}}@media (min-width:640px){.container{max-width:640px}}@media (min-width:768px){.container{max-width:768px}}@media (min-width:1024px){.container{max-width:1024px}}@media (min-width:1280px){.container{max-width:1280px}}@media (min-width:1536px){.container{max-width:1536px}}.blur-bg{--tw-backdrop-blur:blur(16px);--tw-backdrop-opacity:opacity(0.5);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);background-color:#4444}.visible{visibility:visible}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.bottom-0{bottom:0}.left-0{left:0}.right-0{right:0}.top-0{top:0}.top-1{top:.25rem}.top-20{top:5rem}.z-40{z-index:40}.z-50{z-index:50}.z-\[-1\]{z-index:-1}.m-auto{margin:auto}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-bottom:auto;margin-top:auto}.mb-10{margin-bottom:2.5rem}.mb-24{margin-bottom:6rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-\[5rem\]{margin-bottom:5rem}.ml-2{margin-left:.5rem}.mr-1{margin-right:.25rem}.mr-5{margin-right:1.25rem}.mt-10{margin-top:2.5rem}.mt-20{margin-top:5rem}.mt-3{margin-top:.75rem}.mt-5{margin-top:1.25rem}.mt-\[11\.1111\%\]{margin-top:11.1111%}.mt-\[12\.2222\%\]{margin-top:12.2222%}.mt-\[20\.5555\%\]{margin-top:20.5555%}.mt-\[6rem\]{margin-top:6rem}.mt-\[8rem\]{margin-top:8rem}.line-clamp-1{-webkit-box-orient:vertical;-webkit-line-clamp:1;display:-webkit-box;overflow:hidden}.block{display:block}.inline-block{display:inline-block}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.inline-grid{display:inline-grid}.hidden{display:none}.h-full{height:100%}.max-h-\[200px\]{max-height:200px}.max-h-\[220px\]{max-height:220px}.max-h-\[680px\]{max-height:680px}.min-h-\[200px\]{min-height:200px}.min-h-full{min-height:100%}.min-h-screen{min-height:100vh}.w-10{width:2.5rem}.w-20{width:5rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-full{width:100%}.max-w-6xl{max-width:72rem}.max-w-\[1120px\]{max-width:1120px}.max-w-\[200px\]{max-width:200px}.max-w-\[250px\]{max-width:250px}.max-w-\[400px\]{max-width:400px}.max-w-\[600px\]{max-width:600px}.max-w-xl{max-width:36rem}.-rotate-45{--tw-rotate:-45deg}.-rotate-45,.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skewX(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.cursor-default{cursor:default}.auto-cols-auto{grid-auto-columns:auto}.grid-flow-col{grid-auto-flow:column}.grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-row{flex-direction:row}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.place-content-center{place-content:center}.place-items-center{place-items:center}.content-center{align-content:center}.content-start{align-content:flex-start}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-5{gap:1.25rem}.gap-x-10{-moz-column-gap:2.5rem;column-gap:2.5rem}.gap-y-10{row-gap:2.5rem}.gap-y-5{row-gap:1.25rem}.space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.5rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.5rem*var(--tw-space-x-reverse))}.space-x-5>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(1.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(1.25rem*var(--tw-space-x-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(.5rem*var(--tw-space-y-reverse));margin-top:calc(.5rem*(1 - var(--tw-space-y-reverse)))}.self-start{align-self:flex-start}.self-center{align-self:center}.justify-self-start{justify-self:start}.justify-self-center{justify-self:center}.overflow-y-auto{overflow-y:auto}.break-words{overflow-wrap:break-word}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.border-2{border-width:2px}.border-b-\[1px\]{border-bottom-width:1px}.border-white\/10{border-color:hsla(0,0%,100%,.1)}.bg-\[\#040404\]{--tw-bg-opacity:1;background-color:rgb(4 4 4/var(--tw-bg-opacity))}.bg-\[\#040404\]\/\[98\%\]{background-color:rgba(4,4,4,.98)}.bg-background-0\/10{background-color:rgba(68,68,68,.1)}.bg-gradient-to-r{background-image:linear-gradient(to right,var(--tw-gradient-stops))}.bg-gradient-to-t{background-image:linear-gradient(to top,var(--tw-gradient-stops))}.from-primary-0{--tw-gradient-from:#f1362a var(--tw-gradient-from-position);--tw-gradient-to:rgba(241,54,42,0) var(--tw-gradient-to-position);--tw-gradient-stops:var(--tw-gradient-from),var(--tw-gradient-to)}.to-accent-0{--tw-gradient-to:#ac1694 var(--tw-gradient-to-position)}.bg-clip-text{-webkit-background-clip:text;background-clip:text}.object-cover{-o-object-fit:cover;object-fit:cover}.object-center{-o-object-position:center;object-position:center}.p-2{padding:.5rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.px-10{padding-left:2.5rem;padding-right:2.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-1{padding-bottom:.25rem;padding-top:.25rem}.py-2{padding-bottom:.5rem;padding-top:.5rem}.py-3{padding-bottom:.75rem;padding-top:.75rem}.py-5{padding-bottom:1.25rem;padding-top:1.25rem}.pb-1{padding-bottom:.25rem}.pb-10{padding-bottom:2.5rem}.pb-4{padding-bottom:1rem}.pl-2{padding-left:.5rem}.pt-2{padding-top:.5rem}.text-center{text-align:center}.font-sans{font-family:sans-serif}.\!text-6xl{font-size:3.75rem!important;line-height:1!important}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.text-5xl{font-size:3rem;line-height:1}.text-7xl{font-size:4.5rem;line-height:1}.text-8xl{font-size:6rem;line-height:1}.text-9xl{font-size:8rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-black{font-weight:900}.font-light{font-weight:300}.uppercase{text-transform:uppercase}.\!leading-snug{line-height:1.375!important}.\!tracking-wide{letter-spacing:.025em!important}.tracking-wide{letter-spacing:.025em}.text-\[\#bbcfcf\]{--tw-text-opacity:1;color:rgb(187 207 207/var(--tw-text-opacity))}.text-transparent{color:transparent}.text-white{--tw-text-opacity:1;color:rgb(255 255 255/var(--tw-text-opacity))}.text-zinc-200{--tw-text-opacity:1;color:rgb(228 228 231/var(--tw-text-opacity))}.subpixel-antialiased{-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto}.blur{--tw-blur:blur(8px)}.blur,.blur-\[100px\]{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.blur-\[100px\]{--tw-blur:blur(100px)}.backdrop-blur-3xl{--tw-backdrop-blur:blur(64px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-duration:.15s;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1)}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1)}.duration-150,.hover-link:hover,.transition-colors{transition-duration:.15s}.hover-link:hover{color:var(--primary)}.home-icon.active{stroke:var(--primary);transition-duration:.15s}:root{--primary:#f1362a;--secondary:#2f2929;--accent:#ac1694;--background:#040404}html{scroll-behavior:smooth}h1,h2,h3,h4,h5,h6,li{display:inline-block;font-family:Kanit,sans-serif!important}h2{-webkit-background-clip:text;background-clip:text;background-image:linear-gradient(to right,var(--primary),var(--accent));color:transparent;display:inline-block;font-size:3.3rem!important;font-weight:900}body{font-family:Montserrat,sans-serif!important}::-webkit-scrollbar{height:3px;width:10px}::-webkit-scrollbar-track{background:hsla(0,0%,100%,0);border-radius:10px}::-webkit-scrollbar-thumb{background:rgba(240,54,44,.6);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:rgba(240,54,44,.8)}::-webkit-scrollbar-thumb:active{background:#f0362c}blockquote{--tw-border-opacity:1;border-color:rgb(241 54 42/var(--tw-border-opacity));border-left-width:2px;display:inline-block;font-size:1.25rem;font-weight:300;letter-spacing:.025em;line-height:1.75rem;padding-left:.75rem}.horizontal-line{border-bottom-width:1px;border-color:hsla(0,0%,100%,.1);display:block;margin-bottom:1rem;margin-top:1rem}#main-menu>.menu{scroll-margin-top:76px}.blur-menu{backdrop-filter:blur(100px)!important;-webkit-backdrop-filter:blur(100px)!important}#main-menu.animation{animation-duration:.5s;animation-name:animation}@keyframes animation{0%{opacity:0}to{opacity:1}}#menu-icon{transition:src .5s ease-in-out}.animate{opacity:0;position:relative;transform:translateY(150px);transition:all 1s ease}.animate.active{opacity:1;transform:translateY(0)}.active{visibility:visible!important}.hover-link.active{color:var(--primary)}.hover\:border-primary-0:hover{--tw-border-opacity:1;border-color:rgb(241 54 42/var(--tw-border-opacity))}.hover\:bg-primary-0:hover{--tw-bg-opacity:1;background-color:rgb(241 54 42/var(--tw-bg-opacity))}.hover\:bg-zinc-500\/20:hover{background-color:hsla(240,4%,46%,.2)}.hover\:bg-zinc-800:hover{--tw-bg-opacity:1;background-color:rgb(39 39 42/var(--tw-bg-opacity))}@media not all and (min-width:768px){.max-md\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}}@media (min-width:424px){.xs\:mt-0{margin-top:0}.xs\:mt-\[10rem\]{margin-top:10rem}}@media (min-width:640px){.sm\:mt-\[12rem\]{margin-top:12rem}}@media (min-width:768px){.md\:left-5{left:1.25rem}.md\:right-5{right:1.25rem}.md\:mr-1{margin-right:.25rem}.md\:mt-\[10rem\]{margin-top:10rem}.md\:inline-block{display:inline-block}.md\:min-h-full{min-height:100%}.md\:px-0{padding-left:0;padding-right:0}.md\:px-5{padding-left:1.25rem;padding-right:1.25rem}}@media (min-width:1024px){.lg\:mb-0{margin-bottom:0}.lg\:mb-20{margin-bottom:5rem}.lg\:ml-10{margin-left:2.5rem}.lg\:mt-0{margin-top:0}.lg\:mt-\[10rem\]{margin-top:10rem}.lg\:mt-\[5\.5555\%\]{margin-top:5.5555%}.lg\:line-clamp-none{-webkit-box-orient:horizontal;-webkit-line-clamp:none;display:block;overflow:visible}.lg\:max-h-\[300px\]{max-height:300px}.lg\:min-h-\[700px\]{min-height:700px}.lg\:w-8{width:2rem}.lg\:max-w-6xl{max-width:72rem}.lg\:max-w-\[300px\]{max-width:300px}.lg\:auto-cols-max{grid-auto-columns:max-content}.lg\:grid-flow-col{grid-auto-flow:column}.lg\:grid-cols-1{grid-template-columns:repeat(1,minmax(0,1fr))}.lg\:grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.lg\:content-center{align-content:center}.lg\:justify-between{justify-content:space-between}.lg\:gap-y-0{row-gap:0}.lg\:gap-y-10{row-gap:2.5rem}.lg\:space-x-0>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(0px*(1 - var(--tw-space-x-reverse)));margin-right:calc(0px*var(--tw-space-x-reverse))}.lg\:space-x-1>:not([hidden])~:not([hidden]){--tw-space-x-reverse:0;margin-left:calc(.25rem*(1 - var(--tw-space-x-reverse)));margin-right:calc(.25rem*var(--tw-space-x-reverse))}.lg\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse:0;margin-bottom:calc(0px*var(--tw-space-y-reverse));margin-top:calc(0px*(1 - var(--tw-space-y-reverse)))}.lg\:p-10{padding:2.5rem}.lg\:px-0{padding-left:0;padding-right:0}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:py-5{padding-bottom:1.25rem;padding-top:1.25rem}.lg\:text-4xl{font-size:2.25rem;line-height:2.5rem}.lg\:text-5xl{font-size:3rem;line-height:1}.lg\:text-7xl{font-size:4.5rem;line-height:1}.lg\:text-8xl{font-size:6rem;line-height:1}.lg\:text-9xl{font-size:8rem;line-height:1}.lg\:text-lg{font-size:1.125rem;line-height:1.75rem}}@media (min-width:1280px){.xl\:max-w-7xl{max-width:80rem}}@media (min-width:1536px){.\32xl\:mt-\[15rem\]{margin-top:15rem}} \ No newline at end of file diff --git a/src/components/Badge.astro b/src/components/Badge.astro new file mode 100644 index 0000000..53a119a --- /dev/null +++ b/src/components/Badge.astro @@ -0,0 +1,8 @@ +--- +let { text } = Astro.props; +--- + +
  • + {text} +
  • diff --git a/src/components/BadgeLink.astro b/src/components/BadgeLink.astro new file mode 100644 index 0000000..ce45012 --- /dev/null +++ b/src/components/BadgeLink.astro @@ -0,0 +1,13 @@ +--- +let { href, text } = Astro.props; +--- + + +
  • + {text} +
  • +
    diff --git a/src/components/Button.astro b/src/components/Button.astro new file mode 100644 index 0000000..0b19402 --- /dev/null +++ b/src/components/Button.astro @@ -0,0 +1,25 @@ +--- +let { link, text } = Astro.props; +--- + +{text} + + diff --git a/src/components/Header.astro b/src/components/Header.astro index 04313c9..fa0e8e0 100644 --- a/src/components/Header.astro +++ b/src/components/Header.astro @@ -34,7 +34,7 @@ import blur from '/src/assets/img/bg.svg';
    diff --git a/src/components/Post.astro b/src/components/Post.astro index 746a40c..02f95e3 100644 --- a/src/components/Post.astro +++ b/src/components/Post.astro @@ -11,7 +11,7 @@ const { post } = Astro.props; ---
    + class='p-4 grid gap-y-5 mt-[12.2222%] w-full max-w-[400px] hover:bg-zinc-500/20 blur-bg rounded-2xl transition-colors duration-150'>

    -
    • {post.data.tag}

    diff --git a/src/components/PostList.astro b/src/components/PostList.astro index 441f028..719bad9 100644 --- a/src/components/PostList.astro +++ b/src/components/PostList.astro @@ -11,7 +11,7 @@ const { posts } = Astro.props; --- -
    +
    {posts.map((post) => )}
    diff --git a/src/pages/index.astro b/src/pages/index.astro index bab8168..32cb693 100644 --- a/src/pages/index.astro +++ b/src/pages/index.astro @@ -4,6 +4,7 @@ import Head from '../components/Head.astro'; import { Picture } from 'astro:assets'; import blur from '/src/assets/img/bg.svg'; import cover from '/src/assets/img/dev.jpg'; +import Button from '../components/Button.astro'; --- @@ -52,28 +53,7 @@ import cover from '/src/assets/img/dev.jpg'; as well as for blogging.

    - +
    diff --git a/src/pages/portfolio.astro b/src/pages/portfolio.astro index 4afdde5..ac9a9d4 100644 --- a/src/pages/portfolio.astro +++ b/src/pages/portfolio.astro @@ -7,6 +7,9 @@ import water from '/src/assets/img/water-website.png'; import byshikat from '/src/assets/img/online-store-byshikat.png'; import lmd from '/src/assets/img/online-store-lmd.png'; import blur from '/src/assets/img/bg.svg'; +import PortfolioCard from '../components/PortfolioCard.astro'; + +let title = Astro.props; --- @@ -17,243 +20,87 @@ import blur from '/src/assets/img/bg.svg'; </div> <!-- ABOUT ME --> - <section class='grid px-3 lg:px-0 content-start text-white'> + <section class='grid px-3 lg:px-0 content-start text-white'> <Picture - src={blur} - class='fixed blur-[100px] top-0 bottom-0 left-0 right-0 m-auto h-full w-full object-cover object-center z-[-1]' - alt='blur background' - formats={['avif', 'webp']} - /> + src={blur} + class='fixed blur-[100px] top-0 bottom-0 left-0 right-0 m-auto h-full w-full object-cover object-center z-[-1]' + alt='blur background' + formats={['avif', 'webp']} + /> <div class='grid grid-rows-auto content-center gap-5 pb-10 mt-[11.1111%]'> - <div - class='grid blur-bg p-5 lg:p-10 rounded-xl'> - <div class='grid lg:grid-cols-2'> - <div class='grid self-start'> - <Picture - class='object-cover object-center min-h-full rounded-2xl' - src={water} - width='500' - height='350' - alt='water delivery website' - formats={['avif', 'webp']} - /> - </div> - <div class='lg:ml-10'> - <h3 class=' font-black bg-clip-text text-transparent bg-gradient-to-r from-primary-0 to-accent-0 text-3xl lg:text-4xl mb-5 mt-3 lg:mt-0'>H2O Water Company</h3> - <p class='inline-flex text-xl font-light'> - The website I developed offers water delivery in Belogorodka and - surrounding areas. It has an attractive design, intuitive layout - and integration with analytical tools to attract more customers. - Visitors can easily leave a request for water delivery through the - order form and get access to bottled drinking water. - </p> - <div class='py-5'> - <h4 class='text-lg mb-5'>Technologies i used:</h4> - <ul class='flex justify-between flex-wrap'> - <a - href='https://astro.build/' - target='_blank'> - <li class='flex self-start blur-bg hover:bg-primary-0 duration-150 rounded-2xl px-2 py-1'> - <img - width='70' - height='30' - src='/src/assets/img/astro-logo-light.svg' - alt='astro-logo' - /> - </li> - </a> - <a - href='https://tailwindcss.com/' - target='_blank'> - <li class='flex self-start blur-bg hover:bg-primary-0 duration-150 rounded-2xl px-3 py-2'> - <img - width='110' - height='30' - src='/src/assets/img/tailwindcss-logotype-white.svg' - alt='tailwindcss-logotype-white' - /> - </li> - </a> - <li class='flex self-start blur-bg rounded-2xl px-2 py-1'>JavaScript</li> - <li class='flex self-start blur-bg rounded-2xl px-2 py-1 mt-3 xs:mt-0'>HTML/CSS</li> - </ul> - </div> - <div class='mt-5'> - <button - onclick=" - window.open('https://h2ovoda.com.ua/', '_blank'); - " - class='justify-self-start px-3 py-2 rounded-lg border-2 hover:border-primary-0 hover:bg-primary-0 duration-150' - >Check out - <svg - class='inline-block pl-2' - width='24' - height='24' - viewBox='0 0 24 24' - fill='none' - xmlns='http://www.w3.org/2000/svg' - ><path - d='M15.6396 7.02527H12.0181V5.02527H19.0181V12.0253H17.0181V8.47528L12.1042 13.3892L10.6899 11.975L15.6396 7.02527Z' - fill='currentColor' - ></path><path - d='M10.9819 6.97473H4.98193V18.9747H16.9819V12.9747H14.9819V16.9747H6.98193V8.97473H10.9819V6.97473Z' - fill='currentColor' - ></path></svg - > - </button> - </div> - </div> - </div> - </div> + <PortfolioCard + img={water} + alt={title} + site="https://h2ovoda.com.ua/" + title='Water delivery website' + badgeProps={[ + { text: "JavaScript" }, + { text: "HTML/CSS" } + ]} + badgeLinkProps={[ + {text: "Astro", alt: "Astro logo", href: "https://astro.build/"}, + {text: "TailwindCSS", alt: "TailwindCSS logo", href: "https://tailwindcss.com/"} - <div - class='grid blur-bg p-5 lg:p-10 rounded-xl'> - <div class='grid lg:grid-cols-2'> - <div class='grid self-start'> - <Picture - class='object-cover object-center min-h-full rounded-2xl' - src={byshikat} - width='500' - height='350' - alt='water delivery website' - formats={['avif', 'webp']} - /> - </div> + ]} + description={` + The website I developed offers water delivery in Belogorodka and + surrounding areas. It has an attractive design, intuitive layout + and integration with analytical tools to attract more customers. + Visitors can easily leave a request for water delivery through the + order form and get access to bottled drinking water. + `} + > + </PortfolioCard> - <div class='lg:ml-10'> - <h3 class=' font-black bg-clip-text text-transparent bg-gradient-to-r from-primary-0 to-accent-0 text-3xl lg:text-4xl mb-5 mt-3 lg:mt-0'> - Byshikat online shoes store - </h3> - <p class='inline-block text-xl font-light'> - Analyzed the target audience, I realized that it is necessary to - make something similar to the model of behavior in Instagram, as - well as similar at least remotely similar design, thanks to a set - of solutions sales from their instagram store went to online store - and increased by 1000% - </p> - <div class='py-5'> - <h4 class='text-lg mb-5'>Technologies i used:</h4> - <ul class='flex space-y-2 space-x-5 lg:space-x-0 lg:space-y-0 lg:justify-between flex-wrap'> - <a - href='https://wordpress.com/' - target='_blank'> - <li class='flex self-start blur-bg hover:bg-primary-0 duration-150 rounded-2xl px-2 py-1'> - <img - width='30' - height='30' - src='/src/assets/img/wordpress.svg' - alt='wordpress' - /> - <span class="flex self-center">WordPress</span> - </li> - </a> - <li class='flex self-start blur-bg rounded-2xl px-3 py-2 uppercase'>php</li> - <li class='flex self-start blur-bg rounded-2xl px-3 py-2 uppercase'>acf</li> - <li class='flex self-start blur-bg rounded-2xl px-2 py-1'>JavaScript</li> - <li class='flex self-start blur-bg rounded-2xl px-2 py-1 mt-3 xs:mt-0'>HTML/CSS</li> - </ul> - </div> - <div class='mt-5'> - <button - onclick=" - window.open('https://byshikat.com/', '_blank'); - " - class='justify-self-start px-3 py-2 rounded-lg border-2 hover:border-primary-0 hover:bg-primary-0 duration-150' - >Check out - <svg - class='inline-block pl-2' - width='24' - height='24' - viewBox='0 0 24 24' - fill='none' - xmlns='http://www.w3.org/2000/svg' - ><path - d='M15.6396 7.02527H12.0181V5.02527H19.0181V12.0253H17.0181V8.47528L12.1042 13.3892L10.6899 11.975L15.6396 7.02527Z' - fill='currentColor' - ></path><path - d='M10.9819 6.97473H4.98193V18.9747H16.9819V12.9747H14.9819V16.9747H6.98193V8.97473H10.9819V6.97473Z' - fill='currentColor' - ></path></svg - > - </button> - </div> - </div> - </div> - </div> + <PortfolioCard + img={byshikat} + alt={title} + site="https://byshikat.com/" + title='Byshikat online shoes store' + badgeProps={[ + { text: "PHP" }, + { text: "ACF" }, + { text: "JavaScript" }, + { text: "HTML/CSS" } + ]} + badgeLinkProps={[ + {text: "WordPress", alt: "WordPress logo", href: "https://wordpress.com/"}, + ]} + description={` + Analyzed the target audience, I realized that it is necessary to + make something similar to the model of behavior in Instagram, as + well as similar at least remotely similar design, thanks to a set + of solutions sales from their instagram store went to online store + and increased by 1000% + `} + > + </PortfolioCard> - <div - class='grid blur-bg p-5 lg:p-10 rounded-xl'> - <div class='grid lg:grid-cols-2'> - <div class='grid self-start'> - <Picture - class='object-cover object-center min-h-full rounded-2xl' - src={lmd} - width='500' - height='350' - alt='water delivery website' - formats={['avif', 'webp']} - /> - </div> + <PortfolioCard + img={lmd} + alt={title} + site="https://lmd.lviv.ua/" + title='Paper gift bags service' + badgeProps={[ + { text: "PHP" }, + { text: "ACF" }, + { text: "JavaScript" }, + { text: "HTML/CSS" } + ]} + badgeLinkProps={[ + {text: "WordPress", alt: "WordPress logo", href: "https://wordpress.com/"}, + ]} + description={` + This online store is based on WordPress CMS and WooCommerce, I + redesigned the old site to a modern design and optimized the + loading time, thanks to a comprehensive approach, the number of + visitors and sales increased. Now the site is at the top of google + in Ukraine. + `} + > + </PortfolioCard> - <div class='lg:ml-10'> - <h3 class=' font-black bg-clip-text text-transparent bg-gradient-to-r from-primary-0 to-accent-0 text-3xl lg:text-4xl mb-5 mt-3 lg:mt-0'>Paper gift bags service</h3> - <p class='inline-block text-xl font-light'> - This online store is based on WordPress CMS and WooCommerce, I - redesigned the old site to a modern design and optimized the - loading time, thanks to a comprehensive approach, the number of - visitors and sales increased. Now the site is at the top of google - in Ukraine. - </p> - <div class='py-5'> - <h4 class='text-lg mb-5'>Technologies i used:</h4> - <ul class='flex space-y-2 space-x-5 lg:space-x-0 lg:space-y-0 lg:justify-between flex-wrap'> - <a - href='https://wordpress.com/' - target='_blank'> - <li class='flex self-start blur-bg hover:bg-primary-0 duration-150 rounded-2xl px-2 py-1'> - <img - width='30' - height='30' - src='/src/assets/img/wordpress.svg' - alt='wordpress' - /> - <span class="flex self-center">WordPress</span> - </li> - </a> - <li class='flex self-start blur-bg rounded-2xl px-3 py-2 uppercase'>php</li> - <li class='flex self-start blur-bg rounded-2xl px-3 py-2 uppercase'>acf</li> - <li class='flex self-start blur-bg rounded-2xl px-2 py-1'>JavaScript</li> - <li class='flex self-start blur-bg rounded-2xl px-2 py-1 mt-3 xs:mt-0'>HTML/CSS</li> - </ul> - </div> - <div class='mt-5'> - <button - onclick=" - window.open('https://lmd.lviv.ua/', '_blank'); - " - class='justify-self-start px-3 py-2 rounded-lg border-2 hover:border-primary-0 hover:bg-primary-0 duration-150' - >Check out - <svg - class='inline-block pl-2' - width='24' - height='24' - viewBox='0 0 24 24' - fill='none' - xmlns='http://www.w3.org/2000/svg' - ><path - d='M15.6396 7.02527H12.0181V5.02527H19.0181V12.0253H17.0181V8.47528L12.1042 13.3892L10.6899 11.975L15.6396 7.02527Z' - fill='currentColor' - ></path><path - d='M10.9819 6.97473H4.98193V18.9747H16.9819V12.9747H14.9819V16.9747H6.98193V8.97473H10.9819V6.97473Z' - fill='currentColor' - ></path></svg - > - </button> - </div> - </div> - </div> - </div> </div> </section> </Layout>