Back to Skills

revalidation-strategy-planner

verified

Evaluates Next.js routes and outputs optimal revalidate settings, cache tags for ISR, SSR configurations, or streaming patterns. This skill should be used when optimizing Next.js caching strategies, configuring Incremental Static Regeneration, planning cache invalidation, or choosing between SSR/ISR/SSG. Use for Next.js caching, revalidation, ISR, cache tags, on-demand revalidation, or rendering strategies.

View on GitHub

Marketplace

worldbuilding-app-skills

hopeoverture/worldbuilding-app-skills

Plugin

revalidation-strategy-planner

development

Repository

hopeoverture/worldbuilding-app-skills
1stars

plugins/revalidation-strategy-planner/skills/revalidation-strategy-planner/SKILL.md

Last Verified

January 21, 2026

Install Skill

Select agents to install to:

Scope:
npx add-skill https://github.com/hopeoverture/worldbuilding-app-skills/blob/main/plugins/revalidation-strategy-planner/skills/revalidation-strategy-planner/SKILL.md -a claude-code --skill revalidation-strategy-planner

Installation paths:

Claude
.claude/skills/revalidation-strategy-planner/
Powered by add-skill CLI

Instructions

# Revalidation Strategy Planner

Analyze Next.js application routes and recommend optimal caching and revalidation strategies for performance and data freshness.

## Overview

To optimize Next.js caching strategies:

1. Analyze route characteristics (data freshness requirements, update frequency)
2. Determine appropriate rendering strategy (SSG, ISR, SSR, streaming)
3. Configure revalidation intervals for ISR routes
4. Implement cache tags for on-demand revalidation
5. Set up streaming for progressive page loading

## Rendering Strategies

### Static Site Generation (SSG)

To use SSG for rarely changing content:

```typescript
// app/about/page.tsx
export default async function AboutPage() {
  // Generated at build time, no revalidation
  return <div>About Us</div>;
}
```

**Best for:**
- Marketing pages
- Documentation
- Static content that rarely changes

### Incremental Static Regeneration (ISR)

To use ISR for periodically updated content:

```typescript
// app/entities/[id]/page.tsx
export const revalidate = 3600; // Revalidate every hour

export default async function EntityPage({ params }: { params: { id: string } }) {
  const entity = await fetchEntity(params.id);
  return <EntityDetail entity={entity} />;
}
```

**Best for:**
- Entity detail pages
- Blog posts
- Product listings
- Content with predictable update patterns

### Server-Side Rendering (SSR)

To use SSR for real-time data:

```typescript
// app/dashboard/page.tsx
export const dynamic = 'force-dynamic';

export default async function Dashboard() {
  const data = await fetchUserData();
  return <DashboardView data={data} />;
}
```

**Best for:**
- User dashboards
- Personalized content
- Real-time data displays
- Authentication-dependent pages

### Streaming

To use streaming for progressive loading:

```typescript
// app/timeline/page.tsx
import { Suspense } from 'react';

export default function TimelinePage() {
  return (
    <div>
      <TimelineHeader />
      <Suspense fallback={<TimelineLoa

Validation Details

Front Matter
Required Fields
Valid Name Format
Valid Description
Has Sections
Allowed Tools
Instruction Length:
10507 chars