Skip to main content

Services Component

The Services component showcases Plugin Agency’s 5 core service offerings in a visually consistent grid layout with icons from lucide-react.

Overview

This section:
  • Displays 5 main service categories
  • Uses lucide-react icons for visual representation
  • Implements a responsive grid layout
  • Provides clear service descriptions
  • Data-driven rendering from services array

Features

  • Icon Integration: Professional icons from lucide-react
  • Service Cards: Consistent card design across all services
  • Responsive Grid: Adapts to screen sizes
  • Data-Driven: Array-based rendering
  • Clear Descriptions: Each service explained concisely

Props

This component accepts no props.

Usage

import Services from './components/Services';

function App() {
  return (
    <>
      {/* Other sections */}
      <Services />
      {/* More sections */}
    </>
  );
}

Services Data Structure

The component uses a services array with 5 service definitions:
const services = [
    {
        title: "Estrategia, Marca y Comunicación",
        description: "Ordenamos identidad, propuesta de valor y narrativa para que cada punto de contacto diga lo mismo: claro, consistente y con intención.",
        icon: <Target size={28} />
    },
    {
        title: "Contenidos y Redes Sociales",
        description: "Diseñamos una estrategia de contenidos que represente al proyecto y lo vuelva encontrable donde importa.",
        icon: <Smartphone size={28} />
    },
    {
        title: "Diseño Web y Soluciones Digitales",
        description: "Diseñamos y desarrollamos sitios web y landings orientadas a conversión, alineadas a la marca y al objetivo del negocio.",
        icon: <Monitor size={28} />
    },
    {
        title: "Automatización, Procesos e IA aplicada",
        description: "Implementamos flujos para ahorrar tiempo, estandarizar y escalar operaciones y contenido inteligentemente.",
        icon: <Bot size={28} />
    },
    {
        title: "PR, Experiencias y Ecosistema",
        description: "Creamos activaciones y conexiones que aumentan visibilidad real dentro del ecosistema creativo y tecnológico.",
        icon: <Handshake size={28} />
    }
];

Code Implementation

Services.jsx
import { Target, Smartphone, Monitor, Bot, Handshake } from 'lucide-react';

const services = [
    {
        title: "Estrategia, Marca y Comunicación",
        description: "Ordenamos identidad, propuesta de valor y narrativa para que cada punto de contacto diga lo mismo: claro, consistente y con intención.",
        icon: <Target size={28} />
    },
    {
        title: "Contenidos y Redes Sociales",
        description: "Diseñamos una estrategia de contenidos que represente al proyecto y lo vuelva encontrable donde importa.",
        icon: <Smartphone size={28} />
    },
    {
        title: "Diseño Web y Soluciones Digitales",
        description: "Diseñamos y desarrollamos sitios web y landings orientadas a conversión, alineadas a la marca y al objetivo del negocio.",
        icon: <Monitor size={28} />
    },
    {
        title: "Automatización, Procesos e IA aplicada",
        description: "Implementamos flujos para ahorrar tiempo, estandarizar y escalar operaciones y contenido inteligentemente.",
        icon: <Bot size={28} />
    },
    {
        title: "PR, Experiencias y Ecosistema",
        description: "Creamos activaciones y conexiones que aumentan visibilidad real dentro del ecosistema creativo y tecnológico.",
        icon: <Handshake size={28} />
    }
];

const Services = () => {
    return (
        <section id="services" className="services-section section-divider">
            <div className="container">
                <h2 className="section-title">Nuestros <span>Servicios</span></h2>
                <div className="services-grid">
                    {services.map((service, index) => (
                        <div key={index} className="service-card">
                            <div className="service-icon">{service.icon}</div>
                            <h3>{service.title}</h3>
                            <p>{service.description}</p>
                        </div>
                    ))}
                </div>
            </div>
        </section>
    );
};

export default Services;

Icons Used

All icons from lucide-react package at 28px size:
  • Target - Strategy, Brand & Communication
  • Smartphone - Content & Social Media
  • Monitor - Web Design & Digital Solutions
  • Bot - Automation, Processes & AI
  • Handshake - PR, Experiences & Ecosystem
All icons are consistently sized at 28px for visual harmony across the service cards.

Service Categories

1. Estrategia, Marca y Comunicación

Organizing identity, value proposition, and narrative for consistent touchpoint communication.

2. Contenidos y Redes Sociales

Designing content strategy that represents the project and makes it discoverable.

3. Diseño Web y Soluciones Digitales

Designing and developing conversion-oriented websites and landing pages aligned with brand and business objectives.

4. Automatización, Procesos e IA aplicada

Implementing workflows to save time, standardize, and intelligently scale operations and content.

5. PR, Experiencias y Ecosistema

Creating activations and connections that increase real visibility within the creative and technological ecosystem.

Styling Classes

  • .services-section - Main section container
  • .section-divider - Visual separator between sections
  • .section-title - Main heading with highlighted span
  • .services-grid - Grid container for service cards
  • .service-card - Individual service card
  • .service-icon - Icon container within each card

Layout Structure

  1. Header
    • Title: “Nuestros Servicios” with highlighted “Servicios”
  2. Services Grid
    • 5 service cards in responsive grid
    • Each card contains icon, title, and description

Responsive Behavior

  • Desktop: Multi-column grid (likely 2-3 columns)
  • Tablet: 2-column grid
  • Mobile: Single column stack

Card Structure

Each service card includes:
<div className="service-card">
    <div className="service-icon">{icon}</div>
    <h3>{title}</h3>
    <p>{description}</p>
</div>

Content Strategy

Descriptions follow the pattern:
  • Clear action verb (Ordenamos, Diseñamos, Implementamos, Creamos)
  • Specific outcomes and benefits
  • Professional but approachable tone

Dependencies

{
  "lucide-react": "^0.x.x"
}
Icons imported:
  • Target
  • Smartphone
  • Monitor
  • Bot
  • Handshake
The icon size (28px) is slightly larger than the Problem component (24px) to give services more visual weight.

Integration with Other Components

This component integrates with:
  • Method Component: Services implement the 5-layer methodology
  • WorkPacks Component: Services are packaged into work packs
  • Contact Component: Users can inquire about specific services

Build docs developers (and LLMs) love