-
+
+
+
+
-
- {category.category}
-
+
+ ID_0{index}
+
- {/* Skills List */}
-
- {category.skills.map((skill, skillIndex) => (
-
+ {category.category}
+
+
+
+ {category.skills.map((skill, sIdx) => (
+
-
- {skill}
-
+ {skill}
+
))}
-
+
);
})}
@@ -139,3 +113,21 @@ export default function Skills() {
);
}
+
+// --- Componentes de Suporte (Clean Code) ---
+function LoadingState() {
+ return (
+
+
+
Initializing Systems...
+
+ );
+}
+
+function ErrorState() {
+ return (
+
+ [FATAL_ERROR]: Failed to synchronize portfolio data.
+
+ );
+}
\ No newline at end of file
diff --git a/app/components/WorkModalities.tsx b/app/components/WorkModalities.tsx
index a36b607..0e31a54 100644
--- a/app/components/WorkModalities.tsx
+++ b/app/components/WorkModalities.tsx
@@ -1,369 +1,158 @@
-"use client";
+"use client"; // <--- DIRETIVA OBRIGATÓRIA NA PRIMEIRA LINHA
+import React from "react";
import { motion } from "motion/react";
-import {
- Briefcase,
- Clock,
- DollarSign,
- HardHat,
- Lightbulb,
- Building2,
- Users,
- User,
- Star,
+import {
+ Briefcase, Clock, HardHat, Lightbulb,
+ Building2, Users, User, Star, CheckCircle2
} from "lucide-react";
+// --- 1. DATA (Definido aqui para evitar erros de serialização) ---
const WorkModalitiesData = [
{
title: "Consultoria por Hora",
value: "R$ 35 - 70/hora",
badge: "RECOMENDADO",
- idealFor:
- "Empresas que buscam flexibilidade máxima, startups testando soluções ou projetos que exigem expertise especializada sem compromissos longos.",
- description:
- "Transparência total: você paga apenas pelas horas efetivamente trabalhadas. Sem surpresas, com estimativas claras antes de iniciar. Ideal para testar soluções, resolver problemas específicos ou ter acesso a expertise sênior sem o custo de consultorias tradicionais (R$ 100-200/h).",
- benefits: [
- "✓ Transparência total - pague apenas pelo que usar",
- "✓ Sem surpresas - estimativas claras antes de iniciar",
- "✓ Flexibilidade - ajuste conforme sua necessidade evolui",
- "✓ Melhor custo-benefício - 50% menos que consultorias tradicionais",
- "✓ Experiência comprovada - 3+ anos + Eng. Computação",
- ],
+ idealFor: "Empresas que buscam flexibilidade máxima e expertise especializada.",
+ description: "Transparência total: você paga apenas pelas horas trabalhadas. Ideal para resolver problemas específicos com expertise sênior.",
+ benefits: ["Transparência total", "Estimativas claras", "Flexibilidade total", "Custo-benefício otimizado", "Engenharia de Software Sênior"],
icon: Lightbulb,
color: "blue",
featured: true,
},
{
title: "Pacotes de Horas",
- value: "Descontos até 21%",
- idealFor:
- "Clientes que já testaram o serviço e querem economizar com comprometimento antecipado, garantindo disponibilidade e preços favoráveis.",
- description:
- "Invista antecipadamente e economize significativamente: 10h (R$ 65/h), 20h (R$ 60/h) ou 40h+ (R$ 55/h). Garanta prioridade na agenda e preços fixos por 6 meses, mesmo se o mercado subir.",
- benefits: [
- "✓ 10 horas: R$ 65/h (economia de 7%)",
- "✓ 20 horas: R$ 60/h (economia de 14%)",
- "✓ 40+ horas: R$ 55/h (economia de 21%)",
- "✓ Preço fixo por 6 meses",
- "✓ Prioridade na agenda",
- ],
+ value: "Até 21% de Desconto",
+ idealFor: "Clientes que buscam economia com comprometimento antecipado e prioridade na agenda.",
+ description: "Invista antecipadamente e garanta preços fixos por 6 meses. Ideal para projetos recorrentes.",
+ benefits: ["10h: R$ 65/h (7% off)", "20h: R$ 60/h (14% off)", "40h+: R$ 55/h (21% off)", "Prioridade na agenda"],
icon: Briefcase,
color: "green",
},
{
title: "Retainer Mensal",
value: "A partir de R$ 2.800/mês",
- idealFor:
- "Negócios que valorizam estabilidade, crescimento planejado e acesso prioritário a um especialista dedicado para impulsionar sua inovação contínua.",
- description:
- "Parceria estratégica com acesso prioritário e horas incluídas. Ideal para empresas que precisam de suporte contínuo, manutenção preventiva e consultoria estratégica regular. Transforme sua empresa em parceiro VIP.",
- benefits: [
- "✓ Acesso prioritário e exclusivo",
- "✓ Horas incluídas mensalmente",
- "✓ Suporte preventivo e consultoria estratégica",
- "✓ Relacionamento de longo prazo",
- "✓ Previsibilidade financeira",
- ],
+ idealFor: "Negócios que valorizam estabilidade e acesso prioritário a um especialista dedicado.",
+ description: "Parceria estratégica com suporte contínuo e manutenção preventiva. Transforme sua empresa em parceiro VIP.",
+ benefits: ["Acesso prioritário exclusivo", "Horas mensais inclusas", "Suporte preventivo", "Previsibilidade financeira"],
icon: Clock,
color: "purple",
},
{
title: "Desenvolvimento Sob Demanda",
- value: "Estimativa em horas",
- idealFor:
- "Empreendedores e empresas com projetos específicos que precisam de estimativas transparentes e controle total sobre investimento e escopo.",
- description:
- "Projetos customizados com estimativas claras baseadas em horas. Da concepção à entrega, seu projeto ganha vida com transparência total. Pague apenas pelo desenvolvimento necessário, sem valores fixos surpresas.",
- benefits: [
- "✓ Estimativas transparentes em horas",
- "✓ Controle total sobre investimento",
- "✓ Sem valores fixos surpresas",
- "✓ Escopo ajustável conforme evolução",
- "✓ Foco em performance e escalabilidade",
- ],
+ value: "Estimativa em Horas",
+ idealFor: "Projetos específicos que precisam de controle total sobre investimento e escopo.",
+ description: "Projetos customizados com estimativas claras. Pague apenas pelo desenvolvimento necessário.",
+ benefits: ["Escopo ajustável", "Controle total de investimento", "Foco em performance", "Sem surpresas no valor"],
icon: HardHat,
color: "orange",
},
];
+// --- 2. DESIGN TOKENS ---
+const COLOR_VARIANTS: Record
= {
+ blue: "border-blue-500/30 bg-blue-500/5 text-blue-400 hover:border-blue-500/60 shadow-blue-500/5",
+ green: "border-green-500/30 bg-green-500/5 text-green-400 hover:border-green-500/60 shadow-green-500/5",
+ purple: "border-purple-500/30 bg-purple-500/5 text-purple-400 hover:border-purple-500/60 shadow-purple-500/5",
+ orange: "border-orange-500/30 bg-orange-500/5 text-orange-400 hover:border-orange-500/60 shadow-orange-500/5",
+};
+
export function WorkModalities() {
return (
-
-
-
-
-
- Flexibilidade Total
-
-
-
- Minhas Modalidades de Trabalho
-
-
- Escolha a opção que melhor se encaixa nas suas necessidades.
-
-
-
- {/* Seção de Comparação de Mercado Refinada */}
-
- {/* Background Pattern */}
-
-
- {/* Header */}
-
-
-
-
- Análise de Mercado 2025
-
-
-
- Compare com o Mercado
-
-
- Veja como nossa proposta se destaca da concorrência
-
-
-
- {/* Comparison Grid */}
-
- {/* Agências Tradicionais */}
-
-
-
-
-
-
-
- Agências Tradicionais
-
-
Projetos fechados
-
-
-
-
R$ 15k - 50k
-
-
• Escopo fixo
-
• Sem flexibilidade
-
• Equipe grande
-
• Processo lento
-
-
-
-
- {/* Consultorias Corporativas */}
-
-
-
-
-
-
-
- Consultorias Corporativas
-
-
Por hora
-
-
-
-
- R$ 150 - 300/h
-
-
-
• Apenas consultoria
-
• Sem desenvolvimento
-
• Muito caro
-
• Foco corporativo
-
-
-
-
- {/* Freelancers Generalistas */}
-
-
-
-
-
-
-
- Freelancers Generalistas
-
-
Por hora
-
-
-
-
R$ 40 - 80/h
-
-
• Competitivo
-
• Sem especialização
-
• Qualidade variável
-
• Sem garantias
-
-
-
-
- {/* Comigo - Evandro */}
-
-
-
- RECOMENDADO
-
-
-
-
-
-
-
-
-
Comigo
-
Evandro Fonseca
-
-
-
-
-
- R$ 35 - 70/h
-
-
- -50% vs mercado
-
-
-
-
- ✓
- Full-Stack + IoT + Cloud
-
-
- ✓
- Transparência total
-
-
- ✓
- Flexibilidade máxima
-
-
- ✓
- Experiência comprovada
-
-
-
- {/* Call to Action */}
-
-
- 🎯 Melhor custo-benefício do mercado
-
-
-
-
-
-
- {/* Bottom CTA */}
-
-
+
+
+
+ {/* Header Profissional */}
+
+
-
- Economia média de R$ 15.000 por projeto vs agências tradicionais
-
+
Business_Architect
+
+ Flexibilidade Total
+
+
+ Modelos de contratação adaptáveis para diferentes estágios de maturidade tecnológica.
+
+
+
+ {/* Comparação de Mercado (Anchoring Effect) */}
+
+
+
+
+
-
-
- {WorkModalitiesData.map((modality, index) => (
-
- {modality.badge && (
-
-
- {modality.badge}
-
-
- )}
+ {/* Grid de Modalidades */}
+
+ {WorkModalitiesData.map((modality, index) => {
+ const style = COLOR_VARIANTS[modality.color] || COLOR_VARIANTS.blue;
+ const Icon = modality.icon;
-
-
-
-
-
-
- {modality.title}
-
-
- {modality.value}
+ {modality.badge && (
+
+ {modality.badge}
+
+ )}
+
+
+
+
+
+
+
{modality.title}
+
{modality.value}
+
+
+
+
+ {modality.description}
-
-
-
{modality.description}
+
+ {modality.benefits.map((benefit, bIdx) => (
+
+
+ {benefit}
+
+ ))}
+
- {modality.benefits && (
-
- {modality.benefits.map((benefit, idx) => (
-
- ✓
- {benefit.replace("✓ ", "")}
+
+
+ Ideal para: {modality.idealFor}
- ))}
-
- )}
-
-
- Ideal para:{" "}
- {modality.idealFor}
-
-
- ))}
+
+
+ );
+ })}
+
);
}
+
+function MarketCard({ title, price, icon: Icon, color, best }: any) {
+ return (
+
+ );
+}
\ No newline at end of file