feat: add animated components for enhanced UI/UX

- Introduced DrawLine component for drawing animations.
- Added LazyRevealImage component for lazy loading images with reveal animations.
- Implemented TextDiffuseReveal for animated text reveals with staggered effects.
- Created TopProgressBar for a dynamic loading indicator.
- Added PointCloud mock for testing animations.
- Developed useReducedMotion hook to handle user preferences for reduced motion.
- Centralized animation configurations in config.ts for easier management.
- Defined animation variants in variants.ts for consistent animation effects.
- Established AnimationProvider to supply global animation settings.
- Created tests for AnimationProvider and useReducedMotion hook.
- Added SVG assets for branding and UI elements.
- Documented frontend review plan and hero circuit board animation plan.
This commit is contained in:
Evandro Fonseca Junior committed 2026-03-15 21:06:43 -03:00
1 parent 0ab6930f92
commit 08dd046887
76 files changed
+21682 -1197

No files matched your search

+21 -26
View File
@@ -1,15 +1,16 @@
import type { Metadata, Viewport } from "next";
import { ReactNode } from "react";
import type { ReactNode } from "react";
import GoogleAnalytics from "./components/GoogleAnalytics";
import { RouteTransition } from "./components/RouteTransition";
import { SmoothScrollProvider } from "./providers/SmoothScrollProvider";
import { AnimationProvider } from "./providers/AnimationProvider";
import "./globals.css";
export const metadata: Metadata = {
// ... existing metadata ...
title:
"Evandro Fonseca Junior | Engenheiro de Software (Next.js, Tauri & Rust)",
description:
"Engenheiro Full-Stack especializado em aplicações de alta performance e sistemas críticos. Desenvolvimento com Next.js, React, Tauri e arquitetura escalável.",
"Engenheiro Full-Stack especializado em aplicacoes de alta performance e sistemas criticos. Desenvolvimento com Next.js, React, Tauri e arquitetura escalavel.",
keywords: [
"engenheiro full-stack",
"engenheiro de software",
@@ -18,19 +19,15 @@ export const metadata: Metadata = {
"Tauri",
"Rust",
"Python",
"Next.js specialist",
"React developer",
"Tauri developer",
"TypeScript",
"PostgreSQL",
"MySQL",
"computação em nuvem",
"cloud computing",
"IoT",
"automação",
"automacao",
"arquitetura de software",
"sistemas escaláveis",
"High Performance",
"System Architecture",
"sistemas escalaveis",
"high performance",
],
authors: [{ name: "Evandro Fonseca Junior" }],
creator: "Evandro Fonseca Junior",
@@ -48,7 +45,7 @@ export const metadata: Metadata = {
title:
"Evandro Fonseca Junior | Engenheiro de Software (Next.js, Tauri & Rust)",
description:
"Engenheiro Full-Stack especializado em aplicações de alta performance e sistemas críticos. Desenvolvimento com Next.js, React, Tauri e arquitetura escalável.",
"Engenheiro Full-Stack especializado em aplicacoes de alta performance e sistemas criticos. Desenvolvimento com Next.js, React, Tauri e arquitetura escalavel.",
url: "https://evandro.dev.br",
siteName: "Evandro Fonseca Junior",
locale: "pt_BR",
@@ -58,7 +55,7 @@ export const metadata: Metadata = {
url: "/opengraph-image",
width: 1200,
height: 630,
alt: "Evandro Fonseca Junior - Engenheiro de Software (Next.js, Tauri & Rust)",
alt: "Evandro Fonseca Junior - Engenheiro de Software",
},
],
},
@@ -67,7 +64,7 @@ export const metadata: Metadata = {
title:
"Evandro Fonseca Junior | Engenheiro de Software (Next.js, Tauri & Rust)",
description:
"Engenheiro Full-Stack especializado em aplicações de alta performance e sistemas críticos. Desenvolvimento com Next.js, React, Tauri e arquitetura escalável.",
"Engenheiro Full-Stack especializado em aplicacoes de alta performance e sistemas criticos.",
creator: "@evandrodevbr",
images: ["/opengraph-image"],
},
@@ -85,7 +82,7 @@ export const metadata: Metadata = {
};
export const viewport: Viewport = {
themeColor: "#ffffff",
themeColor: "#000000",
width: "device-width",
initialScale: 1,
maximumScale: 5,
@@ -116,20 +113,16 @@ export default function RootLayout({ children }: Readonly<RootLayoutProps>) {
"Tauri",
"Rust",
"TypeScript",
"High Performance Computing",
"System Architecture",
"Cloud Computing",
"IoT",
"Automation",
"PostgreSQL",
"MySQL",
],
worksFor: {
"@type": "Organization",
name: "Freelancer / Consultor Independente",
},
description:
"Engenheiro de software especializado em aplicações de alta performance e sistemas críticos. Desenvolvimento com Next.js 15, React 19, Tauri e arquitetura escalável. Experiência em automação, computação em nuvem e sistemas distribuídos.",
"Engenheiro de software especializado em aplicacoes de alta performance e sistemas criticos. Desenvolvimento com Next.js 15, React 19, Tauri e arquitetura escalavel.",
},
};
@@ -140,12 +133,14 @@ export default function RootLayout({ children }: Readonly<RootLayoutProps>) {
</head>
<body>
<SmoothScrollProvider>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
/>
{children}
<GoogleAnalytics />
<AnimationProvider>
<script
type="application/ld+json"
dangerouslySetInnerHTML={{ __html: JSON.stringify(jsonLd) }}
/>
<RouteTransition>{children}</RouteTransition>
<GoogleAnalytics />
</AnimationProvider>
</SmoothScrollProvider>
</body>
</html>