next-app

Cấu trúc App Router, các component React, client so với server, và các mẫu rendering trong kickstart-next.

npx skills add https://github.com/contentstack/kickstart-next --skill next-app

Next.js app – kickstart-next

When to use

  • You are adding or changing routes, layouts, or UI components.
  • You are deciding client vs server components or how preview mode loads data.

Instructions

App Router

  • app/layout.tsx is the root layout; app/page.tsx is the home route.
  • app/page.tsx is an async Server Component when not in preview: it calls getPage("/") and passes the result to the default import from @/components/Page.

Preview path (client)

  • components/Preview.tsx is a Client Component ("use client"). It initializes live preview in useEffect, subscribes to ContentstackLivePreview.onEntryChange, and refetches via getPage(path) when the URL path changes.

Page UI component

  • components/Page.tsx default export is imported elsewhere as Page (import Page from "@/components/Page"). The function implementing it is named ContentDisplay inside the file; treat the public name as Page when wiring props.
  • It renders title, description, next/image for assets, sanitized rich HTML via isomorphic-dompurify and dangerouslySetInnerHTML, and modular blocks with VB_EmptyBlockParentClass for empty Visual Builder state.
  • Spread page?.$ / block $ attributes onto DOM nodes so Live Preview can bind fields.

Images

  • Use next/image for remote images. Remote hostnames must stay allowed in next.config.mjs (images.remotePatterns and optional env hostname).

Imports

  • Path alias @/* maps to the repo root per tsconfig.json (e.g. @/lib/contentstack, @/components/Page).

Thêm skills từ contentstack

cms-assets
contentstack
Hướng dẫn các nhà phát triển cách tổ chức, phân phối và chuyển đổi tài nguyên trong Contentstack. Bao gồm cấu trúc thư mục, các phép chuyển đổi của Image Delivery API, xuất bản…
cms-branches-aliases
contentstack
Tư vấn cho nhà phát triển về cách sử dụng Contentstack branches để phát triển nội dung độc lập và aliases để triển khai nội dung không gián đoạn. Bao gồm chiến lược branch,…
cms-data-modeling-best-practices
contentstack
Hướng dẫn các nhà phát triển mô hình hóa nội dung trong Contentstack bằng cấu trúc tái sử dụng đơn giản nhất. Kỹ năng này giải thích khi nào nên sử dụng loại nội dung, tham chiếu, toàn cục…
cms-live-preview-visual-builder-support-assistant
contentstack
Chẩn đoán và hướng dẫn triển khai Contentstack Live Preview và Visual Builder. Theo dõi ngữ cảnh xem trước, xác định hợp đồng bị hỏng, và đề xuất…
cms-releases
contentstack
Tư vấn cho nhà phát triển về cách sử dụng Contentstack Releases để triển khai nội dung đồng bộ và nguyên tử. Bao gồm tạo bản phát hành, quản lý mục, triển khai theo giai đoạn,…
cms-roles-permissions
contentstack
Tư vấn cho các nhà phát triển về việc thiết kế vai trò, quyền hạn, nhóm và quyền truy cập token trong Contentstack. Giải thích vai trò tích hợp sẵn, vai trò tùy chỉnh, việc hợp nhất quyền hạn,…
cms-taxonomy
contentstack
Tư vấn cho nhà phát triển về cách sử dụng Contentstack Taxonomy để phân loại nội dung có cấu trúc, phân cấp và lọc phía phân phối. Bao gồm sự khác biệt giữa taxonomy và tags,…
cms-tokens-authentication
contentstack
Tư vấn cho nhà phát triển cách chọn phương thức xác thực Contentstack và loại token phù hợp cho các trường hợp sử dụng frontend, backend, tự động hóa và ứng dụng bên thứ ba.…