From 6ec67c8f5a722319ceab22a4493de4fdccb8d843 Mon Sep 17 00:00:00 2001 From: Evandro Fonseca Junior Date: Sat, 11 Oct 2025 18:25:41 -0300 Subject: [PATCH] feat(about): add story sections and core values to About component Enhance the About page with new story sections detailing personal journey and core values, including icons and structured content for better user engagement and self-presentation. --- app/components/About.tsx | 320 +++++++++++++++++++------- app/components/Contact.tsx | 10 +- app/components/ContactForm.tsx | 274 +++++++++++++++++------ app/components/Experience.tsx | 338 ++++++++++++++++++++++------ app/components/Hero.tsx | 64 ++++-- app/components/Projects.tsx | 311 ++++++++++++++++++++------ app/components/Skills.tsx | 10 +- app/components/WorkModalities.tsx | 359 +++++++++++++++++++++++++----- linkedin.md | 58 ++--- pnpm-workspace.yaml | 3 + public/portfolio-data.json | 257 ++++++++++++++++----- 11 files changed, 1540 insertions(+), 464 deletions(-) create mode 100644 pnpm-workspace.yaml diff --git a/app/components/About.tsx b/app/components/About.tsx index 9d72a01..d1ed834 100644 --- a/app/components/About.tsx +++ b/app/components/About.tsx @@ -3,108 +3,258 @@ import { motion } from "motion/react"; import { MagicCard } from "@/components/magicui/magic-card"; import { TextReveal } from "@/components/magicui/text-reveal"; +import { + Brain, + Zap, + Target, + Rocket, + Users, + Lightbulb, + Code, + Shield, +} from "lucide-react"; export default function About() { + const storySections = [ + { + icon: Brain, + title: "A Curiosidade que Me Define", + content: + "Sempre fui fascinado por problemas que outros consideravam 'complicados demais'. Essa curiosidade me levou ao desenvolvimento web, onde descobri meu superpoder: transformar complexidade em clareza, caos em sistemas elegantes.", + color: "from-blue-500 to-purple-600", + bgColor: "bg-blue-500/10", + iconColor: "text-blue-400", + }, + { + icon: Zap, + title: "Três Anos de Transformação", + content: + "Nos últimos três anos, enfrentei dezenas de desafios técnicos que pareciam impossíveis no início: arquiteturas que precisavam escalar, integrações que ninguém conseguia fazer funcionar, prazos que pareciam irreais. Cada batalha me transformou. Cada projeto me tornou mais forte.", + color: "from-purple-500 to-pink-600", + bgColor: "bg-purple-500/10", + iconColor: "text-purple-400", + }, + { + icon: Target, + title: "Fundamentação + Experiência", + content: + "Hoje, como estudante de Engenharia da Computação, combino fundamentação acadêmica rigorosa com experiência real de mercado. Domino o arsenal completo do desenvolvimento full-stack moderno — computação em nuvem, IA, arquiteturas escaláveis — mas minha verdadeira expertise está em escolher a ferramenta certa para cada missão.", + color: "from-pink-500 to-red-600", + bgColor: "bg-pink-500/10", + iconColor: "text-pink-400", + }, + { + icon: Rocket, + title: "Soluções que Fazem Diferença", + content: + "Não entrego apenas código; entrego soluções que fazem diferença mensurável. Procuro meu próximo grande desafio: um time onde colaboração, ética e inovação não sejam buzzwords, mas valores praticados diariamente.", + color: "from-red-500 to-orange-600", + bgColor: "bg-red-500/10", + iconColor: "text-red-400", + }, + { + icon: Lightbulb, + title: "Construindo Legados", + content: + "Onde minha dedicação à excelência técnica e aprendizado constante possam gerar impacto real. Porque tecnologia sem propósito é apenas sintaxe — e eu construo legados.", + color: "from-orange-500 to-yellow-600", + bgColor: "bg-orange-500/10", + iconColor: "text-orange-400", + }, + ]; + + const coreValues = [ + { + icon: Code, + title: "Excelência Técnica", + description: "Código limpo, arquiteturas escaláveis e soluções elegantes", + }, + { + icon: Brain, + title: "Aprendizado Constante", + description: "Sempre evoluindo, sempre buscando o próximo desafio", + }, + { + icon: Users, + title: "Colaboração Genuína", + description: "Trabalho em equipe baseado em respeito e propósito comum", + }, + { + icon: Shield, + title: "Ética Profissional", + description: "Valores sólidos que guiam cada decisão técnica", + }, + ]; + return ( -
-
+
+
+ {/* Header */} -

Sobre Mim

+
+
+ + Minha Jornada + +
+

+ Sobre Mim +

+

+ Uma jornada de transformação através da tecnologia, onde cada + desafio se tornou uma oportunidade de crescimento e inovação +

-
- {/* Main Description */} - -
- - Desenvolvedor Full-Stack com 3+ anos de experiência, - especializado em soluções web modernas e inovadoras. Cursando - Engenharia da Computação, com conhecimentos em computação em - nuvem e inteligência artificial. Busco constantemente novos - desafios onde possa aplicar minha paixão por tecnologia e - resolver problemas de forma criativa. - + {/* Story Timeline */} +
+ {storySections.map((section, index) => { + const IconComponent = section.icon; + const isEven = index % 2 === 0; - - Meu objetivo é entregar soluções de alta qualidade, sempre - priorizando colaboração, ética e inovação. Acredito no poder da - tecnologia para fazer a diferença e estou comprometido com o - aprendizado contínuo e a excelência técnica. - -
- - - {/* Soft Skills */} - -

- Soft Skills -

- -
- {[ - { skill: "Comunicação", level: 90 }, - { skill: "Trabalho em Equipe", level: 85 }, - // { skill: "Resolução de Problemas", level: 95 }, - { skill: "Aprendizado Contínuo", level: 90 }, - { skill: "Adaptabilidade", level: 85 }, - ].map((item) => ( -
-
- {item.skill} - {item.level}% -
-
+ return ( + + {/* Content */} +
+
+ className={`absolute inset-0 bg-gradient-to-r ${section.color} opacity-10 rounded-2xl blur-xl`} + >
+
+
+
+ +
+

+ {section.title} +

+
+

+ {section.content} +

+
- ))} -
-
-

- Destaques -

-
    -
  • -
    - 3+ anos de experiência -
  • -
  • -
    - Engenheiro da Computação -
  • -
  • -
    - Conhecimento em Cloud e IA -
  • -
  • -
    - Ampla gama de conhecimentos -
  • -
-
- + {/* Timeline Indicator */} +
+
+ + {index + 1} + +
+ {index < storySections.length - 1 && ( +
+ )} +
+ + {/* Spacer */} +
+ + ); + })}
+ + {/* Core Values */} + +
+

+ Meus Valores Fundamentais +

+

+ Os princípios que guiam cada decisão e projeto +

+
+ +
+ {coreValues.map((value, index) => { + const IconComponent = value.icon; + return ( + +
+
+ +
+

+ {value.title} +

+

+ {value.description} +

+
+
+ ); + })} +
+
+ + {/* Call to Action */} + +
+
+
+

+ Pronto para o Próximo Grande Desafio +

+

+ Busco uma equipe onde posso aplicar toda essa experiência e + paixão para criar soluções que realmente importam +

+
+ + 🚀 Inovação Contínua + + + 🤝 Colaboração Genuína + + + ⚡ Excelência Técnica + + + 🎯 Impacto Real + +
+
+
+
); diff --git a/app/components/Contact.tsx b/app/components/Contact.tsx index 5a6bd20..b86eb8e 100644 --- a/app/components/Contact.tsx +++ b/app/components/Contact.tsx @@ -43,7 +43,13 @@ export default function Contact() { viewport={{ once: true }} className="text-center mb-16" > -

+
+
+ + Vamos Conversar + +
+

Vamos Conversar

@@ -72,7 +78,7 @@ export default function Contact() {