pupila: Skill for Claude Code

.agents/skills/react-best-practices/SKILL.md

vercel-react-best-practices is a skill for Claude Code, Codex from FranRom/pupila. It costs 67 tokens per session (1,739 once invoked), scanned A, original, MIT.

A set of guidelines for making React and Next.js applications faster and more efficient. React is a JavaScript tool for building interfaces, and Next.js is a framework built around React.

In plain words
What is it for?
Use it when writing, reviewing, or restructuring React components and Next.js pages, especially for data fetching, bundle-size, and rendering performance work.
Why use it?
It helps developers spot slow data-loading sequences, oversized browser code, unnecessary updates, and inefficient server or client rendering.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: installed under .agents/ (shared by several agents); mentions AGENTS.md.

This is FranRom/pupila's own configuration. It tells Claude Code and Codex how to work on pupila itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything pupila configures →

Reuse

Borrowing it

Nothing to install: this file belongs to FranRom/pupila. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/FranRom/pupila/main/.agents/skills/react-best-practices/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/FranRom/pupila

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for vercel-react-best-practices

README.md
[![agentmods](https://agentmods.dev/badge/skills/franrom/pupila/react-best-practices/github.svg)](https://agentmods.dev/skills/franrom/pupila/react-best-practices)
Your own site
<a href="https://agentmods.dev/skills/franrom/pupila/react-best-practices"><img src="https://agentmods.dev/badge/skills/franrom/pupila/react-best-practices/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for vercel-react-best-practices

Your own site · 80×15
<a href="https://agentmods.dev/skills/franrom/pupila/react-best-practices"><img src="https://agentmods.dev/badge/skills/franrom/pupila/react-best-practices.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 67 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,739 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00067 $0.01739
Opus 5.5 $0.00027 $0.00696
Sonnet 5.5 $0.00013 $0.00348
Haiku 4.5 $0.00007 $0.00174

Measured 1mo ago against content hash 916b4de00956, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

vercel-react-best-practices scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

.agents/skills/react-best-practices/SKILL.md · 150 lines

How it starts

The opening of the file, as written. The whole thing — 150 lines — stays where its author put it; the contents beside it link to each section on GitHub.

Vercel React Best Practices

Perf optimization guide for React/Next.js, by Vercel. 70 rules across 8 categories, prioritized by impact.

When to Apply

Reference when:

  • Writing new React components / Next.js pages
  • Implementing data fetching (client or server)
  • Reviewing code for perf issues
  • Refactoring React/Next.js code
  • Optimizing bundle size / load times

Rule Categories by Priority

Priority Category Impact Prefix
1 Eliminating Waterfalls CRITICAL async-
2 Bundle Size Optimization CRITICAL bundle-
3 Server-Side Performance HIGH server-
4 Client-Side Data Fetching MEDIUM-HIGH client-
5 Re-render Optimization MEDIUM rerender-
6 Rendering Performance MEDIUM rendering-
7 JavaScript Performance LOW-MEDIUM js-
8 Advanced Patterns LOW advanced-

Quick Reference

1. Eliminating Waterfalls (CRITICAL)

  • async-cheap-condition-before-await - Check cheap sync conditions before awaiting flags/remote values
  • async-defer-await - Move await into branches where used
  • async-parallel - Promise.all() for independent ops
  • async-dependencies - better-all for partial deps
  • async-api-routes - Start promises early, await late in API routes
  • async-suspense-boundaries - Suspense to stream content

2. Bundle Size Optimization (CRITICAL)

  • bundle-barrel-imports - Import directly, avoid barrel files
  • bundle-analyzable-paths - Statically analyzable import/FS paths — avoid broad bundles/traces
  • bundle-dynamic-imports - next/dynamic for heavy components
  • bundle-defer-third-party - Load analytics/logging post-hydration
  • bundle-conditional - Load modules only when feature activates
  • bundle-preload - Preload on hover/focus for perceived speed

3. Server-Side Performance (HIGH)

  • server-auth-actions - Authenticate server actions like API routes
  • server-cache-react - React.cache() for per-request dedup
  • server-cache-lru - LRU cache for cross-request caching
  • server-dedup-props - Avoid duplicate serialization in RSC props
  • server-hoist-static-io - Hoist static I/O (fonts, logos) to module level
  • server-no-shared-module-state - Avoid module-level mutable request state in RSC/SSR
  • server-serialization - Minimize data to client components
  • server-parallel-fetching - Restructure components to parallelize fetches
  • server-parallel-nested-fetching - Chain nested fetches per item in Promise.all
  • server-after-nonblocking - after() for non-blocking ops

Read the full file on GitHub · 150 lines

Files

What ships with it

60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 1mo ago First seen · 150 lines · 67 tokens per session scan A 916b4de00956

Subscribe to this mod's changes

vercel-react-best-practices is a skill published in the GitHub repository FranRom/pupila (36 stars, last pushed yesterday), licensed MIT. It adds 67 tokens to every session and 1,739 once invoked, about $0.0003 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

react-frontend

React, TypeScript, and Next.js patterns for frontend development. Use when building React components, managing state, fetching data, optimizing performance, or working with Next.js App Router. Covers React 18-19, hooks, Server Components, and type-safe patterns.

iliaal/whetstone · 57 tokens

react-application-structure

Establishes or reviews the directory layout, feature boundaries, state design, routing approach, and data-fetching conventions for a React 18+ TypeScript application. Invoked when the user asks to structure a React app, set up a scalable architecture, or review React project organization.

soulcodex/agentic · 63 tokens

next-application-structure

Establishes or reviews directory layout, server/client boundaries, routing, data-fetching strategy, and testing structure for Next.js 14+ App Router TypeScript applications. Invoked when the user asks to structure a Next app, set App Router conventions, or review architecture for React parity.

soulcodex/agentic · 64 tokens

react-component-design

Designs or reviews React component APIs. Handles prop drilling decisions, composition patterns, controlled/uncontrolled contracts, and minimal public API surfaces for React 18+ TypeScript components. Invoked when creating new components, refactoring existing ones, or reviewing component contracts.

soulcodex/agentic · 56 tokens

react-conventions

React + TypeScript frontend conventions — centralized API client, API services, state management, components, and file organization. Apply whenever writing or editing frontend .ts/.tsx code.

makigjuro/cloudstack-ai-plugins · 39 tokens

react-hook

Creates a custom React hook with TypeScript types, tests, and usage example.

berkcangumusisik/claude-code-practices · 18 tokens