feat: hero animation

This commit is contained in:
VizoleLabs 2024-04-09 12:15:30 +00:00
parent 35d7129f85
commit be1cbb1937
4 changed files with 48 additions and 11 deletions

View file

@ -9,6 +9,7 @@ import { TiTick } from "react-icons/ti"
import { Glow, GlowCapture } from "@codaworks/react-glow" import { Glow, GlowCapture } from "@codaworks/react-glow"
import ImageFilter from "components/ImageFilter/ImageFilter" import ImageFilter from "components/ImageFilter/ImageFilter"
import { BsGlobe2, BsAndroid, BsApple, BsHeadsetVr } from "react-icons/bs" import { BsGlobe2, BsAndroid, BsApple, BsHeadsetVr } from "react-icons/bs"
import { motion } from "framer-motion"
export default function Web() { export default function Web() {
const [init, setInit] = useState(false) const [init, setInit] = useState(false)
@ -17,6 +18,10 @@ export default function Web() {
transform: hovered ? "translateX(3px)" : "none", transform: hovered ? "translateX(3px)" : "none",
transition: "transform .2s", // Optional: Smooth transition transition: "transform .2s", // Optional: Smooth transition
} }
const wordVariants = {
hidden: { opacity: 0, y: 20 },
visible: { opacity: 1, y: 0, transition: { duration: 0.9, staggerChildren: 0.1 } },
}
return ( return (
<div> <div>
<section className="bg-[#0f172a] md:pl-0 md:pr-0 lg:pl-[15%] lg:pr-[15%]"> <section className="bg-[#0f172a] md:pl-0 md:pr-0 lg:pl-[15%] lg:pr-[15%]">
@ -32,13 +37,33 @@ export default function Web() {
> >
<div className="mx-auto grid max-w-screen-xl px-4 py-8 text-center lg:py-16"> <div className="mx-auto grid max-w-screen-xl px-4 py-8 text-center lg:py-16">
<div className="mx-auto place-self-center"> <div className="mx-auto place-self-center">
<h1 className="mb-4 max-w-2xl text-4xl font-extrabold leading-none tracking-tight text-white md:text-5xl xl:text-6xl"> <motion.h1
Experience the next dimension className="mb-4 max-w-2xl text-4xl font-extrabold leading-none tracking-tight text-white md:text-5xl xl:text-6xl"
</h1> initial="hidden"
<p className="mb-6 max-w-2xl font-light text-gray-200 md:text-lg lg:mb-8 lg:text-xl"> animate="visible"
Let us transform your vision into reality with cutting-edge VR/AR experiences and custom software variants={wordVariants}
solutions powered by AI. >
</p> {" "}
{"Experience the next dimension".split(" ").map((word, index) => (
<motion.span key={index} variants={wordVariants}>
{word}{" "}
</motion.span>
))}
</motion.h1>
<motion.p
initial="hidden"
animate="visible"
variants={wordVariants}
className="mb-6 max-w-2xl font-light text-gray-200 md:text-lg lg:mb-8 lg:text-xl"
>
{"Let us transform your vision into reality with cutting-edge VR/AR experiences and custom software solutions powered by AI."
.split(" ")
.map((word, index) => (
<motion.span key={index} variants={wordVariants}>
{word}{" "}
</motion.span>
))}
</motion.p>
<Button <Button
href="https://github.com/Blazity/next-enterprise" href="https://github.com/Blazity/next-enterprise"
className="mr-3 " className="mr-3 "
@ -177,7 +202,7 @@ export default function Web() {
stroke="currentColor" stroke="currentColor"
stroke-linecap="round" stroke-linecap="round"
stroke-linejoin="round" stroke-linejoin="round"
stroke-width="2" strokeWidth="2"
className="ml-2 h-4 w-4" className="ml-2 h-4 w-4"
viewBox="0 0 24 24" viewBox="0 0 24 24"
> >
@ -216,7 +241,7 @@ export default function Web() {
stroke="currentColor" stroke="currentColor"
stroke-linecap="round" stroke-linecap="round"
stroke-linejoin="round" stroke-linejoin="round"
stroke-width="2" strokeWidth="2"
className="ml-2 h-4 w-4" className="ml-2 h-4 w-4"
viewBox="0 0 24 24" viewBox="0 0 24 24"
> >
@ -254,7 +279,7 @@ export default function Web() {
stroke="currentColor" stroke="currentColor"
stroke-linecap="round" stroke-linecap="round"
stroke-linejoin="round" stroke-linejoin="round"
stroke-width="2" strokeWidth="2"
className="ml-2 h-4 w-4" className="ml-2 h-4 w-4"
viewBox="0 0 24 24" viewBox="0 0 24 24"
> >
@ -293,7 +318,7 @@ export default function Web() {
stroke="currentColor" stroke="currentColor"
stroke-linecap="round" stroke-linecap="round"
stroke-linejoin="round" stroke-linejoin="round"
stroke-width="2" strokeWidth="2"
className="ml-2 h-4 w-4" className="ml-2 h-4 w-4"
viewBox="0 0 24 24" viewBox="0 0 24 24"
> >

View file

@ -23,4 +23,16 @@ export const FilterableData = [
title: "Billing App", title: "Billing App",
text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.", text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
}, },
{
name: "Web",
src: "/images/site05.png",
title: "Billing App",
text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
},
{
name: "Web",
src: "/images/site06.png",
title: "Billing App",
text: "Lorem ipsum dolor sit amet, consectetur adipiscing elit.",
},
] ]

BIN
public/images/site05.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

BIN
public/images/site06.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 295 KiB