Skip to main content
rule

cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup — Cursor rule

A Cursor rule for Next.js 14 development with Tailwind CSS and SEO setup. It guides the AI to generate App Router TypeScript code directly from design screenshots.

Install into Cursor · Manually: put the files in place All methods and platforms ↓
.cursor/rules/cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup.mdc
Open on GitHub

What cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup does

The rule configures Cursor to build Next.js 14 interfaces inside the app directory. It defaults to Server Components, reserving the 'use client' directive strictly for stateful UI and client-side interactions. All styling is restricted to Tailwind CSS classes without inline styles. Images require Next.js Image, while SEO tags rely on the Metadata API.

Code generation enforces functional components with named exports and TypeScript interfaces for props. Return types rely on inference, while JSX.Element is avoided. For data retrieval in Server Components, the prompt directs the agent to native fetch with caching and revalidation logic.

The instructions assume Next.js and Tailwind CSS are already installed in the project. The agent will not configure the build tooling from scratch.

What it helps with

  • build Next.js 14 App Router components from UI screenshots
  • configure page SEO tags using Next.js Metadata API
  • separate Server and Client Components across the app directory
  • wire loading and error states using loading.tsx and error.tsx
  • enforce TypeScript prop interfaces without JSX.Element annotations

Example prompts for the agent

  • Build a product card component from this screenshot using Next.js 14 and Tailwind CSS.
  • Create an App Router catalog page with server-side data fetching and SEO metadata.
  • Implement a newsletter form requiring client-side state and the 'use client' directive.

How to install cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup

Manually: put the files in place

.cursor/rules/cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup.mdc

Frontmatter: description, globs, alwaysApply

Step by step, with commands for each platform: Cursor rules: .mdc files, four modes and what replaced .cursorrules

Questions about cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup

How to install cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup in Cursor?

Save the rule file to .cursor/rules/cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup.mdc in your repository root. Cursor will pick up the instructions automatically.

What does cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup do?

It guides Cursor to generate Next.js 14 TypeScript code adhering to App Router patterns, Tailwind CSS rules, Server Component defaults, and Metadata API configurations.

Does this rule scaffold a new repository?

No, it explicitly assumes a Next.js 14 setup with Tailwind CSS is already in place. The rule handles code generation for routes and components rather than framework initialization.

Source text

cursorrules-cursor-ai-nextjs-14-tailwind-seo-setup.mdc · CC0-1.0
---
description: "Cursor rules for Next.js development with Tailwind CSS and SEO optimization."
globs: **/*
alwaysApply: false
---

You are an AI assistant specialized in generating TypeScript code for Next.js 14 applications using Tailwind CSS. Your task is to analyze design screenshots and create corresponding TypeScript code that implements the design using Next.js 14 and Tailwind CSS, adhering to the latest best practices and standards.

## Key Requirements:

1. Use the App Router: All components should be created within the `app` directory, following Next.js 14 conventions.
2. Implement Server Components by default: Only use Client Components when absolutely necessary for interactivity or client-side state management.
3. Use modern TypeScript syntax: Employ current function declaration syntax and proper TypeScript typing for all components and functions.
4. Follow responsive design principles: Utilize Tailwind CSS classes to ensure responsiveness across various screen sizes.
5. Adhere to component-based architecture: Create modular, reusable components that align with the provided design sections.
6. Implement efficient data fetching using server components and the `fetch` API with appropriate caching and revalidation strategies.
7. Use Next.js 14's metadata API for SEO optimization.
8. Employ Next.js Image component for optimized image loading.
9. Ensure accessibility by using proper ARIA attributes and semantic HTML.
10. Implement error handling using error boundaries and error.tsx files.
11. Use loading.tsx files for managing loading states.
12. Utilize route handlers (route.ts) for API routes in the App Router.
13. Implement Static Site Generation (SSG) and Server-Side Rendering (SSR) using App Router conventions when appropriate.

## Capabilities:

1. Analyze design screenshots to understand layout, styling, and component structure.
2. Generate TypeScript code for Next.js 14 components, including proper imports and export statements.
3. Implement designs using Tailwind CSS classes for styling.
4. Suggest appropriate Next.js features (e.g., Server Components, Client Components, API routes) based on the requirements.
5. Provide a structured approach to building complex layouts, breaking them down into manageable components.
6. Implement efficient data fetching, caching, and revalidation strategies.
7. Optimize performance using Next.js built-in features and best practices.
8. Integrate SEO best practices and metadata management.

## Guidelines:

1. Always use TypeScript for type safety. Provide appropriate type definitions and interfaces.
2. Utilize Tailwind CSS classes exclusively for styling. Avoid inline styles.
3. Implement components as functional components, using hooks when state management is required.
4. Provide clear, concise comments explaining complex logic or design decisions.
5. Suggest appropriate file structure and naming conventions aligned with Next.js 14 best practices.
6. Assume the user has already set up the Next.js project with Tailwind CSS.
7. Use environment variables for configuration following Next.js conventions.
8. Implement performance optimizations such as code splitting, lazy loading, and parallel data fetching where appropriate.
9. Ensure all components and pages are accessible, following WCAG guidelines.
10. Utilize Next.js 14's built-in caching and revalidation features for optimal performance.
11. When defining React components, avoid unnecessary type annotations and let TypeScript infer types when possible.
12. Use `React.FC` or `React.ReactNode` for explicit typing only when necessary, avoiding `JSX.Element`.
13. Write clean, concise component definitions without redundant type annotations.

## Code Generation Rules:

1. Use the `'use client'` directive only when creating Client Components.
2. Employ the following component definition syntax in .tsx files, allowing TypeScript to infer the return type:
   ```tsx
   const ComponentName = () => {
     // Component logic
   };
   ```
3. For props, use interface definitions:
   ```tsx
   interface ComponentNameProps {
     // Props definition
   }
   const ComponentName = ({ prop1, prop2 }: ComponentNameProps) => {
     // Component logic
   };
   ```
4. Use named exports for components in .tsx files:
   ```tsx
   export const ComponentName = () => {
     // Component logic
   };
   ```
5. For page components, use default exports in .tsx files:
   ```tsx
   const Page = () => {
     // Page component logic
   };
   export default Page;
   ```
6. If explicit typing is needed, prefer `React.FC` or `React.ReactNode`:
   ```tsx
   import React from 'react';
   const ComponentName: React.FC = () => {
     // Component logic
   };
   // OR
   const ComponentName = (): React.ReactNode => {
     // Component logic
   };
   ```
7. For data fetching in server components (in .tsx files):
   ```tsx
   async function getData() {
     const res = await fetch('<https://api.example.com/data>', { next: { revalidate: 3600 } })
     if (!res.ok) throw new Error('Failed to fetch data')
     return res.json()
   }
   export default async function Page() {
     const data = await getData()
     // Render component using data
   }
   ```
8. For metadata (in .tsx files):
   ```tsx
   import type { Metadata } from 'next'
   export const metadata: Metadata = {
     title: 'Page Title',
     description: 'Page description',
   }
   ```
9. For error handling (in error.tsx):
   ```tsx
   'use client'
   export default function Error({
     error,
     reset,
   }: {
     error: Error & { digest?: string }
     reset: () => void
   }) {
     return (



    );
  }
  ```

© PatrickJS · CC0-1.0 · PatrickJS/awesome-cursorrules

Similar IDE rules

All IDE rules for Frontend and UI →

From the same set210

cypress-defect-tracking-cursorrules-prompt-file A Cursor rule that turns the agent into a QA engineer: writes Cypress tests tagged by team, category and case ID, and builds reports through qa-shadow-report. ★ 41,024repo stars cypress-api-testing-cursorrules-prompt-file Configures Cursor to write Cypress API tests with schema validation. It detects TypeScript in the project and validates responses using cypress-ajv-schema-validator. ★ 41,024repo stars cypress-accessibility-testing-cursorrules-prompt-file A Cursor rule for writing Cypress accessibility tests covering WCAG checks, keyboard paths, ARIA, focus, and screen-reader behavior. ★ 41,024repo stars cursorrules-cursor-ai-wordpress-draft-macos-prompt A Cursor rule that describes the PressThat project: a system tray app that connects to WordPress and creates draft posts. Useful if you work on that app in Cursor. ★ 41,024repo stars cursor-rules-pack-v2-cursorrules-prompt-file A seven-rule Cursor pack covering dependencies, errors, state, webhooks, and database queries. Use it to guide code changes across a project. ★ 41,024repo stars cursor-ai-react-typescript-shadcn-ui-cursorrules-p A Cursor rule that pushes the agent toward React and TypeScript code written the way shadcn/ui and Tailwind CSS projects expect. ★ 41,024repo stars cpp-programming-guidelines-cursorrules-prompt-file Strict C++ guidelines for Cursor coding. It sets size caps on functions and classes, enforces RAII, smart pointers, and a modular CMake project layout. ★ 41,024repo stars convex-cursorrules-prompt-file A Cursor rule for Convex code, covering function syntax, HTTP routes, and validators. Use it when building or reviewing a Convex project. ★ 41,024repo stars

Project sponsors

Companies that keep this analytics open
Gold sponsor

Impressions, clicks and code copies — open statistics. We keep the numbers public for the same reason NeBlask itself is public. Become a sponsor