Expand each category with body copy, highlights, supply steps, and FAQ in fa/en/ar, and surface livedata oil benchmarks on the oil page.
Co-authored-by: Cursor <cursoragent@cursor.com>
A relative Location is invalid in Next.js 15 middleware; the Host header is the public site while nextUrl stays on the PM2 bind address.
Co-authored-by: Cursor <cursoragent@cursor.com>
Next.js 15 site for گروه بازرگانی بین المللی آریو مجد آسیا, rebuilt from
majdtrading.com. Persian, English and Arabic; RTL and LTR.
- Pages: home, about, contact, six product categories, blog index and detail
- i18n: prose in per-locale JSON, structure in TypeScript, drift checked by
`npm run i18n:check`. Blog stays single-language by design
- Meshkee backend: blog content, tenant resolution, session via the customer
portal, and /meshkee/sitemap-config.json
- Live market data from livedata.ir, cached server-side once a minute
- Self-hosted fonts: IRANYekan (fa), IBM Plex Sans Arabic (ar), Space Grotesk
and BBH Bartle (Latin)
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>