33 Commits

Author SHA1 Message Date
758ea9019a Merge version_4 into main
Merge version_4 into main
2026-04-21 14:47:51 +00:00
7073bcc259 Update src/app/page.tsx 2026-04-21 14:47:48 +00:00
58e63f4bae Update src/app/login/page.tsx 2026-04-21 14:47:48 +00:00
f8a0b16c93 Update src/app/creators/page.tsx 2026-04-21 14:47:47 +00:00
ca022cf1ec Add src/app/cadastrar/page.tsx 2026-04-21 14:47:47 +00:00
1ee58b555a Merge version_3 into main
Merge version_3 into main
2026-04-21 14:44:10 +00:00
7b2f07f681 Update src/app/page.tsx 2026-04-21 14:44:07 +00:00
7190c51466 Merge version_3 into main
Merge version_3 into main
2026-04-21 14:43:00 +00:00
dd07829ea0 Update src/app/page.tsx 2026-04-21 14:42:57 +00:00
5579d48543 Merge version_3 into main
Merge version_3 into main
2026-04-21 14:40:30 +00:00
b3a31d57e6 Update src/app/creators/page.tsx 2026-04-21 14:40:27 +00:00
77ec9c70d5 Merge version_3 into main
Merge version_3 into main
2026-04-21 14:36:15 +00:00
b7aedd14d8 Update src/app/creators/page.tsx 2026-04-21 14:36:12 +00:00
dd3ca8cef5 Merge version_3 into main
Merge version_3 into main
2026-04-21 14:34:35 +00:00
616d33772a Update src/app/login/page.tsx 2026-04-21 14:34:32 +00:00
08270d50bd Merge version_3 into main
Merge version_3 into main
2026-04-20 17:24:49 +00:00
16f62a0504 Update src/app/page.tsx 2026-04-20 17:24:43 +00:00
e4ad9515c1 Merge version_3 into main
Merge version_3 into main
2026-04-20 17:22:42 +00:00
b4036d84b2 Update src/app/page.tsx 2026-04-20 17:22:36 +00:00
854a161fa6 Merge version_3 into main
Merge version_3 into main
2026-04-20 17:20:08 +00:00
c2f039ff9c Update src/app/page.tsx 2026-04-20 17:20:05 +00:00
fab9a6e7a5 Merge version_3 into main
Merge version_3 into main
2026-04-20 17:18:16 +00:00
90f6fd8f59 Update src/app/page.tsx 2026-04-20 17:18:13 +00:00
ef4a89729c Merge version_2 into main
Merge version_2 into main
2026-04-20 17:13:25 +00:00
224d005687 Update src/app/page.tsx 2026-04-20 17:13:22 +00:00
b8538d1e28 Merge version_2 into main
Merge version_2 into main
2026-04-20 17:08:11 +00:00
09e39e434a Update src/app/page.tsx 2026-04-20 17:08:08 +00:00
70f4724f71 Merge version_2 into main
Merge version_2 into main
2026-04-20 16:59:29 +00:00
44f53206d1 Update src/app/page.tsx 2026-04-20 16:59:26 +00:00
dbf580f4d3 Merge version_2 into main
Merge version_2 into main
2026-04-20 16:28:23 +00:00
d3164a8ede Update src/app/styles/variables.css 2026-04-20 16:28:19 +00:00
a366fbe636 Update src/app/page.tsx 2026-04-20 16:28:19 +00:00
50c7a9bd3b Merge version_1 into main
Merge version_1 into main
2026-04-20 16:21:57 +00:00
5 changed files with 184 additions and 122 deletions

View File

@@ -0,0 +1,61 @@
"use client";
import { ThemeProvider } from "@/providers/themeProvider/ThemeProvider";
import ReactLenis from "lenis/react";
import ContactCTA from '@/components/sections/contact/ContactCTA';
import FooterSimple from '@/components/sections/footer/FooterSimple';
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
export default function CadastrarPage() {
return (
<ThemeProvider
defaultButtonVariant="expand-hover"
defaultTextAnimation="reveal-blur"
borderRadius="pill"
contentWidth="mediumSmall"
sizing="large"
background="circleGradient"
cardStyle="solid"
primaryButtonStyle="double-inset"
secondaryButtonStyle="glass"
headingFontWeight="medium"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingInline
navItems={[
{ name: "Início", id: "/" },
{ name: "Criadores", id: "/creators" },
{ name: "Login", id: "/login" },
{ name: "Comece Agora", id: "/cadastrar" }
]}
brandName="Peekly"
button={{ text: "Entrar", href: "/login" }}
/>
</div>
<div id="cadastrar-page" data-section="cadastrar-page">
<ContactCTA
useInvertedBackground={false}
background={{ variant: "sparkles-gradient" }}
tag="Registro"
title="Comece Agora"
description="Crie sua conta e aproveite o melhor conteúdo premium."
buttons={[{ text: "Criar Conta" }]}
/>
</div>
<div id="footer" data-section="footer">
<FooterSimple
columns={[
{ title: "Peekly", items: [{ label: "Sobre Nós", href: "#" }, { label: "Privacidade", href: "#" }] },
{ title: "Conta", items: [{ label: "Login", href: "/login" }, { label: "Criadores", href: "/creators" }] }
]}
bottomLeftText="© 2024 Peekly Inc."
bottomRightText="18+ Conteúdo Exclusivo"
/>
</div>
</ReactLenis>
</ThemeProvider>
);
}

View File

@@ -28,9 +28,10 @@ export default function CreatorsPage() {
{ name: "Início", id: "/" },
{ name: "Criadores", id: "/creators" },
{ name: "Login", id: "/login" },
{ name: "Comece Agora", id: "/cadastrar" }
]}
brandName="Peekly"
button={{ text: "Cadastrar", href: "/creators" }}
button={{ text: "Cadastrar", href: "/cadastrar" }}
/>
</div>
@@ -39,8 +40,8 @@ export default function CreatorsPage() {
useInvertedBackground={false}
title="Torne-se uma Criadora"
description="Monetize seu conteúdo exclusivo com a melhor plataforma premium."
buttons={[{ text: "Cadastrar" }]}
imageSrc="http://img.b2bpic.net/free-photo/portrait-happy-content-creator-using-quality-mic-record-vlog-speak-audience_482257-128137.jpg"
buttons={[{ text: "Cadastrar", href: "/cadastrar" }]}
imageSrc="https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776782413133-23exehdp.png"
imageAlt="Criadora contente criando conteúdo"
/>
</div>
@@ -51,7 +52,7 @@ export default function CreatorsPage() {
title="Por que o Peekly?"
tag="Vantagens"
metrics={[
{ id: "a1", value: "90%", description: "Comissão Garantida" },
{ id: "a1", value: "50%", description: "Comissão Garantida" },
{ id: "a2", value: "100K", description: "Alcance Global" }
]}
metricsAnimation="slide-up"

View File

@@ -28,6 +28,7 @@ export default function LoginPage() {
{ name: "Início", id: "/" },
{ name: "Criadores", id: "/creators" },
{ name: "Login", id: "/login" },
{ name: "Comece Agora", id: "/cadastrar" }
]}
brandName="Peekly"
button={{ text: "Entrar", href: "/login" }}
@@ -40,7 +41,7 @@ export default function LoginPage() {
background={{ variant: "radial-gradient" }}
tag="Login"
title="Acesse sua conta"
description="Entre para continuar acessando seu feed premium."
description="Entre para continuar acessando seu conteúdo premium."
buttons={[{ text: "Entrar" }]}
/>
</div>

View File

@@ -5,7 +5,7 @@ import ReactLenis from "lenis/react";
import ContactCTA from '@/components/sections/contact/ContactCTA';
import FaqBase from '@/components/sections/faq/FaqBase';
import FeatureCardTwentyNine from '@/components/sections/feature/featureCardTwentyNine/FeatureCardTwentyNine';
import FooterSimple from '@/components/sections/footer/FooterSimple';
import FooterLogoReveal from '@/components/sections/footer/FooterLogoReveal';
import HeroCentered from '@/components/sections/hero/HeroCentered';
import MetricCardFourteen from '@/components/sections/metrics/MetricCardFourteen';
import NavbarLayoutFloatingInline from '@/components/navbar/NavbarLayoutFloatingInline';
@@ -26,122 +26,121 @@ export default function LandingPage() {
headingFontWeight="medium"
>
<ReactLenis root>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingInline
navItems={[
{ name: "Início", id: "/" },
{ name: "Criadores", id: "/creators" },
{ name: "Login", id: "/login" },
]}
brandName="Peekly"
button={{ text: "Comece Agora", href: "/login" }}
/>
</div>
<div id="nav" data-section="nav">
<NavbarLayoutFloatingInline
navItems={[
{ name: "Início", id: "/" },
{ name: "Criadores", id: "/creators" },
{ name: "Login", id: "/login" },
{ name: "Comece Agora", id: "/cadastrar" }
]}
brandName="Peekly"
button={{ text: "Comece Agora", href: "/cadastrar" }}
/>
</div>
<div id="hero" data-section="hero">
<HeroCentered
background={{ variant: "sparkles-gradient" }}
title="Peekly: Seus Segredos Mais Quentes, Só pra Você"
description="Acesso exclusivo a conteúdos privados dos seus criadores favoritos. Experiência premium, discreta e ilimitada."
avatars={[
{ src: "http://img.b2bpic.net/free-photo/portrait-asmr-artist-uses-quality-mic-studio-anti-stress-video_482257-124195.jpg", alt: "Model 1" },
{ src: "http://img.b2bpic.net/free-photo/abstract-vaporwave-portrait-man_23-2148950760.jpg", alt: "Model 2" },
{ src: "http://img.b2bpic.net/free-photo/woman-beauty-vlogger-filming-vlog-about-creams_1303-18359.jpg", alt: "Model 3" },
{ src: "http://img.b2bpic.net/free-photo/medium-shot-smiley-woman-drawing_23-2149445987.jpg", alt: "Model 4" },
{ src: "http://img.b2bpic.net/free-photo/male-product-photographer-doing-his-job-studio_23-2148970193.jpg", alt: "Model 5" }
]}
buttons={[{ text: "Comece Agora", href: "/login" }]}
marqueeItems={[
{ type: "text", text: "Conteúdo 100% Exclusivo" },
{ type: "text", text: "Segurança e Privacidade" },
{ type: "text", text: "Acesso Premium 24/7" },
{ type: "text", text: "Pagamentos Seguros" },
{ type: "text", text: "Novos Criadores Diariamente" }
]}
/>
</div>
<div id="hero" data-section="hero">
<HeroCentered
background={{ variant: "sparkles-gradient" }}
title="Peekly: Seus Segredos Mais Quentes, Só pra Você"
description="Acesso exclusivo a conteúdos privados dos seus criadores favoritos. Experiência premium, discreta e ilimitada."
avatars={[
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704218776-kimw8oqx.jpg", alt: "Model 1" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704223662-nqawvuie.jpg", alt: "Model 2" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704229595-v87x7of0.jpg", alt: "Model 3" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704234042-ls0dpuqt.jpg", alt: "Model 4" },
{ src: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704239125-o2dafxhn.jpg", alt: "Model 5" }
]}
buttons={[{ text: "Comece Agora", href: "/cadastrar" }]}
marqueeItems={[
{ type: "text", text: "Conteúdo 100% Exclusivo" },
{ type: "text", text: "Segurança e Privacidade" },
{ type: "text", text: "Acesso Premium 24/7" },
{ type: "text", text: "Pagamentos Seguros" },
{ type: "text", text: "Novos Criadores Diariamente" }
]}
/>
</div>
<div id="creators-grid" data-section="creators-grid">
<FeatureCardTwentyNine
animationType="slide-up"
textboxLayout="default"
gridVariant="four-items-2x2-equal-grid"
useInvertedBackground={false}
features={[
{ title: "AnaSilva 🔥", description: "150+ fotos exclusivas", imageSrc: "http://img.b2bpic.net/free-photo/young-pretty-woman-portrait-indoor_624325-3757.jpg", titleImageSrc: "http://img.b2bpic.net/free-photo/male-product-photographer-doing-his-job-studio_23-2148970192.jpg", buttonText: "Ver Perfil" },
{ title: "BellaNoir 💋", description: "Videos em alta definição", imageSrc: "http://img.b2bpic.net/free-photo/medium-shot-young-man-posing-spotlight_23-2151916024.jpg", titleImageSrc: "http://img.b2bpic.net/free-photo/black-model-posing_23-2148171696.jpg", buttonText: "Ver Perfil" },
{ title: "JadeLux 😈", description: "Bastidores e chat privado", imageSrc: "http://img.b2bpic.net/free-photo/portrait-attractive-woman-black-sweater-standing-posing_114579-58748.jpg", titleImageSrc: "http://img.b2bpic.net/free-photo/beautiful-portrait-teenager-woman_23-2149453488.jpg", buttonText: "Ver Perfil" },
{ title: "LunaDark 🖤", description: "Conteúdo 18+ semanal", imageSrc: "http://img.b2bpic.net/free-photo/looking-down-girl-crossing-arms-by-sitting-white-background_176474-117369.jpg", titleImageSrc: "http://img.b2bpic.net/free-photo/luxury-blond-female-white-dress-posing-studio_613910-10972.jpg", buttonText: "Ver Perfil" }
]}
title="Criadores em Destaque"
description="Conteúdo premium desbloqueado para assinantes."
/>
</div>
<div id="creators-grid" data-section="creators-grid">
<FeatureCardTwentyNine
animationType="slide-up"
textboxLayout="default"
gridVariant="four-items-2x2-equal-grid"
useInvertedBackground={false}
features={[
{ title: "Cláudia costa🔥", description: "150+ fotos exclusivas", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776782638660-lxv89fnl.png", titleImageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704881937-f0y2ih6b.png", buttonText: "Ver Perfil" },
{ title: "Micaela whitney 💋", description: "Videos em alta definição", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704693890-8g14xjb1.jpg", titleImageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776704844124-ksusk20c.png", buttonText: "Ver Perfil" },
{ title: "R.rayanne 😈", description: "Bastidores e chat privado", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776705042040-34il1tv7.png", titleImageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776705078160-dox8ivh6.png", buttonText: "Ver Perfil" },
{ title: "Barbie negra 🖤", description: "Conteúdo 18+ semanal", imageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776705174163-103b0ghy.png", titleImageSrc: "https://webuild-dev.s3.eu-north-1.amazonaws.com/users/user_3Cd4Fi4A0j0DojPG2mh24P9kNoO/uploaded-1776705179427-gvq9kkpz.png", buttonText: "Ver Perfil" }
]}
title="Criadores em Destaque"
description="Conteúdo premium desbloqueado para assinantes."
/>
</div>
<div id="pricing" data-section="pricing">
<PricingCardTwo
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "basic", badge: "Popular", price: "R$ 29,90", subtitle: "Mensal - Acesso Total", buttons: [{ text: "Assinar" }], features: ["Acesso ilimitado", "Conteúdo privado", "Chat direto"] },
{ id: "ppv", badge: "Avulso", price: "R$ 9,99", subtitle: "Conteúdo por vídeo", buttons: [{ text: "Comprar" }], features: ["Sem mensalidade", "Conteúdo único", "Pago por item"] }
]}
title="Escolha seu Plano"
description="Assinatura mensal para acesso completo ou PPV."
/>
</div>
<div id="pricing" data-section="pricing">
<PricingCardTwo
animationType="slide-up"
textboxLayout="default"
useInvertedBackground={false}
plans={[
{ id: "basic", badge: "Básico ", price: "20.000Kz ", subtitle: "Acesso básico essencial", buttons: [{ text: "Assinar" }], features: ["Feed básico", "Conteúdo público", "Sem anúncios"] },
{ id: "premium", badge: "Premium ", price: "45.000Kz", subtitle: "Acesso mensal premium", buttons: [{ text: "Assinar" }], features: ["Conteúdo completo", "Chat privado", "Acesso a vídeos"] },
{ id: "vip", badge: "VIP", price: "88.000Kz ", subtitle: "Experiência exclusiva total", buttons: [{ text: "Assinar" }], features: ["Tudo do Premium", "Vídeos personalizados", "Prioridade no chat"] }
]}
title="Escolha seu Plano"
description="Assinaturas flexíveis para todos os níveis de acesso."
/>
</div>
<div id="metrics" data-section="metrics">
<MetricCardFourteen
useInvertedBackground={false}
title="Nossos Números"
tag="Comunidade"
metrics={[
{ id: "m1", value: "500+", description: "Criadores Ativos" },
{ id: "m2", value: "1M+", description: "Fotos e Vídeos" },
{ id: "m3", value: "24/7", description: "Segurança Total" }
]}
metricsAnimation="slide-up"
/>
</div>
<div id="metrics" data-section="metrics">
<MetricCardFourteen
useInvertedBackground={false}
title="Nossos Números"
tag="Comunidade"
metrics={[
{ id: "m1", value: "500+", description: "Criadores Ativos" },
{ id: "m2", value: "1M+", description: "Fotos e Vídeos" },
{ id: "m3", value: "24/7", description: "Segurança Total" }
]}
metricsAnimation="slide-up"
/>
</div>
<div id="faq" data-section="faq">
<FaqBase
textboxLayout="default"
useInvertedBackground={false}
faqs={[
{ id: "q1", title: "É seguro?", content: "Sim, usamos criptografia de ponta." },
{ id: "q2", title: "Como assinar?", content: "Via Stripe com cartão de crédito." },
{ id: "q3", title: "Cancelamento?", content: "Cancele a qualquer momento no perfil." }
]}
title="Perguntas Frequentes"
description="Tudo sobre sua assinatura premium."
faqsAnimation="slide-up"
/>
</div>
<div id="faq" data-section="faq">
<FaqBase
textboxLayout="default"
useInvertedBackground={false}
faqs={[
{ id: "q1", title: "É seguro?", content: "Sim, usamos criptografia de ponta." },
{ id: "q2", title: "Como assinar?", content: "Via Stripe com cartão de crédito." },
{ id: "q3", title: "Cancelamento?", content: "Cancele a qualquer momento no perfil." }
]}
title="Perguntas Frequentes"
description="Tudo sobre sua assinatura premium."
faqsAnimation="slide-up"
/>
</div>
<div id="support" data-section="support">
<ContactCTA
useInvertedBackground={false}
background={{ variant: "radial-gradient" }}
tag="Suporte"
title="Precisa de ajuda?"
description="Nossa equipe está disponível 24/7 para suporte aos usuários e criadores."
buttons={[{ text: "Entrar em Contato", href: "#" }]}
/>
</div>
<div id="support" data-section="support">
<ContactCTA
useInvertedBackground={false}
background={{ variant: "radial-gradient" }}
tag="Suporte"
title="Precisa de ajuda?"
description="Nossa equipe está disponível 24/7 para suporte aos usuários e criadores."
buttons={[{ text: "Entrar em Contato", href: "#" }]}
/>
</div>
<div id="footer" data-section="footer">
<FooterSimple
columns={[
{ title: "Peekly", items: [{ label: "Sobre Nós", href: "#" }, { label: "Privacidade", href: "#" }] },
{ title: "Conta", items: [{ label: "Login", href: "/login" }, { label: "Criadores", href: "/creators" }] }
]}
bottomLeftText="© 2024 Peekly Inc."
bottomRightText="18+ Conteúdo Exclusivo"
/>
</div>
<div id="footer" data-section="footer">
<FooterLogoReveal
logoText="Peekly"
leftLink={{ text: "Privacidade & Termos", href: "#" }}
rightLink={{ text: "© 2024 Peekly Inc. 18+", href: "#" }}
/>
</div>
</ReactLenis>
</ThemeProvider>
);

View File

@@ -10,15 +10,15 @@
--accent: #ffffff;
--background-accent: #ffffff; */
--background: #000000;
--card: #1a0b2e;
--foreground: #ffffff;
--primary-cta: #BA68C8;
--background: #0a0a0a;
--card: #1a0d2e;
--foreground: #f8f5ff;
--primary-cta: #8b5cf6;
--primary-cta-text: #ffffff;
--secondary-cta: #6A1B9A;
--secondary-cta: #6d28d9;
--secondary-cta-text: #ffffff;
--accent: #CE93D8;
--background-accent: #2a0d45;
--accent: #c084fc;
--background-accent: #2e1065;
/* text sizing - set by ThemeProvider */
/* --text-2xs: clamp(0.465rem, 0.62vw, 0.62rem);