موقع إخباري احترافي مبني بـ Next.js 16 مع App Router، SSR/ISR، وتحسينات SEO متقدمة
This project includes comprehensive SEO and performance optimizations:
- Image optimization (AVIF, WebP, lazy loading)
- Core Web Vitals improvements
- Enhanced internal linking with breadcrumbs
- Structured data (Schema.org)
- Comprehensive caching strategy
- RSS feed and sitemap
- PWA manifest
- Security headers
See SEO_OPTIMIZATION_GUIDE.md and QUICK_START_SEO.md for details.
- Server-Side Rendering (SSR) للصفحات الديناميكية
- Incremental Static Regeneration (ISR) مع revalidate كل 60 ثانية
- Image Optimization تلقائي (AVIF/WebP)
- Code Splitting تلقائي
- Compression مفعّل (Gzip/Brotli)
- Metadata API ديناميكي لكل صفحة
- Sitemap.xml ديناميكي
- RSS Feed تلقائي
- robots.txt محسّن
- Structured Data (JSON-LD) لـ NewsArticle
- Open Graph و Twitter Cards
- دعم كامل للغة العربية (RTL)
- Tailwind CSS 4 للتنسيق
- shadcn/ui للمكونات
- Radix UI للعناصر التفاعلية
- Lucide Icons للأيقونات
- Cairo Font للخط العربي
- تصميم متجاوب (Mobile-First)
- HTTPS إجباري
- Security Headers مُطبقة
- Environment Variables آمنة
- DOMPurify لتنظيف HTML
nfoud-nextjs/
├── src/
│ ├── app/ # App Router
│ │ ├── layout.tsx # Layout رئيسي
│ │ ├── page.tsx # الصفحة الرئيسية
│ │ ├── article/[slug]/ # صفحة المقال
│ │ ├── politics/ # قسم السياسة
│ │ ├── economy/ # قسم الاقتصاد
│ │ ├── local/ # قسم المحليات
│ │ ├── sports/ # قسم الرياضة
│ │ ├── live/ # الأحداث الحية
│ │ ├── about/ # من نحن
│ │ ├── contact/ # اتصل بنا
│ │ ├── sitemap.ts # Sitemap ديناميكي
│ │ ├── robots.ts # robots.txt
│ │ └── rss.xml/ # RSS Feed
│ ├── components/ # المكونات
│ │ ├── Navbar.tsx
│ │ ├── Footer.tsx
│ │ ├── NewsCard.tsx
│ │ ├── LiveEventCard.tsx
│ │ └── ui/ # مكونات UI
│ ├── lib/ # المكتبات المساعدة
│ │ ├── supabase.ts # Supabase client
│ │ ├── utils.ts # دوال مساعدة
│ │ └── constants.ts # الثوابت
│ └── types/ # أنواع TypeScript
│ └── news.ts
├── public/ # الملفات الثابتة
├── env.template # قالب متغيرات البيئة
├── next.config.ts # تكوين Next.js
├── tailwind.config.ts # تكوين Tailwind
├── QUICK_START.md # دليل البدء السريع
├── MIGRATION_GUIDE.md # دليل التحويل
└── DEPLOYMENT_GUIDE.md # دليل النشر الكامل
cp env.template .env.localnpm install --legacy-peer-depsnpm run dev# تطوير
npm run dev # تشغيل بيئة التطوير
# إنتاج
npm run build # بناء للإنتاج
npm start # تشغيل نسخة الإنتاج
# أدوات
npm run lint # فحص الأخطاءأنشئ ملف .env.local بالمتغيرات التالية:
NEXT_PUBLIC_SUPABASE_URL=https://vraxaknyauqlnyardhla.supabase.co
NEXT_PUBLIC_SUPABASE_ANON_KEY=your_anon_key_here
NEXT_PUBLIC_SITE_URL=https://nfoud.com| الصفحة | المسار | الوصف |
|---|---|---|
| الرئيسية | / |
آخر الأخبار والأحداث الحية |
| المقال | /article/[slug] |
صفحة المقال الكاملة |
| السياسة | /politics |
أخبار سياسية |
| الاقتصاد | /economy |
أخبار اقتصادية |
| المحليات | /local |
أخبار محلية |
| الرياضة | /sports |
أخبار رياضية |
| الأحداث الحية | /live |
تغطيات مباشرة |
| حدث مباشر | /live/[id] |
صفحة الحدث المباشر |
| جميع الأخبار | /all-news |
كل الأخبار |
| من نحن | /about |
عن الموقع |
| اتصل بنا | /contact |
معلومات التواصل |
- Framework: Next.js 16.1 (App Router)
- Language: TypeScript 5.8
- Styling: Tailwind CSS 4
- UI Components: shadcn/ui + Radix UI
- Database: Supabase (PostgreSQL)
- Icons: Lucide React
- Forms: React Hook Form + Zod
- Date: date-fns
- Sanitization: isomorphic-dompurify
export const revalidate = 60; // إعادة التحقق كل 60 ثانية// next.config.ts
images: {
formats: ['image/avif', 'image/webp'],
remotePatterns: [...]
}جميع الصفحات Server Components افتراضياً لتقليل JavaScript المرسل للعميل
export async function generateMetadata({ params }): Promise<Metadata> {
// Metadata ديناميكي لكل صفحة
}// JSON-LD Schema لـ NewsArticle
{
"@context": "https://schema.org",
"@type": "NewsArticle",
...
}/sitemap.xml- Sitemap ديناميكي/rss.xml- RSS Feed تلقائي/robots.txt- محسّن لمحركات البحث
# عبر GitHub
1. ادفع الكود إلى GitHub
2. اربط المشروع في Vercel
3. أضف متغيرات البيئة
4. انشر!
# عبر CLI
vercel --prodراجع DEPLOYMENT_GUIDE.md للتفاصيل الكاملة
- QUICK_START.md - ابدأ في 5 دقائق
- MIGRATION_GUIDE.md - دليل التحويل من Vite
- DEPLOYMENT_GUIDE.md - النشر الكامل
تحقق من next.config.ts و .env.local
npm install --legacy-peer-depsrm -rf .next
npm run build- Next.js: nextjs.org/docs
- Supabase: supabase.com/docs
- Tailwind: tailwindcss.com/docs
جميع الحقوق محفوظة © 2025 شبكة نفود الإخبارية
تم التحويل من Vite + React SPA إلى Next.js SSR/ISR بنجاح ✅