Blog NextJS
قالب Blog NextJS هو مدونة جاهزة للإنتاج مبنية على Next.js 15 مع Jambo كـ CMS بدون رأس.
استيراد مخطط المجموعات
يتضمن القالب ملف jambo-blog-nextjs-schema.zip (في مجلد data/) لإنشاء جميع المجموعات الـ 11 دفعة واحدة:
- في لوحة التحكم الخاصة بـ Jambo، انقر على زر Import (أيقونة ↑)
- ارفع الملف
jambo-blog-nextjs-schema.zip - اختر إنشاء مشروع جديد وانقر على استيراد
للتوثيق الكامل، راجع النسخة الإنجليزية أو النسخة الفرنسية.
The Blog NextJS starter template is a production-ready blog built with Next.js 15 (App Router) and Jambo as the headless CMS backend. It includes a homepage, post listing, individual post pages, and category filtering.
What’s included
- Next.js 15 with App Router and React Server Components
- Tailwind CSS for styling
- Incremental Static Regeneration (ISR) — pages update automatically when content changes in Jambo
- RSS feed auto-generated from posts
- Dark mode support
- SEO-ready — Open Graph tags, sitemap, JSON-LD structured data
Getting started
1. Clone the template
git clone https://github.com/jambostack/jambo-blog-nextjscd jambo-blog-nextjsnpm install2. Connect to your Jambo project
Copy .env.example to .env.local and fill in your project details:
JAMBO_URL=https://your-jambo-domain.comJAMBO_PROJECT_ID=your-project-uuidJAMBO_API_TOKEN=your-api-token3. Set up the schema
In your Jambo project, create these collections (or use AI Studio to generate them):
Posts collection (posts):
title— text, requiredslug— slug, requiredexcerpt— longtextbody— richtextfeatured_image— mediacategory— relation →categoriespublished_at— datetime
Categories collection (categories):
name— text, requiredslug— slug, required
4. Run locally
npm run devOpen http://localhost:3000 to see the blog.
5. Deploy
The template is ready to deploy on Vercel, Netlify, or any Node.js host:
# Vercelvercel deploy
# Build for any hostnpm run build && npm startRevalidation webhook
Set up a Jambo webhook to automatically rebuild pages when you publish or update posts:
- In Project Settings → Webhooks, create a new webhook
- URL:
https://your-blog.com/api/revalidate?secret=YOUR_SECRET - Events:
entry.published,entry.updated,entry.deleted
The template includes a revalidation endpoint at app/api/revalidate/route.js.