MQ
QURASHI
Blog
MQ
MOHAMED QURASHI

© 2026 Mohamed Qurashi. All rights reserved.

Built with precisionDesigned for impactPowered by innovation
MQ
QURASHI
Blog
Back to Blog
Web Development

Next.js 15: App Router vs Pages Router — دليل شامل من الميدان

Mohamed Qurashi
May 1, 2026
7 min read
Next.js 15: App Router vs Pages Router — دليل شامل من الميدان

Share

TwitterFacebookLinkedIn

Tags

Next.js 15App RouterPages RouterReact Server Components

# Next.js 15: App Router vs Pages Router — دليل شامل من الميدان


Last month، I ran into a problem that cost us two days at Beyin. كنا نبني متجر إلكتروني لعميل في أبوظبي، واخترت Pages Router للسرعة. بعد أسبوع، اكتشفت إننا محتاجين Server Components للـ SEO—وكان لازم نعيد كتابة كل حاجة.


Why This Matters (and Why I Care)


صراحة، لو كنت بدأت بـ App Router من البداية، كنت وفرت 40% من وقت التطوير. Pages Router كان رائع—بس Next.js 15 جعلته اختيار للـ legacy. الفرق الحقيقي مش في الـ syntax، بل في طريقة التفكير: App Router يجبرك تتبنى React Server Components، وهذا يغير كل شي.


The Core Difference


App Router يستخدم `layout.tsx` + `page.tsx` بدلاً من `_app.tsx` القديم.


// App Router pattern — what we use now at Beyin

// app/products/page.tsx

export default async function ProductsPage() {

const products = await fetchProducts() // runs on server

return <ProductList products={products} />

}


// Pages Router — old way

// pages/products.tsx

export async function getServerSideProps() {

const products = await fetchProducts()

return { props: { products } }

}


Mistakes I Made


1. **خلطت بينهم في نفس المشروع** — Pages Router و App Router ما يشتغلون مع بعض بسهولة. اختر واحد من البداية.

2. **نسيت الـ loading.tsx** — في App Router، كل page تحتاج ملف `loading.tsx` منفصل. نسيتها وخسرت UX رهيب.

3. **استخدمت useEffect بدون داعي** — مع RSC، كثير من fetching يتم على السيرفر. وفرت 3 خطوات.


My Honest Take


Pages Router مستقر وممتاز للمشاريع الصغيرة. لكن لأي مشروع جديد—خاصة مع SEO أو data fetching معقد—App Router هو الخيار الوحيد المنطقي. Next.js 15 جعل Pages Router اختيار ثانوي، وصراحة، هذا صحيح.


---

*Mohamed Qurashi | Full-Stack Developer at Beyin Digital | [qurashi.dev](https://qurashi.dev)*


---

**Further reading:**

  • [Why is conditional processing of a sorted array faster than of an unsorted array](https://stackoverflow.com/questions/11227809/why-is-conditional-processing-of-a-sorted-array-faster-than-of-an-unsorted-array)
  • [How do I undo the most recent local commits in Git?](https://stackoverflow.com/questions/927358/how-do-i-undo-the-most-recent-local-commits-in-git)

  • **Related articles on this blog:**

  • [next js 15 features](/blog/next-js-15-features)
  • [react server components guide](/blog/react-server-components-guide)

  • Related Articles

    Next.js 15 Complete Guide: App Router & Server Components
    Web Development

    Next.js 15 Complete Guide: App Router & Server Components

    A practical, production-tested guide to Next.js 15 App Router and Server Components. Learn how to cut JavaScript bundles by 40% with real patterns from Beyin Digital.

    App vs Web in Next.js: Why I Finally Switched After 5 Years
    Web Development

    App vs Web in Next.js: Why I Finally Switched After 5 Years

    Discover the real differences between App Router and Pages Router in Next.js. Learn when to use each based on production experience from an SEO specialist in Dubai.