react

Create typed React components with Inertia props for Laravel projects.

Updated Jan 8, 2026
One-click install
npx skills add https://github.com/markhamsquareventures/essentials --skill react-markhamsquareventures
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: react
Source: https://github.com/markhamsquareventures/essentials/tree/main/skills/react
Command: npx skills add https://github.com/markhamsquareventures/essentials --skill react-markhamsquareventures

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Establishes a standardized, efficient approach for building React frontends within Laravel projects, reducing boilerplate and ensuring consistent component structure and data flow.

Core Features & Use Cases

  • Page and component organization: pages live in resources/js/pages, shared components live in resources/js/components, UI primitives live in resources/js/components/ui, and custom hooks live in resources/js/hooks.
  • Server-driven props pattern: pages receive data as props from the Laravel controller via Inertia; avoid client-side data fetching or useEffect for initial data loading.
  • Type-safe conventions: explicit interfaces for props, path aliases (e.g. '@/components', '@/hooks', '@/types'), and typed components to ensure reliability.
  • React 19 + React Compiler guidance: rely on the compiler’s memoization to optimize performance; minimize manual useMemo/useCallback unless profiling justifies it.
  • State management guidance: use useState and useReducer for local state; leverage Inertia’s shared data for server-provided state.

Quick Start

Create a typed React component skeleton from a provided UI spec.

Frequently Asked Questions about react

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I build React frontend components with Laravel and Inertia?

To build React frontend components with Laravel and Inertia, organize pages in resources/js/pages and shared components in resources/js/components, passing server-provided data as props via Inertia rather than fetching client-side.

Do I need TypeScript for React component development in a Laravel project?

Yes, TypeScript is required for React component development in a Laravel project. You must define explicit interfaces for props and typed components to ensure reliable, standardized data flow throughout your frontend structure.

What is the best way to manage state in React components using Inertia?

The best way to manage state in React components using Inertia is leveraging useState and useReducer for local component state, while relying on Inertia's shared data for server-provided state instead of fetching initial data client-side.

When should I use useMemo or useCallback in React 19 components?

You should minimize useMemo or useCallback in React 19 components, relying on the React Compiler's memoization to optimize performance automatically. Only apply manual memoization if performance profiling explicitly justifies the need.

How does server-driven prop passing work for React pages?

Server-driven prop passing works by having Laravel controllers provide data directly as props to React pages via Inertia. This approach avoids useEffect for initial data loading and ensures a standardized client-server data flow.