@extends('layout.front.master')
@section('title', config('site.name') . ' | ' . config('site.tagline', __('Welcome')))
@section('description', config('site.seo.description'))
@section('keywords', config('site.seo.keywords'))
{{-- Open Graph Meta Tags --}}
@section('og_title', config('site.og.title'))
@section('og_description', config('site.og.description'))
@section('og_image', brand_og_image())
@section('og_type', 'website')
@section('og_url', url()->current())
{{-- Twitter Card Meta Tags --}}
@section('twitter_title', config('site.name'))
@section('twitter_description', config('site.twitter.description'))
@section('twitter_image', brand_twitter_image())
@section('content')
@php
// Helper: reads from config('site.welcome.{key}') with fallback defaults
$welcomeDefaults = [
'hero_title' => config('site.name', ''),
'hero_subtitle' => config('site.tagline', ''),
'hero_description' => config('site.description', ''),
'tab1_title' => __('Proyectos'),
'tab1_description' => config('site.modules.services.page_header.subtitle', __('Conocé los proyectos que vengo construyendo.')),
'tab1_cta' => __('Ver proyectos'),
'tab2_title' => __('Galería'),
'tab2_description' => config('site.modules.gallery.page_header.subtitle', __('Momentos, viajes y procesos creativos.')),
'tab2_cta' => __('Ver galería'),
'tab3_title' => __('Blog'),
'tab3_description' => config('site.modules.projects.page_header.subtitle', __('Notas, reflexiones y aprendizajes en el camino.')),
'tab3_cta' => __('Leer blog'),
'about_badge' => config('site.about.main_title', __('Sobre mí')),
'about_title' => config('site.about.page_title', config('site.name')),
'about_description' => config('site.about.main_subtitle', config('site.description')),
'about_tagline' => config('site.tagline', ''),
'closure_text' => config('site.contact.cta_title', __('¿Conectamos? Estoy abierto a conversaciones que sumen.')),
'closure_cta' => __('Hablemos'),
'tagline' => config('site.tagline', config('site.name')),
'work_badge' => __('Lo que hago'),
'work_title' => config('site.name'),
'work_subtitle' => config('site.tagline', ''),
'work_item_1' => __('Proyectos'),
'work_item_2' => __('Galería'),
'work_item_3' => __('Blog'),
'work_item_4' => __('Contacto'),
'skills_badge' => __('Mis disciplinas'),
'skills_title' => __('Lo que hago bien'),
'stat_card_label' => __('Años creando'),
'stat_card_value' => '10+',
'show_testimonials' => false,
'show_social_proof' => false,
'blog_badge' => __('Blog'),
'blog_title' => config('site.modules.blog.page_header.title', __('Últimas notas')),
'stat_1_value' => '10',
'stat_1_label' => __('años creando'),
'stat_2_value' => '50',
'stat_2_label' => __('proyectos completados'),
'stat_3_value' => '30',
'stat_3_label' => __('destinos explorados'),
];
$welcome = function($key, $default = null) use ($welcomeDefaults) {
return config('site.welcome.' . $key, $welcomeDefaults[$key] ?? $default);
};
@endphp
{{-- Hero Section --}}
{{ config('site.welcome.hero_badge', 'Marca Personal') }}
{{ $welcome('hero_title') }}
{{ $welcome('hero_subtitle') }}
{{ $welcome('hero_description') }}
{{ config('site.about.main_subtitle', config('site.description')) }}
{{-- Background Section — Crossfade automático, gestionable desde /admin/welcomecarousel --}}
@if(isset($carouselImages) && $carouselImages->count() > 0)
@foreach($carouselImages as $index => $slide)
@endforeach
@else
@endif
@if(isset($carouselImages) && $carouselImages->count() > 1)
@endif
{{-- 3 Pilares Cards V3 --}}
{{-- Pilar 1: Crear --}}
{{ config('site.about.value_1_title', 'Crear') }}
{{ config('site.about.value_1_description', 'Lo que vengo construyendo. Cada proyecto entregado, cada colaboración, cada idea que se hizo realidad.') }}
{{ __('Ver Proyectos') }}
{{-- Pilar 2: Compartir --}}
{{ config('site.about.value_2_title', 'Compartir') }}
{{ config('site.about.value_2_description', 'Lo que aprendo lo escribo. Notas, reflexiones y procesos detrás de cada proyecto.') }}
{{ __('Explorar Galería') }}
{{-- Pilar 3: Conectar --}}
{{ config('site.about.value_3_title', 'Conectar') }}
{{ config('site.about.value_3_description', 'Construir redes profesionales sólidas. Las mejores oportunidades surgen de relaciones de confianza.') }}
{{ __('Leer el Blog') }}
{{-- Mis disciplinas — overview de los módulos activos --}}
{{ config('site.welcome.modules_badge', 'Mi Espacio') }}
{{ config('site.welcome.modules_title', 'Todo conectado') }} {{ config('site.welcome.modules_subtitle', 'en un mismo lugar') }}
{{ config('site.welcome.modules_description', 'Acá encontrás todo lo que vengo construyendo: proyectos, publicaciones, momentos y respuestas a las preguntas que más recibo.') }}
{{ config('site.welcome.modules_grid_title', 'Explorá las secciones') }}
@php
$activeModulesShow = [
['name' => __('Proyectos'), 'desc' => __('Trabajos publicados y casos de estudio'), 'icon' => 'fa-solid fa-code', 'active' => is_module_active('projects'), 'route' => route('frontend.projects.portfolio')],
['name' => __('Galería'), 'desc' => __('Momentos, procesos y registros visuales'), 'icon' => 'fa-solid fa-images', 'active' => is_module_active('gallery'), 'route' => route('gallery')],
['name' => __('Blog'), 'desc' => __('Notas, reflexiones y aprendizajes en el camino'), 'icon' => 'fa-solid fa-pen-nib', 'active' => is_module_active('blog'), 'route' => route('blog.index')],
['name' => __('Preguntas Frecuentes'), 'desc' => __('Respuestas rápidas sobre mi proceso de trabajo'), 'icon' => 'fa-solid fa-circle-question', 'active' => is_module_active('faqs'), 'route' => route('faqs.index')],
];
@endphp
@foreach($activeModulesShow as $modShow)
@if($modShow['active'])
{{ $modShow['name'] }}
{{ $modShow['desc'] }}
@endif
@endforeach
{{-- Who Is {{ config('site.name') }} Section --}}
{{ $welcome('about_badge') }}
{{ $welcome('about_title') }}
{{ $welcome('about_description') }}
{{ $welcome('about_tagline') }}
@php
$counters = [
['value' => $welcome('stat_1_value'), 'label' => $welcome('stat_1_label'), 'delay' => 0],
['value' => $welcome('stat_2_value'), 'label' => $welcome('stat_2_label'), 'delay' => 200],
['value' => $welcome('stat_3_value'), 'label' => $welcome('stat_3_label'), 'delay' => 400]
];
@endphp
@foreach($counters as $counter)
{{ $counter['label'] }}
@endforeach
{{-- My Work & Passions Section — Dinámica y adaptada al perfil personal --}}
@php
$workItems = [];
if (is_module_active('projects') && Route::has('frontend.projects.portfolio')) {
$workItems[] = ['title' => $welcome('work_item_1', __('Proyectos')), 'image' => 'generic-4.jpg', 'delay' => 0, 'link' => route('frontend.projects.portfolio')];
}
if (is_module_active('gallery') && Route::has('gallery')) {
$workItems[] = ['title' => $welcome('work_item_2', __('Galería')), 'image' => 'generic-5.jpg', 'delay' => 100, 'link' => route('gallery')];
}
if (is_module_active('blog') && Route::has('blog.index')) {
$workItems[] = ['title' => $welcome('work_item_3', __('Blog')), 'image' => 'generic-6.jpg', 'delay' => 200, 'link' => route('blog.index')];
}
if (is_module_active('contact') && Route::has('front.contact')) {
$workItems[] = ['title' => $welcome('work_item_4', __('Contacto')), 'image' => 'generic-7.jpg', 'delay' => 300, 'link' => route('front.contact')];
}
@endphp
@if(!empty($workItems))
{{ $welcome('work_badge') }}
{{ $welcome('work_title') }}
{{ $welcome('work_subtitle') }}
@endif
{{-- Skills & Expertise Section - Comentado: Landing comercial removida según especificaciones --}}
{{--
{{ $welcome('skills_badge') }}
{{ $welcome('skills_title') }}
{{ $welcome('stat_card_label') }}
{{ $welcome('stat_card_value') }}
@php
$skills = array_filter([
$welcome('skill_1'),
$welcome('skill_2'),
$welcome('skill_3'),
$welcome('skill_4'),
$welcome('skill_5'),
$welcome('skill_6')
]);
@endphp
@foreach($skills as $skill)
{{ $skill }}
@endforeach
{{ __('Contactame') }}
--}}
{{-- Created by Real People Section --}}
{{--
{{ $welcome('personal_badge') }}
{{ $welcome('personal_title') }}
{{ $welcome('personal_description') }}
@for($i = 9; $i <= 12; $i++)
@endfor
{{ $welcome('availability_text') }}
--}}
{{-- Social Proof / Featured In --}}
@if(filter_var($welcome('show_social_proof', false), FILTER_VALIDATE_BOOLEAN))
@for($i = 1; $i <= 7; $i++)
@if($i != 2)
@endif
@endfor
@endif
{{-- Trusted By Clients (Testimonials) Section --}}
@if(filter_var($welcome('show_testimonials', false), FILTER_VALIDATE_BOOLEAN))
{{ $welcome('testimonials_badge') }}
{{ $welcome('testimonials_title') }}
{{ $welcome('testimonials_description') }}
@php
$testimonials = [
[
'text' => $welcome('testimonial_1_text', __('Working with our team transformed our online presence. The team delivered a scalable solution that perfectly captured the essence of our brand. Professional, creative and always attentive.')),
'author' => $welcome('testimonial_1_author', 'Cliente, Socio de Marca'),
'image' => 'generic-13.jpg'
],
[
'text' => $welcome('testimonial_2_text', "La solución web que recibimos superó nuestras expectativas. No es solo un sitio web—es una experiencia digital que realmente representa quiénes somos. La atención al detalle y el enfoque estratégico marcaron la diferencia."),
'author' => $welcome('testimonial_2_author', 'Cliente, Empresario'),
'image' => 'generic-23.jpg'
]
];
@endphp
@foreach($testimonials as $testimonial)
{{ $testimonial['text'] }}
{{ $testimonial['author'] }}
@endforeach
@endif
{{-- FAQ Section - Comentado: FAQs corporativos removidos según especificaciones --}}
{{--
{{ $welcome('faq_badge') }}
{{ __('Preguntas Frecuentes') }}
@php
$faqs = [
[
'question' => $welcome('faq_1_question'),
'answer' => $welcome('faq_1_answer')
],
[
'question' => $welcome('faq_2_question'),
'answer' => $welcome('faq_2_answer')
],
[
'question' => $welcome('faq_3_question'),
'answer' => $welcome('faq_3_answer')
],
[
'question' => $welcome('faq_4_question'),
'answer' => $welcome('faq_4_answer')
],
[
'question' => $welcome('faq_5_question'),
'answer' => $welcome('faq_5_answer')
]
];
@endphp
@foreach($faqs as $faq)
@endforeach
{{ __('Contactame') }}
--}}
{{-- ====== LATEST CONTENT — Lo más reciente ====== --}}
@if(is_module_active('blog') && isset($featuredPosts) && $featuredPosts->count() > 0)
{{ $welcome('blog_badge') }}
{{ $welcome('blog_title') }}
@foreach($featuredPosts->take(6) as $post)
@include('modules.blog.frontend.partials.homepage-post-media', [
'post' => $post,
'mediaMinHeight' => '240px',
'imageClass' => '',
])
@if($post->category)
{{ $post->category->name }}
@endif
{{ $post->created_at->format('d M Y') }}
{{ Str::limit($post->description ?? strip_tags($post->content ?? ''), 80) }}
@endforeach
{{-- Categorías como pills inline --}}
@php
$blogCategories = $blogCategories ?? collect();
@endphp
@if($blogCategories->count() > 0)
@endif
@endif
{{-- ====== GALLERY — Perspectiva visual ====== --}}
@if(is_module_active('gallery') && isset($galleryImages) && $galleryImages->count() > 0)
{{-- Lightbox fullscreen (mismo que /gallery) --}}
@foreach($galleryImages->take(6) as $image)
@php $imgUrl = filter_var($image->img, FILTER_VALIDATE_URL) ? $image->img : asset($image->img); @endphp
@endforeach
@foreach($galleryImages->take(6) as $image)
@php $imgUrl = filter_var($image->img, FILTER_VALIDATE_URL) ? $image->img : asset($image->img); @endphp
@endforeach
{{ config('site.modules.gallery.page_header.title', 'Perspectiva') }}
{{ config('site.welcome.gallery_heading', config('site.modules.gallery.page_header.title', __('Galería'))) }}
@foreach($galleryImages->take(6) as $index => $image)
@php $imgUrl = filter_var($image->img, FILTER_VALIDATE_URL) ? $image->img : asset($image->img); @endphp
@endforeach
@endif
{{-- ====== PROJECTS — Lo que construí ====== --}}
@if(is_module_active('projects') && isset($featuredProjects) && $featuredProjects->count() > 0)
{{ config('site.modules.projects.page_header.title', 'Proyectos') }}
{{ config('site.welcome.projects_heading', config('site.modules.projects.page_header.title', __('Proyectos'))) }}
@foreach($featuredProjects->take(6) as $project)
@if($project->image)
@else
@endif
{{ $project->title }}
{{ Str::limit(strip_tags($project->description ?? ''), 80) }}
@endforeach
@endif
{{-- ====== TAGLINE ====== --}}
{{ $welcome('tagline') }}
{{-- ====== CTA FINAL — Build What Matters ====== --}}
@endsection