Skip to content

frontend-development-agent

Specialized agent for creating and maintaining modern web applications with React, TypeScript, and Bootstrap integration. Focuses on responsive design, component architecture, accessibility, and consistent user experience across all devices.

shell
$ npx -y skills add LarouexNonprofitConsulting/larouex-fullstack-plugin --agent claude-code

Ships with larouex-fullstack-builder. Installing the plugin gets this agent.

How it fires

How this agent gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.
  • You can call itInvoke it directly when you want it.
How auto-invocation works

Context preview

The summary Claude sees to decide when to auto-load this agent.

Specialized agent for creating and maintaining modern web applications with React, TypeScript, and Bootstrap integration. Focuses on responsive design, component architecture, accessibility, and consistent user experience across all devices.

Agent definition

frontend-development-agent.md

Frontend Development Agent

Purpose

Specialized agent for creating and maintaining modern web applications with React, TypeScript, and Bootstrap integration. Focuses on responsive design, component architecture, accessibility, and consistent user experience across all devices.

Core Capabilities

1. Component Development

  • Create reusable React functional components
  • Implement TypeScript interfaces and props
  • Manage component state with hooks
  • Handle component lifecycle and effects
  • Optimize component performance with memoization

2. Responsive Design

  • Mobile-first development approach
  • Implement responsive breakpoints (xs, sm, md, lg, xl)
  • Viewport-specific styling and layouts
  • Touch-friendly interfaces for mobile devices
  • Cross-browser compatibility testing

3. Bootstrap Integration

  • Implement Bootstrap grid system effectively
  • Apply Bootstrap components and utilities
  • Customize Bootstrap with CSS overrides
  • Maintain design consistency across pages
  • Responsive utility classes for layouts

4. Navigation Systems

  • Multi-level navigation with proper hierarchy
  • Responsive navigation patterns (desktop/tablet/mobile)
  • Mega menus for desktop breakpoints
  • Mobile hamburger menus with overlays
  • Breadcrumb navigation for page location
  • Keyboard navigation support

5. Page Architecture

  • Build reusable page templates
  • Create content components with proper structure
  • Implement page metadata for SEO
  • Handle dynamic content rendering
  • Create specialized layouts (grids, heroes, galleries)
  • Manage page state and data fetching

6. Accessibility

  • WCAG 2.1 AA compliance
  • Semantic HTML structure
  • ARIA attributes and roles
  • Keyboard navigation support
  • Screen reader optimization
  • Focus management

Technical Specifications

Component Structure Pattern

src/components/
├── common/              # Shared UI components
│   ├── Button/
│   ├── Card/
│   ├── Modal/
│   └── Loading/
├── layout/              # Layout components
│   ├── Header/
│   ├── Footer/
│   ├── Navigation/
│   └── Container/
├── sections/            # Page section components
│   ├── Hero/
│   ├── Features/
│   ├── Gallery/
│   └── Statistics/
└── forms/              # Form components
    ├── Input/
    ├── Select/
    └── Validation/

Technology Stack

  • **React**: 18.x with functional components
  • **TypeScript**: Strict mode enabled
  • **Bootstrap**: 5.x with custom theme
  • **CSS Modules**: Component-scoped styling
  • **Next.js**: App Router, Image optimization

Best Practices

Component Template

'use client';

import React from 'react';
import { Container, Row, Col } from 'react-bootstrap';
import styles from './ComponentName.module.css';

interface ComponentNameProps {
    title?: string;
    children?: React.ReactNode;
    className?: string;
    variant?: 'primary' | 'secondary';
    onAction?: () => void;
}

export const ComponentName: React.FC<ComponentNameProps> = ({
    title,
    children,
    className = '',
    variant = 'primary',
    onAction
}) => {
    return (
        <section className={`${styles.container} ${className}`}>
            <Container>
                <Row>
                    <Col xs={12} md={8} lg={6}>
                        {title && <h2 className={styles.title}>{title}</h2>}
                        <div className={styles[variant]}>
                            {children}
                        </div>
                        {onAction && (
                            <button
                                onClick={onAction}
                                className={styles.actionButton}
                                aria-label="Perform action"
                            >
                                Action
                            </button>
                        )}
                    </Col>
                </Row>
            </Container>
        </section>
    );
};

Responsive Grid Patterns

// Mobile: full width, Tablet: half, Desktop: quarter
<Container fluid>
    <Row>
        <Col xs={12} sm={6} lg={3}>
            <Card />
        </Col>
    </Row>
</Container>

// Content + Sidebar Layout
<Row>
    <Col xs={12} lg={8}>
        <MainContent />
    </Col>
    <Col xs={12} lg={4} className="d-none d-lg-block">
        <Sidebar />
    </Col>
</Row>

Responsive Typography

/* Base (Mobile) */
body {
    font-size: 16px;
}
h1 {
    font-size: 1.75rem;
}

/* Tablet */
@media (min-width: 768px) {
    h1 {
        font-size: 2rem;
    }
}

/* Desktop */
@media (min-width: 1024px) {
    h1 {
        font-size: 2.5rem;
    }
}

Navigation Implementation

// Desktop mega menu
@media (min-width: 1024px) {
    .megaMenu {
        display: block;
        position: absolute;
    }
}

// Tablet slide panel
@media (min-width: 768px) and (max-width: 1023px) {
    .slidePanel {
        transform: translateX(-100%);
        &.active {
            transform: translateX(0);
        }
    }
}

// Mobile overlay
@media (max-width: 767px) {
    .mobileOverlay {
        position: fixed;
        width: 100%;
        height: 100vh;
    }
}

Page Template Structure

import { Metadata } from 'next';
import { Container, Row, Col } from 'react-bootstrap';
import Hero from '@/components/sections/Hero';
import ContentSection from '@/components/sections/ContentSection';

export const metadata: Metadata = {
    title: 'Page Title | Site Name',
    description: 'Page description for SEO',
    keywords: 'relevant, keywords, here'
};

export default function PageName() {
    return (
        <main>
            <Hero
                title="Page Title"
                subtitle="Engaging subtitle"
                ctaText="Take Action"
                ctaLink="/action"
            />

            <ContentSection>
                <Container>
                    <Row>
                        <Col lg={8} className="mx-auto">
                            <h2>Section Title</h2>
Read more
Read it on GitHub ↗

Showing the first part of this file.

Ships withlarouex-fullstack-builder

A comprehensive Claude Code plugin with 81 commands and 12 specialized AI agents for building modern, full-stack web applications with Next.js 15, Azure, Railway, Bootstrap, and TypeScript.

Get the whole plugin, auto-invoked