Enrich product category pages and show Brent and gas oil rates.

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>
This commit is contained in:
Alireza Hassani
2026-09-11 16:38:47 +03:30
co-authored by Cursor
parent c5c95745a3
commit a71107ae98
8 changed files with 829 additions and 23 deletions
+61
View File
@@ -0,0 +1,61 @@
# Majd Trading — Project Context
> Living document for AI assistants and developers.
> **Last updated:** 2026-09-11 — Enriched product category pages
## Overview
Corporate site for **Ario Majd Asia International Trading Group** (گروه بازرگانی بین‌المللی آریو مجد آسیا). Next.js App Router, flat design, fa / en / ar.
| Field | Value |
|-------|-------|
| Live reference | https://majdtrading.com |
| Stack | Next.js 15, React, TypeScript, Tailwind |
| Locales | `fa` (RTL, default), `en` (LTR), `ar` (RTL) |
| Brand | Primary `#1A3851`, accent `#FF214F` |
## Product category pages
Route: `/{locale}/products/[slug]`
Slugs: `oil`, `mineral`, `food`, `chemical`, `livestock`, `construction`
Each page now includes:
1. Hero + expanded intro / body copy
2. Available goods grid
3. Highlights (4 benefits)
4. Supply process (4 steps)
5. **Oil only:** live Brent (`400106`) + Gas oil (`400506`) rates from livedata.ir
6. FAQ (3 Q&As)
7. Other categories + inquiry CTA
### Where copy lives
- Structure (slugs, images): [`src/content/index.ts`](src/content/index.ts)
- Prose (fa/en/ar): [`src/i18n/locales/*.json`](src/i18n/locales/) under `products.categories.<slug>`
- Category shape: `title`, `latin`, `intro`, `body[]`, `goods[]`, `highlights[]`, `process[]`, `faq[{q,a}]`
- Shared chrome: `highlightsHeading`, `processHeading`, `faqHeading`, `ratesHeading`, `ratesNote`, …
After editing locales run `npm run i18n:check`.
### Market / oil rates
- Catalogue + display list: [`src/lib/market/instruments.ts`](src/lib/market/instruments.ts), [`displayed.ts`](src/lib/market/displayed.ts)
- Scraper: [`src/lib/market/livedata.ts`](src/lib/market/livedata.ts) (revalidate 60s)
- Homepage widget: [`MarketFrame`](src/components/MarketFrame.tsx)
- Oil product page filters snapshot quotes to Brent + Gas oil only
## Key commands
```bash
npm run dev
npm run build
npm run i18n:check
```
## Out of scope (still)
- Per-good detail pages / CMS product API
- Contact form backend
- Redesign of homepage category strip