From 21befa5cd581548098128bf71a2acbac5a553ad6 Mon Sep 17 00:00:00 2001 From: Juan Date: Wed, 10 Jun 2026 22:27:20 -0300 Subject: [PATCH 1/2] Responsividade na login/register page --- frontend/src/pages/login/index.jsx | 23 +++++++++++------------ frontend/src/pages/register/index.jsx | 21 ++++++++++++--------- 2 files changed, 23 insertions(+), 21 deletions(-) diff --git a/frontend/src/pages/login/index.jsx b/frontend/src/pages/login/index.jsx index af1c222..44db9c0 100644 --- a/frontend/src/pages/login/index.jsx +++ b/frontend/src/pages/login/index.jsx @@ -2,29 +2,28 @@ import { Link } from "react-router-dom"; export default function Login() { return ( - // celular: flex-col (empilhado) e permite rolar se a tela for muito pequena. - // PC: flex-row (lado a lado), trava a altura e tira a rolagem.
- {/* imagem -> celular: largura total e altura fixa (250px). PC: 50% da largura e altura total */} -
+ + {/* Imagem (Some no celular, aparece no PC) */} +
GTA VI -
- +
- {/* formulário -> celular: ocupa o resto do espaço. PC: 60% da largura */} -
+ {/* Formulário */} +
-

+ {/* text-4xl no celular, text-6xl no PC. Margem menor no mobile */} +

GAMERBOXD

-

Log In

-

+

Log In

+

Não possui uma conta?{" "} Cadastre-se aqui @@ -69,4 +68,4 @@ export default function Login() {

); -} +} \ No newline at end of file diff --git a/frontend/src/pages/register/index.jsx b/frontend/src/pages/register/index.jsx index 80d7f4e..0e554d1 100644 --- a/frontend/src/pages/register/index.jsx +++ b/frontend/src/pages/register/index.jsx @@ -3,26 +3,29 @@ import { Link } from "react-router-dom"; export default function Register() { return (
- {/* lado esquerdo (imagem) */} -
+ + {/* imagem -> sem no mobile, visível no desktop */} +
Elden Ring -
+ {/* sombra com w-full */} +
- {/* lado lireito (formulario))*/} -
+ {/* formulario -> Ocupa 100% no mobile e 50% no desktop */} +
-

+ {/* Título e margem reduzidos no celular */} +

GAMERBOXD

-

Criar Conta

+

Criar Conta

- Já possui uma conta? {/* link aponta para o login */} + Já possui uma conta? {/* link para o login */} Faça login aqui @@ -79,4 +82,4 @@ export default function Register() {

); -} +} \ No newline at end of file From 30bc7392893eef0ad83975a4a5574ed6a1b07350 Mon Sep 17 00:00:00 2001 From: Juan Date: Thu, 11 Jun 2026 15:25:59 -0300 Subject: [PATCH 2/2] Responsividade da home page --- frontend/src/pages/home/About.jsx | 2 +- frontend/src/pages/home/Features.jsx | 88 ++++++++++++---------------- frontend/src/pages/home/Hero.jsx | 39 +++++++----- frontend/src/pages/home/Social.jsx | 29 +++++---- frontend/src/pages/home/index.jsx | 13 ++-- 5 files changed, 86 insertions(+), 85 deletions(-) diff --git a/frontend/src/pages/home/About.jsx b/frontend/src/pages/home/About.jsx index 2479452..8a14e7f 100644 --- a/frontend/src/pages/home/About.jsx +++ b/frontend/src/pages/home/About.jsx @@ -32,7 +32,7 @@ const steps = [ export default function About() { return ( -
+

Como funciona?

Apenas 3 passos para começar

diff --git a/frontend/src/pages/home/Features.jsx b/frontend/src/pages/home/Features.jsx index a6522b2..63dd63a 100644 --- a/frontend/src/pages/home/Features.jsx +++ b/frontend/src/pages/home/Features.jsx @@ -24,11 +24,10 @@ export default function Features() { /> Funcionalidades @@ -42,7 +41,7 @@ export default function Features() { - {/* Preview: grid de capas de jogos */} -
+
{[gowImg, gtaImg, gowImg, gtaImg].map((img, i) => (
))} - +143 + +143
), @@ -97,10 +94,9 @@ function SideTabs() { description="Dê uma nota para seus jogos e veja como sua coleção se compara." badge="Avaliação" > - {/* Preview: cards com score */} -
+
{cards.map((card) => ( -
+
))} @@ -115,8 +111,7 @@ function SideTabs() { description="Descreva como foi sua experiência com os jogos que você jogou." badge="Reviews" > - {/* Preview: review card mockup */} -
+
V
Você @@ -140,8 +135,7 @@ function SideTabs() { description="Mostre quais desafios você superou e os jogos que conseguiu completar 100%." badge="Conquistas" > - {/* Preview: barra de progresso */} -
+
{[ { name: "God of War", pct: 100 }, { name: "GTA V", pct: 78 }, @@ -171,10 +165,9 @@ function SideTabs() { description="Destaque aqueles jogos inesquecíveis que moram no seu coração." badge="Top picks" > - {/* Preview: grid de favoritos com coração */} -
+
{[gowImg, gtaImg, gowImg].map((img, i) => ( -
+
❤️ @@ -191,14 +184,13 @@ function SideTabs() { description="Registre sua jornada diária, conquistas e os momentos mais épicos das suas gameplays." badge="Registro" > - {/* Preview: entradas do diário */} -
+
{[ { date: "Hoje", text: "Finalmente derrotei o Kratos no modo difícil 🔥" }, { date: "Ontem", text: "Comecei o NG+ de Elden Ring..." }, ].map(({ date, text }) => (
- {date} + {date} {text}
))} @@ -213,14 +205,13 @@ function SideTabs() { description="Crie listas personalizadas para organizar seu backlog, franquias ou recomendações." badge="Curadoria" > - {/* Preview: listas */} -
+
{[ { name: "🎯 Backlog 2025", count: 12 }, { name: "🏆 Melhores de todos os tempos", count: 8 }, { name: "👫 Para jogar com amigos", count: 5 }, ].map(({ name, count }) => ( -
+
{name} {count} jogos
@@ -231,39 +222,38 @@ function SideTabs() { }; return ( -
+
- {/* Coluna de tabs */} -
+ {/* Menu Lateral/Topo */} +
{tabs.map((tab) => ( ))}
- {/* Painel de conteúdo */} -
+ {/* Painel de conteúdo -> Diminuí o min-h para 360px no mobile para não sobrar tanto espaço preto */} +
- {/* Badge */} - + {badge} - {/* Ícone + título */}
-
- +
+
-

{title}

+

{title}

- {/* Descrição */} -

{description}

+

{description}

- {/* Slot para preview contextual */} - {children} + {/* C celular o conteúdo fica embaixo do texto, no desktop vai pra baixo) */} +
+ {children} +
); } @@ -326,4 +314,4 @@ const cards = [ complete: false, id: 2, }, -]; \ No newline at end of file +] \ No newline at end of file diff --git a/frontend/src/pages/home/Hero.jsx b/frontend/src/pages/home/Hero.jsx index 7d63e33..c7f34e8 100644 --- a/frontend/src/pages/home/Hero.jsx +++ b/frontend/src/pages/home/Hero.jsx @@ -1,11 +1,8 @@ import HeroBg from "../../assets/imgs/hornet_landscape.jpg" import { ParallaxBanner } from "react-scroll-parallax"; import { Link } from "react-router-dom"; -import About from "./About"; -import Register from "../register/index.jsx" export default function HeroParallax() { - const background = { image: HeroBg, translateY: [0, 50], @@ -31,34 +28,46 @@ export default function HeroParallax() { opacity: [0, 0.9], shouldAlwaysCompleteAnimation: true, expanded: false, + // Gradiente agora vai para "from-cinza" em vez de "from-gray-900" children: ( -
+
), }; return ( - + <> + {/* mobile sem imagem */} +
+ + +
+ + {/* desktop com imagem */} +
+ +
+ ); } function MainTitle() { return ( -
-

Avalie os jogos que você jogou

-

COMPARTILHE OS QUE VALEM O 100%

-

A sua rede social para acompanhar e avaliar os seus jogos favoritos

+
+

Avalie os jogos que você jogou

+

COMPARTILHE OS QUE VALEM O 100%

+

A sua rede social para acompanhar e avaliar os seus jogos favoritos

) } function CAT() { - const animatedButton = "relative overflow-hidden bg-roxo px-8 py-4 rounded-4xl text-white font-semibold mt-10 lg:mt-40 after:content-[''] after:absolute after:top-0 after:left-0 after:h-full after:w-0 after:bg-white after:transition-all after:duration-300 hover:after:w-full cursor-pointer transition-colors duration-300 hover:text-black"; + const animatedButton = "relative overflow-hidden bg-roxo px-6 md:px-8 py-3 md:py-4 rounded-4xl text-white font-semibold text-sm md:text-base mt-10 lg:mt-40 after:content-[''] after:absolute after:top-0 after:left-0 after:h-full after:w-0 after:bg-white after:transition-all after:duration-300 hover:after:w-full cursor-pointer transition-colors duration-300 hover:text-black"; - const animatedLink = "relative text-white mt-4 after:content-[''] after:absolute after:left-0 after:-bottom-1 after:h-[2px] after:w-0 after:bg-white after:transition-all after:duration-300 hover:after:w-full hover:text-gray-300 transition-colors cursor-pointer"; + const animatedLink = "relative text-white mt-6 after:content-[''] after:absolute after:left-0 after:-bottom-1 after:h-[2px] after:w-0 after:bg-white after:transition-all after:duration-300 hover:after:w-full hover:text-gray-300 transition-colors cursor-pointer"; return (
diff --git a/frontend/src/pages/home/Social.jsx b/frontend/src/pages/home/Social.jsx index 04a4f2e..a193c66 100644 --- a/frontend/src/pages/home/Social.jsx +++ b/frontend/src/pages/home/Social.jsx @@ -64,7 +64,7 @@ export default function Social() { {/* Header */} setStatsVisible(true)} onViewportLeave={() => setStatsVisible(false)} > @@ -98,7 +97,7 @@ export default function Social() { value={statsVisible ? stat.value : 0} suffix={stat.suffix} trend={1} - spinTiming ={{duration: 2000, easing: 'ease-out'}} + spinTiming={{ duration: 2000, easing: 'ease-out' }} /> {stat.label} @@ -123,7 +122,7 @@ export default function Social() { {/* CTA final */} Crie agora sua conta e junte-se à maior rede social exclusiva para gamers do Brasil.

- + Criar conta grátis

@@ -165,12 +164,12 @@ function ReviewCard({ review }) { {/* Ícones de status */}

-
+
{review.liked && ( - + )} {review.complete && ( - + )}
@@ -182,8 +181,8 @@ function ReviewCard({ review }) { {/* Footer */}
-
- +
+ {review.likes}
{review.timeAgo} @@ -194,9 +193,15 @@ function ReviewCard({ review }) { function GameScore({ score }) { return ( -
+
+ {/* tamanho travado em w-4 h-4 (celular) e w-5 h-5 (desktop) */} {Array.from({ length: 5 }).map((_, i) => ( - + Nota ))}
); diff --git a/frontend/src/pages/home/index.jsx b/frontend/src/pages/home/index.jsx index 3120e7c..524e6d2 100644 --- a/frontend/src/pages/home/index.jsx +++ b/frontend/src/pages/home/index.jsx @@ -5,17 +5,19 @@ import About from "./About"; import Features from "./Features"; import Social from "./Social"; - export default function Home() { return ( -
+ // tirar linhas brancas entre containers +
-
+ +
+
@@ -24,7 +26,4 @@ export default function Home() {
) -} - - - +} \ No newline at end of file