next-app

Struktur App Router, komponen React, client vs server, dan pola rendering di 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).

Lebih banyak skill dari contentstack

cms-assets
contentstack
Memberikan saran kepada pengembang tentang pengorganisasian, pengiriman, dan transformasi aset di Contentstack. Mencakup struktur folder, transformasi Image Delivery API, penerbitan…
cms-branches-aliases
contentstack
Memberi saran kepada pengembang tentang penggunaan cabang Contentstack untuk pengembangan konten terisolasi dan alias untuk deployment konten tanpa downtime. Mencakup strategi cabang,…
cms-data-modeling-best-practices
contentstack
Pandu pengembang untuk memodelkan konten di Contentstack menggunakan struktur yang paling sederhana dan dapat digunakan kembali. Skill ini menjelaskan kapan menggunakan tipe konten, referensi, global…
cms-live-preview-visual-builder-support-assistant
contentstack
Diagnosis dan panduan implementasi Contentstack Live Preview dan Visual Builder. Lacak konteks pratinjau, identifikasi kontrak yang rusak, dan rekomendasikan…
cms-releases
contentstack
Memberi saran kepada developer tentang penggunaan Contentstack Releases untuk deployment konten atomik yang terkoordinasi. Mencakup pembuatan release, manajemen item, deployment bertahap,…
cms-roles-permissions
contentstack
Memberi saran kepada pengembang tentang merancang peran, izin, tim, dan akses token di Contentstack. Menjelaskan peran bawaan, peran kustom, penggabungan izin,…
cms-taxonomy
contentstack
Memberi saran kepada pengembang tentang penggunaan Contentstack Taxonomy untuk klasifikasi konten hierarkis terstruktur dan filtering sisi pengiriman. Mencakup taksonomi vs tag,...
cms-tokens-authentication
contentstack
Memberikan saran kepada pengembang tentang cara memilih metode autentikasi Contentstack dan jenis token yang tepat untuk kasus penggunaan frontend, backend, otomasi, dan aplikasi pihak ketiga.