// Daoob — Sample feasibility report // Olaya residential-commercial plot (Plan 2703 · Parcel 414 · 750 m²) // Reference: DRB-2026-00147 · 18 May 2026 const Report = ({ t, lang, setPage }) => { const isAr = lang === "ar"; const meta = { ref: "DRB-2026-00147", date_ar: "18 مايو 2026", date_en: "18 May 2026", title_ar: "تقرير تحليل وجدوى عقارية", title_en: "Real-estate feasibility study report", subtitle_ar:"الرياض · حي العليا · أرض سكني تجاري", subtitle_en:"Riyadh · Olaya district · Mixed-use plot", plan: "2703", parcel: "414", area: 750, }; return (
{/* Control bar */}
{isAr ? "نموذج توضيحي" : "Illustrative preview"} · {meta.ref}
{isAr ? "تقرير استرشادي — غير معتمد رسمياً" : "Advisory · not officially certified"}
); }; // ============================ PAGE 1 — Cover ============================ const ReportCover = ({ meta, isAr }) => (
Daoob
{isAr ? "تقرير تحليل وجدوى عقارية" : "Real-estate feasibility report"}
{isAr ? "مدعوم بالذكاء الاصطناعي · استرشادي غير معتمد" : "AI-powered · advisory, not officially certified"}

{isAr ? "مدينة الرياض · حي العليا" : "Riyadh · Olaya District"}

{isAr ? "أرض سكني تجاري" : "Mixed-use (residential / commercial)"}
{isAr ? "المخطط" : "Plan №"}
{meta.plan}
{isAr ? "القطعة" : "Parcel №"}
{meta.parcel}
{isAr ? "المساحة" : "Area"}
{meta.area} {isAr ? "م²" : "m²"}
{isAr ? "تاريخ التقرير" : "Report date"}
{isAr ? meta.date_ar : meta.date_en}
{isAr ? "رقم المرجع" : "Reference"}
{meta.ref}
{isAr ? "أُنجز بواسطة" : "Prepared by"}
{isAr ? "وكلاء دؤوب الذكاء" : "Daoob AI agents"}
); // ============================ PAGE 2 — Executive Summary ============================ const ReportExec = ({ meta, isAr }) => (

{isAr ? "يقدّم هذا التقرير تحليلاً استرشادياً لأداء فرصة عقارية في حي العليا بمدينة الرياض، اعتماداً على البيانات المتاحة ومدخلات الدراسة ونماذج التحليل المدعومة بالذكاء الاصطناعي." : "This report provides an advisory analysis of a real-estate opportunity in the Olaya district of Riyadh, based on available data, study inputs and AI-supported analytical models."}

{isAr ? "تشير النتائج إلى أن المشروع يحقق عائداً سنوياً تقديرياً على حقوق الملكية يبلغ 37.0%، مع فترة استرداد تقديرية تبلغ 9.0 سنوات، وصافي دخل تشغيلي سنوي قدره 1,689,120 ريالاً سعودياً." : "Results show a projected annual return on equity of 37.0%, with an estimated payback period of 9.0 years and net annual operating income of SAR 1,689,120."}

{isAr ? "التوصية الاستثمارية" : "Investment recommendation"}
{isAr ? "المضي في دراسة الاستثمار والتحقق النهائي قبل الشراء" : "Proceed with investment study and final verification before purchase"}

{isAr ? "يظهر المشروع عائداً أعلى من متوسط السوق ويقع في موقع استراتيجي مدعوم بقربه من مسارات النقل والخدمات. تقييم دؤوب: فرصة قوية — 82 من 100." : "The project shows a return above market average and sits in a strategic location supported by proximity to transit and services. Daoob score: Strong opportunity — 82/100."}

{isAr ? "نوع المشروع" : "Project type"} {isAr ? "سكني تجاري" : "Mixed-use (res/com)"}
{isAr ? "الموقع" : "Location"} {isAr ? "العليا، الرياض" : "Olaya, Riyadh"}
{isAr ? "مساحة الأرض" : "Land area"} 750 {isAr ? "م²" : "m²"}
{isAr ? "إجمالي المسطحات" : "Total built area"} 2,250 {isAr ? "م²" : "m²"}
{isAr ? "الحد الأقصى للأدوار" : "Max floors"} 5 {isAr ? "أدوار" : "floors"}
{isAr ? "معامل البناء (FAR)" : "FAR"} 3.0
{isAr ? "نسبة التغطية" : "Coverage"} 60%
{isAr ? "الارتدادات" : "Setbacks"} 5 / 3 / 3 m
{isAr ? "عدد الواجهات" : "Frontages"} 2
{isAr ? "تاريخ التقرير" : "Report date"} {isAr ? meta.date_ar : meta.date_en}
); // ============================ PAGE 3 — Market & Location ============================ const ReportMarket = ({ meta, isAr }) => (

{isAr ? "يقع العقار في حي العليا، أحد أكثر الأحياء التجارية حيوية في الرياض. يتميز الموقع بقربه من محطة مترو العليا على الخط الأزرق، إضافة إلى قربه من برج المملكة، مركز الفيصلية، ومركز الملك عبدالله المالي. كما تعكس مؤشرات السوق ارتفاعاً في أسعار الأراضي خلال السنة الأخيرة وعلى مدى ثلاث سنوات." : "The property sits in Olaya — one of Riyadh's most active commercial districts — near Olaya metro station on the Blue Line, alongside Kingdom Tower, Al Faisaliah Centre and KAFD. Market indicators reflect rising land prices over the past year and the past three years."}

{isAr ? "المؤشر" : "Indicator"} {isAr ? "القيمة" : "Value"} {isAr ? "المؤشر" : "Indicator"} {isAr ? "القيمة" : "Value"}
{isAr ? "متوسط سعر الأرض" : "Avg. land price"} {isAr ? "7,500 ر.س/م²" : "7,500 SAR/m²"} {isAr ? "متوسط الإيجار التجاري" : "Avg. commercial rent"}{isAr ? "1,200 ر.س/م²" : "1,200 SAR/m²"}
{isAr ? "معدل الإشغال" : "Occupancy"} 92% {isAr ? "اتجاه الأسعار سنة" : "12-mo price trend"} +8.5%
{isAr ? "اتجاه الأسعار 3 سنوات" : "3-yr price trend"} +22.0% {isAr ? "معدل الرسملة" : "Cap rate"} 7.5%
{isAr ? "السكان ضمن 2 كم" : "Population within 2 km"} 45,000 {isAr ? "متوسط دخل الأسرة" : "Avg. household income"}{isAr ? "18,000 ر.س/شهر" : "18,000 SAR/mo"}
{isAr ? "أقرب محطة مترو" : "Nearest metro"} {isAr ? "الخط الأزرق — 800 م" : "Blue Line — 800 m"}{isAr ? "طبيعة الطلب" : "Demand profile"} {isAr ? "تجاري وسكني مرتفع" : "High mixed-use"}

{isAr ? "نقاط القوة" : "Strengths"}

    {(isAr ? [ "موقع استراتيجي على محور رئيسي", "قرب الخدمات والمرافق الحيوية", "طلب مرتفع على الوحدات التجارية", "قرب محطة مترو بمسافة 800 م" ] : [ "Strategic location on a primary axis", "Proximity to key amenities and services", "High demand for commercial units", "Metro station within 800 m" ]).map((it, i) => (
  • {it}
  • ))}

{isAr ? "التحديات" : "Challenges"}

    {(isAr ? [ "منافسة عالية في المنطقة", "أسعار أراضٍ مرتفعة نسبياً", "اشتراطات بناء تحتاج تحققاً نهائياً", "حركة مرور كثيفة في أوقات الذروة" ] : [ "High competition in the area", "Relatively high land prices", "Building regulations need final verification", "Heavy traffic at peak hours" ]).map((it, i) => (
  • {it}
  • ))}

{isAr ? "خلاصة الموقع: مناسب لمشروع سكني تجاري متوسط الحجم، بشرط ضبط تكلفة الدخول والتحقق من الاشتراطات النهائية قبل اتخاذ قرار الشراء أو التطوير." : "Location verdict: suitable for a mid-size mixed-use development — subject to controlling entry cost and verifying final regulations before purchase or development."}

); // ============================ PAGE 4 — Detailed Financial Analysis ============================ const ReportFin = ({ meta, isAr }) => (

{isAr ? "توزيع هيكل التكاليف بين الأرض، البناء، والمصاريف التطويرية." : "Breakdown of project costs across land, construction and development."}

{isAr ? "هيكل التكاليف" : "Cost Structure"}

{isAr ? "البند" : "Item"} {isAr ? "المبلغ (ر.س)" : "Amount (SAR)"} {isAr ? "%" : "%"}
{isAr ? "تكلفة الأرض" : "Land cost"} 5,625,00037%
{isAr ? "تكلفة البناء" : "Construction"} 7,875,00052%
{isAr ? "رسوم التصميم" : "Design fees"} 393,750 3%
{isAr ? "رسوم الإشراف" : "Supervision"} 236,250 2%
{isAr ? "التراخيص والتصاريح" : "Permits"} 85,000 1%
{isAr ? "البنية التحتية" : "Infrastructure"} 120,000 1%
{isAr ? "احتياطي الطوارئ" : "Contingency"} 871,000 6%
{isAr ? "إجمالي تكلفة المشروع" : "Total project cost"}15,206,000100%

{isAr ? "هيكل الإيرادات السنوية" : "Annual Revenue Structure"}

{isAr ? "البند" : "Item"} {isAr ? "المبلغ (ر.س)" : "Amount (SAR)"}
{isAr ? "إجمالي الإيجار السنوي" : "Gross annual rent"} 2,160,000
{isAr ? "خصم الشواغر 8%" : "Vacancy allowance (8%)"} (172,800)
{isAr ? "صافي الإيجار الفعّال" : "Net effective rent"} 1,987,200
{isAr ? "مصاريف التشغيل والصيانة 15%" : "OPEX & maintenance (15%)"} (298,080)
{isAr ? "صافي الدخل التشغيلي (NOI)" : "Net Operating Income"}1,689,120

{isAr ? "هيكل التمويل المقترح" : "Proposed Financing"}

{isAr ? "التمويل الذاتي 30%" : "Equity (30%)"} 4,561,800
{isAr ? "القرض البنكي 70%" : "Bank loan (70%)"} 10,644,200
{isAr ? "معدل الفائدة السنوية" : "Annual interest rate"}6.5%
{isAr ? "مدة القرض" : "Loan term"} 15 {isAr ? "سنة" : "yrs"}
{isAr ? "القسط السنوي" : "Annual installment"} 1,132,040
{isAr ? "صافي التدفق بعد خدمة الدين" : "Cash flow after debt service"}557,080
); // ============================ PAGE 5 — Performance + Scenarios ============================ const ReportPerf = ({ meta, isAr }) => (
{[ { k: isAr ? "معدل الرسملة" : "Cap rate", v: "11.1%", rate: isAr ? "جيد" : "Good" }, { k: isAr ? "العائد على الملكية" : "ROE", v: "37.0%", rate: isAr ? "ممتاز" : "Excellent", featured: true }, { k: isAr ? "العائد النقدي" : "Cash-on-cash", v: "12.2%", rate: isAr ? "جيد" : "Good" }, { k: isAr ? "فترة الاسترداد" : "Payback period", v: "9.0", rate: isAr ? "سنة" : "yrs" }, { k: isAr ? "معدل العائد الداخلي" : "IRR", v: "31.5%", rate: isAr ? "ممتاز" : "Excellent", featured: true }, { k: isAr ? "مكسب رأس المال" : "Capital gain", v: "7.31", rate: isAr ? "م.ر.س" : "M SAR" }, ].map((k, i) => (
{k.k}
{k.v}
{k.rate}
))}
{isAr ? "المؤشر" : "Indicator"} {isAr ? "متحفظ" : "Bear"} {isAr ? "أساسي" : "Base"} {isAr ? "متفائل" : "Bull"}
{isAr ? "معدل الإشغال" : "Occupancy"} 82% 92% 95%
{isAr ? "الإيجار م² سنوياً" : "Rent SAR/m²/yr"} 1,020 1,200 1,380
{isAr ? "صافي الدخل التشغيلي" : "NOI (SAR)"} 1,279,6921,689,1202,005,830
{isAr ? "العائد على الملكية" : "ROE"} 28.1% 37.0% 44.0%
{isAr ? "فترة الاسترداد" : "Payback (years)"} 11.9 9.0 7.6
); // ============================ PAGE 6 — Risks & Recommendations ============================ const ReportRisks = ({ meta, isAr }) => (
{(isAr ? [ { l: "مخاطر السوق", v: "متوسطة", p: 55, c: "med", d: "تباطؤ الطلب على العقارات التجارية في حال تراجع الاقتصاد. التخفيف: تنويع المستأجرين وعقود طويلة الأجل." }, { l: "مخاطر تنظيمية", v: "منخفضة", p: 25, c: "low", d: "تغيّر اشتراطات البناء أو الرسوم التنظيمية. التخفيف: متابعة التحديثات والتحقق من الجهة المختصة قبل الالتزام النهائي." }, { l: "مخاطر التشغيل", v: "متوسطة", p: 50, c: "med", d: "صعوبة تأجير المساحات أو ارتفاع تكاليف الصيانة. التخفيف: استهداف مستأجرين رئيسيين قبل بدء البناء." }, { l: "مخاطر التمويل والتنفيذ", v: "منخفضة–متوسطة", p: 40, c: "med", d: "ارتفاع أسعار الفائدة أو تأخر البناء أو تجاوز التكاليف. التخفيف: تثبيت الفائدة عند التعاقد وإضافة احتياطي طوارئ." }, ] : [ { l: "Market risk", v: "Medium", p: 55, c: "med", d: "Slowdown in commercial demand during economic downturn. Mitigation: diversify tenants and use long-term leases." }, { l: "Regulatory risk", v: "Low", p: 25, c: "low", d: "Changes to building regulations or fees. Mitigation: monitor updates and verify with authorities before final commitment." }, { l: "Operational risk", v: "Medium", p: 50, c: "med", d: "Difficulty leasing space or higher maintenance costs. Mitigation: secure anchor tenants before construction." }, { l: "Financing & execution risk", v: "Low–Med",p: 40, c: "med", d: "Rising rates, construction delays, or cost overruns. Mitigation: lock in interest at contract and budget a contingency reserve." }, ]).map((r, i) => (
{r.l} {r.v}

{r.d}

))}
    {(isAr ? [ "المضي في الاستثمار عند الوصول إلى سعر دخول مناسب يؤكد جدوى المؤشرات المالية.", "تأمين التمويل البنكي قبل شراء الأرض للحصول على شروط تمويل واضحة.", "استكمال دراسة التربة والمسح الطبوغرافي قبل مرحلة التصميم.", "التعاقد مع مكتب هندسي متخصص لتحقيق كفاءة أعلى في المساحات والتكاليف.", "البحث عن مستأجرين رئيسيين قبل بدء البناء لتقليل مخاطر الإشغال.", "متابعة مشاريع مترو الرياض والبنية التحتية المحيطة لتعظيم قيمة العقار.", ] : [ "Proceed with the investment at an entry price that confirms the financial indicators.", "Secure bank financing before purchasing the land to lock in clear terms.", "Complete soil study and topographic survey before the design stage.", "Engage a specialised architecture firm to maximise space and cost efficiency.", "Pre-lease to anchor tenants before construction to reduce vacancy risk.", "Monitor Riyadh metro and surrounding infrastructure projects to maximise property value.", ]).map((r, i) => (
  1. {String(i + 1).padStart(2, "0")} {r}
  2. ))}
); // ============================ PAGE 7 — Methodology + Disclaimer ============================ const ReportMethod = ({ meta, isAr }) => (

{isAr ? "اعتمد التقرير على البيانات المتاحة ومدخلات العقار، ثم عالجتها نماذج تحليلية ووكلاء ذكاء اصطناعي متخصصون في قراءة الموقع، السوق، التكاليف، الإيرادات، المخاطر، والسيناريوهات. تُستخدم النتائج كدعم لاتخاذ القرار ولا تغني عن التحقق المهني المستقل عند الحاجة." : "This report draws on available data and property inputs, processed through analytical models and AI agents specialised in reading location, market, cost, revenue, risk, and scenarios. Results support — but do not replace — independent professional verification when needed."}

{(isAr ? [ "إدخال بيانات العقار", "تحليل الموقع والسوق", "نمذجة التكاليف والعوائد", "تقييم المخاطر", "إصدار التقرير", ] : [ "Property data input", "Location & market analysis", "Cost & return modelling", "Risk assessment", "Report issuance", ]).map((s, i) => (
0{i + 1}
{s}
))}
{isAr ? "إخلاء مسؤولية: " : "Disclaimer: "} {isAr ? "هذا التقرير استرشادي ومبني على البيانات المتاحة والذكاء الاصطناعي. لا يُعد بديلاً عن التقييم العقاري الرسمي من مقيّم معتمد، أو الاستشارة القانونية، أو الاستشارة المالية، أو الاستشارة الهندسية المتخصصة. القرارات الاستثمارية مسؤولية المستثمر، ويُنصح بالتحقق المستقل قبل اتخاذ أي التزام مالي." : "This report is advisory and based on available data and AI analysis. It is not a substitute for an official appraisal from a certified valuer, legal counsel, financial advice, or specialised engineering consultation. Investment decisions remain the investor's responsibility, and independent verification is recommended before any financial commitment."}
daoob-ai.com · wecare@daoob-ai.com
{isAr ? "تقرير تحليل وجدوى عقارية — مدعوم بالذكاء الاصطناعي" : "Real-estate feasibility report — AI-powered"}
); // ============================ Shared sub-components ============================ const Watermark = ({ isAr }) => (
{isAr ? "نموذج توضيحي · دؤوب" : "ILLUSTRATIVE · DAOOB"}
); const RHeader = ({ isAr }) => (
{isAr ? "تقرير تحليل وجدوى عقارية" : "Real-estate feasibility study"}
); const RFooter = ({ meta, page, isAr }) => ( ); const Section = ({ no, h, children }) => (
{no}

{h}

{children}
); const KpiCard = ({ label, value, unit, featured }) => (
{value}{unit}
{label}
); const RevenueChart = ({ isAr }) => { const rows = [ { y: 1, rev: 25, profit: 5 }, { y: 2, rev: 38, profit: 12 }, { y: 3, rev: 58, profit: 22 }, { y: 4, rev: 75, profit: 34 }, { y: 5, rev: 92, profit: 48 }, ]; const W = 600, H = 200, padL = 40, padR = 16, padT = 20, padB = 36; const innerW = W - padL - padR; const innerH = H - padT - padB; const step = innerW / rows.length; const maxV = 100; const ySc = (v) => padT + innerH * (1 - v / maxV); return (
{isAr ? "إيرادات" : "Revenue"} {isAr ? "م.ر.س" : "M SAR"} {isAr ? "صافي الربح" : "Net profit"} {isAr ? "م.ر.س" : "M SAR"}
{[0, 25, 50, 75, 100].map(v => ( {v} ))} {rows.map((d, i) => { const cx = padL + step * (i + 0.5); const bw = step * 0.34; return ( {isAr ? `س.${d.y}` : `Yr ${d.y}`} {d.rev} ); })} `${i === 0 ? "M" : "L"} ${padL + step * (i + 0.5)} ${ySc(d.profit)}`).join(" ")} fill="none" stroke="#C9A266" strokeWidth="2.5" /> {rows.map((d, i) => ( ))}
); }; const CircuitDecor = ({ pos }) => (
); Object.assign(window, { Report });