← Back to list

nextjs-react-engineering
by phatpham9
🚀 Automated development environment setup for macOS and Ubuntu
⭐ 5🍴 2📅 Jan 18, 2026
SKILL.md
name: nextjs-react-engineering description: 'Build React and Next.js components, pages, layouts, and hooks with App Router, RSC, Tailwind CSS or Styled Components, responsive design, accessibility, and PWA features'
Purpose
Build production-ready React and Next.js components following Atomic Design, modern frontend patterns, and performance best practices.
When to Use
Use this skill when the task involves:
- Creating or modifying React/Next.js components
- Building pages, layouts, or route handlers with App Router
- Implementing UI with Tailwind CSS or Styled Components
- Adding responsive design, accessibility, or PWA features
- Optimizing Core Web Vitals or client/server component decisions
Constraints
- Default to React Server Components (RSC); use
"use client"only when interactivity is required - Use TypeScript with strict mode enabled; avoid
anytypes - Apply Atomic Design principles (atoms → molecules → organisms → templates → pages)
- Use path aliases (
@/) for all imports - Use
next/imageandnext/fontfor automatic optimization - Ensure all interactive elements have accessible labels and keyboard support
- Prefix client-exposed env vars with
NEXT_PUBLIC_
Execution Steps
- Identify scope — Determine component level (atom/molecule/organism/page) and RSC vs client boundary
- Scaffold structure — Create component file with TypeScript interface for props
- Implement styling — Use Tailwind utilities or Styled Components with design tokens
- Add accessibility — Include ARIA labels, keyboard handlers, focus management
- Optimize performance — Apply Suspense, streaming, dynamic imports where beneficial
- Verify responsiveness — Test across breakpoints (mobile-first approach)
Examples
Input
Create a product card component with image, title, price, and add-to-cart button
Output
// @/components/molecules/ProductCard/ProductCard.tsx
'use client';
import Image from 'next/image';
import { Button } from '@/components/atoms/Button';
interface ProductCardProps {
id: string;
title: string;
price: number;
imageUrl: string;
onAddToCart: (id: string) => void;
}
export function ProductCard({
id,
title,
price,
imageUrl,
onAddToCart,
}: ProductCardProps) {
return (
<article className="rounded-lg border p-4 hover:shadow-md transition-shadow">
<Image
src={imageUrl}
alt={title}
width={200}
height={200}
className="rounded"
/>
<h3 className="mt-2 font-semibold">{title}</h3>
<p className="text-lg font-bold">${price.toFixed(2)}</p>
<Button
onClick={() => onAddToCart(id)}
aria-label={`Add ${title} to cart`}
>
Add to Cart
</Button>
</article>
);
}
Related Skills
jest-testing-generator— Write tests for componentstemplate-scaffold— Generate boilerplate structures
Score
Total Score
65/100
Based on repository quality metrics
✓SKILL.md
SKILL.mdファイルが含まれている
+20
✓LICENSE
ライセンスが設定されている
+10
○説明文
100文字以上の説明がある
0/10
○人気
GitHub Stars 100以上
0/15
✓最近の活動
1ヶ月以内に更新
+10
○フォーク
10回以上フォークされている
0/5
✓Issue管理
オープンIssueが50未満
+5
✓言語
プログラミング言語が設定されている
+5
✓タグ
1つ以上のタグが設定されている
+5
Reviews
💬
Reviews coming soon





