mizan-bina-prices 1.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +27 -0
- package/data/current.json +64 -0
- package/package.json +13 -0
- package/prices.js +2 -0
package/README.md
ADDED
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# نشرة أسعار ميزان البناء (بتتحدث لوحدها كل يوم)
|
|
2
|
+
|
|
3
|
+
الأداة بتقرأ الملف `prices.js` من:
|
|
4
|
+
https://cdn.jsdelivr.net/npm/mizan-bina-prices@latest/prices.js
|
|
5
|
+
أول ما تتفتح. لو مش متاح (مفيش نت / الملف مش موجود) بتشتغل بآخر أسعار مدمجة فيها.
|
|
6
|
+
|
|
7
|
+
## التشغيل لأول مرة (مرة واحدة بس)
|
|
8
|
+
1. اعمل حساب على npmjs.com ← Access Tokens ← Generate New Token ← نوع **Automation** وانسخه.
|
|
9
|
+
2. في الريبو: Settings ← Secrets and variables ← Actions ← New repository secret ← الاسم `NPM_TOKEN` والقيمة التوكن.
|
|
10
|
+
3. Actions ← «تحديث أسعار ميزان البناء» ← Run workflow. أول تشغيل بينشر الباكدج، ومن بعدها بيشتغل لوحده كل يوم 8:30 الصبح بتوقيت دبي.
|
|
11
|
+
|
|
12
|
+
## بيعمل إيه كل يوم
|
|
13
|
+
- يدوّر على نشرات أسعار الحديد والأسمنت المصرية المنشورة آخر 36 ساعة، ويستخرج أسعار عز/بشاي/السويس/الجارحي/المصريين/المراكبي ومتوسط الأسمنت.
|
|
14
|
+
- حدود أمان: أي تغيير أكبر من 8% في يوم بيترفض، ولازم 4 شركات على الأقل للحديد ومصدرين للأسمنت.
|
|
15
|
+
- لو نجح: يحدّث `data/current.json` و`prices.js` وينشر نسخة جديدة ويمسح الكاش — والأداة تعرض «أسعار لحظية · آخر تحديث: …».
|
|
16
|
+
- لو فشل: مفيش حاجة بتتغير، والأداة بتفضل على آخر أسعار سليمة.
|
|
17
|
+
|
|
18
|
+
## الإمارات والسعودية وباقي الخامات
|
|
19
|
+
أسعارهم شهرية. عدّل `data/overrides.json` من GitHub (حتى من الموبايل)، مثال:
|
|
20
|
+
{"AE":{"steel":{"v":3200,"src_ar":"Emirates Steel أكتوبر 2026","src_en":"Emirates Steel October 2026"}}}
|
|
21
|
+
أول ما تحفظ، التحديث بيشتغل لوحده (حد الأمان هنا 25%).
|
|
22
|
+
|
|
23
|
+
## اختبار
|
|
24
|
+
node scripts/test.mjs ← يختبر استخراج الأرقام
|
|
25
|
+
MIZAN_OFFLINE=1 node scripts/update.mjs ← تشغيل من غير نت (overrides بس)
|
|
26
|
+
|
|
27
|
+
ملاحظة: لو غيّرت اسم الباكدج في package.json لازم يتغير في رابط الأداة كمان.
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
{
|
|
2
|
+
"date": "2026-09-24",
|
|
3
|
+
"EG": {
|
|
4
|
+
"steel": {
|
|
5
|
+
"v": 39750,
|
|
6
|
+
"src_ar": "نشرات 2026-09-24: عز 40,850 · بشاي 40,200 · السويس 39,950 · الجارحي 39,200 · المصريين 38,500 · المراكبي 39,800",
|
|
7
|
+
"src_en": "Bulletins 2026-09-24: Ezz 40,850 · Beshay 40,200 · Suez 39,950 · El Garhy 39,200 · Egyptian Steel 38,500 · El Marakby 39,800"
|
|
8
|
+
},
|
|
9
|
+
"cement": {
|
|
10
|
+
"v": 4200,
|
|
11
|
+
"src_ar": "نشرات 22/9/2026: متوسط الطن ~4,200",
|
|
12
|
+
"src_en": "Bulletins 22/9/2026: ~4,200 per ton"
|
|
13
|
+
},
|
|
14
|
+
"brick": {
|
|
15
|
+
"v": 4600,
|
|
16
|
+
"src_ar": "أسعار السوق 2026",
|
|
17
|
+
"src_en": "Market prices 2026"
|
|
18
|
+
},
|
|
19
|
+
"sand": {
|
|
20
|
+
"v": 190,
|
|
21
|
+
"src_ar": "أسعار السوق 2026",
|
|
22
|
+
"src_en": "Market prices 2026"
|
|
23
|
+
},
|
|
24
|
+
"gravel": {
|
|
25
|
+
"v": 420,
|
|
26
|
+
"src_ar": "أسعار السوق 2026",
|
|
27
|
+
"src_en": "Market prices 2026"
|
|
28
|
+
}
|
|
29
|
+
},
|
|
30
|
+
"AE": {
|
|
31
|
+
"steel": {
|
|
32
|
+
"v": 3150,
|
|
33
|
+
"src_ar": "Emirates Steel · سبتمبر 2026",
|
|
34
|
+
"src_en": "Emirates Steel · September 2026"
|
|
35
|
+
},
|
|
36
|
+
"readymix": {
|
|
37
|
+
"v": 350,
|
|
38
|
+
"src_ar": "سوق الإمارات 2026",
|
|
39
|
+
"src_en": "UAE market 2026"
|
|
40
|
+
},
|
|
41
|
+
"block": {
|
|
42
|
+
"v": 4.75,
|
|
43
|
+
"src_ar": "FEPY سبتمبر 2026",
|
|
44
|
+
"src_en": "FEPY September 2026"
|
|
45
|
+
}
|
|
46
|
+
},
|
|
47
|
+
"SA": {
|
|
48
|
+
"steel": {
|
|
49
|
+
"v": 3450,
|
|
50
|
+
"src_ar": "مدار 21/9/2026: سابك والراجحي",
|
|
51
|
+
"src_en": "Madar 21/9/2026: SABIC & Al Rajhi"
|
|
52
|
+
},
|
|
53
|
+
"readymix": {
|
|
54
|
+
"v": 255,
|
|
55
|
+
"src_ar": "الهيئة العامة للإحصاء 2026",
|
|
56
|
+
"src_en": "GASTAT 2026"
|
|
57
|
+
},
|
|
58
|
+
"block": {
|
|
59
|
+
"v": 2.6,
|
|
60
|
+
"src_ar": "الهيئة العامة للإحصاء 2026",
|
|
61
|
+
"src_en": "GASTAT 2026"
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
}
|
package/package.json
ADDED
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "mizan-bina-prices",
|
|
3
|
+
"version": "1.0.3",
|
|
4
|
+
"description": "Daily building-material price feed for Mizan (ميزان البناء) by Reality Engineer",
|
|
5
|
+
"main": "prices.js",
|
|
6
|
+
"files": [
|
|
7
|
+
"prices.js",
|
|
8
|
+
"data/current.json"
|
|
9
|
+
],
|
|
10
|
+
"license": "UNLICENSED",
|
|
11
|
+
"author": "Reality Engineer (مهندس الواقع)",
|
|
12
|
+
"type": "module"
|
|
13
|
+
}
|
package/prices.js
ADDED
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
/* ميزان البناء — نشرة الأسعار اليومية · Reality Engineer */
|
|
2
|
+
window.MIZAN_LIVE={"date":"2026-09-24","EG":{"steel":{"v":39750,"src_ar":"نشرات 2026-09-24: عز 40,850 · بشاي 40,200 · السويس 39,950 · الجارحي 39,200 · المصريين 38,500 · المراكبي 39,800","src_en":"Bulletins 2026-09-24: Ezz 40,850 · Beshay 40,200 · Suez 39,950 · El Garhy 39,200 · Egyptian Steel 38,500 · El Marakby 39,800"},"cement":{"v":4200,"src_ar":"نشرات 22/9/2026: متوسط الطن ~4,200","src_en":"Bulletins 22/9/2026: ~4,200 per ton"},"brick":{"v":4600,"src_ar":"أسعار السوق 2026","src_en":"Market prices 2026"},"sand":{"v":190,"src_ar":"أسعار السوق 2026","src_en":"Market prices 2026"},"gravel":{"v":420,"src_ar":"أسعار السوق 2026","src_en":"Market prices 2026"}},"AE":{"steel":{"v":3150,"src_ar":"Emirates Steel · سبتمبر 2026","src_en":"Emirates Steel · September 2026"},"readymix":{"v":350,"src_ar":"سوق الإمارات 2026","src_en":"UAE market 2026"},"block":{"v":4.75,"src_ar":"FEPY سبتمبر 2026","src_en":"FEPY September 2026"}},"SA":{"steel":{"v":3450,"src_ar":"مدار 21/9/2026: سابك والراجحي","src_en":"Madar 21/9/2026: SABIC & Al Rajhi"},"readymix":{"v":255,"src_ar":"الهيئة العامة للإحصاء 2026","src_en":"GASTAT 2026"},"block":{"v":2.6,"src_ar":"الهيئة العامة للإحصاء 2026","src_en":"GASTAT 2026"}}};
|