diff --git a/public/color-preview.png b/public/color-preview.png new file mode 100644 index 0000000..915b91e Binary files /dev/null and b/public/color-preview.png differ diff --git a/public/compact-mode.png b/public/compact-mode.png new file mode 100644 index 0000000..0dc76a9 Binary files /dev/null and b/public/compact-mode.png differ diff --git a/public/logo.png b/public/logo.png deleted file mode 100644 index 4f906fb..0000000 Binary files a/public/logo.png and /dev/null differ diff --git a/public/logos/zen-black.png b/public/logos/zen-black.png new file mode 100644 index 0000000..eab6194 Binary files /dev/null and b/public/logos/zen-black.png differ diff --git a/public/logos/zen-blue.png b/public/logos/zen-blue.png new file mode 100644 index 0000000..7cec65c Binary files /dev/null and b/public/logos/zen-blue.png differ diff --git a/public/logos/zen-brown.png b/public/logos/zen-brown.png new file mode 100644 index 0000000..767ea98 Binary files /dev/null and b/public/logos/zen-brown.png differ diff --git a/public/logos/zen-buff.png b/public/logos/zen-buff.png new file mode 100644 index 0000000..267f68e Binary files /dev/null and b/public/logos/zen-buff.png differ diff --git a/public/logos/zen-indigo.png b/public/logos/zen-indigo.png new file mode 100644 index 0000000..414c0ed Binary files /dev/null and b/public/logos/zen-indigo.png differ diff --git a/public/logos/zen-mantis.png b/public/logos/zen-mantis.png new file mode 100644 index 0000000..5b54f42 Binary files /dev/null and b/public/logos/zen-mantis.png differ diff --git a/public/logos/zen-orchid.png b/public/logos/zen-orchid.png new file mode 100644 index 0000000..fe2d512 Binary files /dev/null and b/public/logos/zen-orchid.png differ diff --git a/public/logos/zen-pink.png b/public/logos/zen-pink.png new file mode 100644 index 0000000..86e8b7c Binary files /dev/null and b/public/logos/zen-pink.png differ diff --git a/public/logos/zen-tangerine.png b/public/logos/zen-tangerine.png new file mode 100644 index 0000000..d7f349b Binary files /dev/null and b/public/logos/zen-tangerine.png differ diff --git a/public/logos/zen-turquise.png b/public/logos/zen-turquise.png new file mode 100644 index 0000000..26f7ba9 Binary files /dev/null and b/public/logos/zen-turquise.png differ diff --git a/public/logos/zen-white.png b/public/logos/zen-white.png new file mode 100644 index 0000000..f3dc736 Binary files /dev/null and b/public/logos/zen-white.png differ diff --git a/public/logos/zen-yellow.png b/public/logos/zen-yellow.png new file mode 100644 index 0000000..4058881 Binary files /dev/null and b/public/logos/zen-yellow.png differ diff --git a/src/components/features.tsx b/src/components/features.tsx index 5c45cff..eae9b4a 100644 --- a/src/components/features.tsx +++ b/src/components/features.tsx @@ -29,6 +29,8 @@ import { import ShineBorder from "./ui/shine-border"; import SparklesText from "./ui/sparkles-text"; import Image from "next/image"; +import OrbitingCircles from "./ui/orbiting-circles"; +import { ny } from "@/lib/utils"; function Checkmark() { return ( @@ -49,23 +51,81 @@ function Question() { } export default function Features() { + const [feature, setFeature] = useState(0); + useEffect(() => { + setInterval(() => { + setFeature((feature) => (feature + 1) % 3); + }, 10000); + }, []); return ( -
+
+
+
+

The only limit is your

+ +

+ Zen{'’'}s Compact Mode offers a streamlined browsing experience that maximizes your screen space, perfect for smaller screens. +

+ +
+
+ + Zen Logo + + + {/* Inner Circles */} + + Zen Logo + + + Zen Logo + + + {/* Outer Circles (reverse) */} + + Zen Logo + + + Zen Logo + +
+
{/**/} -

What does Zen offer to ?

+

What does Zen offer to ?

Discover how Zen Browser can transform your web experience with powerful features that keep you ahead. Here are
some of the features that Zen offers.

-
-
-
+
+
+

Split views

Multitask effortlessly by splitting your browser into multiple views, so you can browse several sites at once.

-
+

Workspaces

Stay organized and clutter-free by creating workspaces tailored to your browsing needs. @@ -80,7 +140,7 @@ export default function Features() {

-
+

Profile switching

Seamlessly switch between work and personal profiles for a focused browsing experience. @@ -93,7 +153,7 @@ export default function Features() { alt="" />

-
+

Side web panels

Access favorite sites and services instantly, without leaving your current page. @@ -112,9 +172,9 @@ export default function Features() { borderWidth={2} borderRadius={12} color={["#A07CFE", "#FE8FB5", "#FFBE7B"]} - className="mt-52 flex relative flex-col items-start justify-start w-full bg-background p-12 rounded-lg md:shadow-xl" + className="w-full lg:w-1/2 mx-auto mt-52 flex relative flex-col items-start justify-start w-full bg-background lg:p-12 rounded-lg md:shadow-xl" > -

+
@@ -216,36 +276,65 @@ export default function Features() {
-
-
-
-

Built for

-

- Zen is engineered for speed, consistently outperforming competitors with every release, ensuring a faster browsing experience. -

+
+
+
+
+

Built for

+ +

+ Zen is engineered for speed, consistently outperforming competitors with every release, ensuring a faster browsing experience. +

+ +
- -
-
-
-

Privacy is

-

- Zen strikes the perfect balance between privacy and usability, allowing you to browse without compromising your data. -

+
+
+

Privacy is

+ +

+ Zen strikes the perfect balance between privacy and usability, allowing you to browse without compromising your data. +

+ +
- -
-
-
-

Security is

-

- Zen incorporates advanced security technologies that outshine other Firefox-based browsers, keeping you safe online. -

+
+
+

Security is

+ +

+ Zen incorporates advanced security technologies that outshine other Firefox-based browsers, keeping you safe online. +

+ +
-
+
-
+
+
+

Introducing

+ +

+ Zen{'’'}s Compact Mode offers a streamlined browsing experience that maximizes your screen space, perfect for smaller screens. +

+ +
+ +
+

Want more?

Zen Browser is packed with features designed to revolutionize your browsing. diff --git a/src/components/header.tsx b/src/components/header.tsx index 7ca7234..7c0426c 100644 --- a/src/components/header.tsx +++ b/src/components/header.tsx @@ -52,7 +52,7 @@ export default function Header() {

browser Image browser Image { + const interval = setInterval(() => { + setRandomColor(LOGO_COLORS[Math.floor(Math.random() * LOGO_COLORS.length)]); + }, 2000); + return () => clearInterval(interval); + }, []); return (
- Zen Logo - {withText && Zen} + Zen Logo + {withText && zen}
); } diff --git a/src/components/mobile-nav.tsx b/src/components/mobile-nav.tsx index a9a6560..bfa552f 100644 --- a/src/components/mobile-nav.tsx +++ b/src/components/mobile-nav.tsx @@ -18,13 +18,16 @@ export function MobileNav() { return ( - + <> + + + - + diff --git a/src/components/ui/orbiting-circles.tsx b/src/components/ui/orbiting-circles.tsx new file mode 100644 index 0000000..50af26d --- /dev/null +++ b/src/components/ui/orbiting-circles.tsx @@ -0,0 +1,57 @@ +import { ny } from '@/lib/utils' + +export default function OrbitingCircles({ + className, + children, + reverse, + duration = 20, + delay = 10, + radius = 50, + path = true, +}: { + className?: string + children?: React.ReactNode + reverse?: boolean + duration?: number + delay?: number + radius?: number + path?: boolean +}) { + return ( + <> + {path && ( + + + + )} + +
+ {children} +
+ + ) +} diff --git a/tailwind.config.ts b/tailwind.config.ts index 41bc7ec..c931e80 100644 --- a/tailwind.config.ts +++ b/tailwind.config.ts @@ -63,6 +63,14 @@ const config = { sm: 'calc(var(--radius) - 4px)', }, keyframes: { + orbit: { + "0%": { + transform: "rotate(0deg) translateY(calc(var(--radius) * 1px)) rotate(0deg)", + }, + "100%": { + transform: "rotate(360deg) translateY(calc(var(--radius) * 1px)) rotate(-360deg)", + }, + }, "shine-pulse": { "0%": { "background-position": "0% 0%", @@ -126,6 +134,7 @@ const config = { }, }, animation: { + orbit: "orbit calc(var(--duration)*1s) linear infinite", 'accordion-down': 'accordion-down 0.2s ease-out', 'accordion-up': 'accordion-up 0.2s ease-out', 'border-beam': 'border-beam calc(var(--duration)*1s) infinite linear',