cb91e5f0de5ab5b841029325c70a2c1be200dc31
Jordan Map SaaS Platform 🗺️
منصة خرائط الأردن البرمجية
A complete self-hosted mapping platform prototype for Jordan, built with OpenStreetMap, GraphHopper, and NestJS.
🚀 Quick Start / البدء السريع
- Clone the repository
- Run the setup script to download Jordan OSM data:
npm run setup - Perform one-time OSM import into PostGIS:
docker-compose --profile import up osm-import - Start the platform:
docker-compose up --build
🏗️ Architecture / المعمارية البرمجية
- Backend: NestJS (API Gateway, Telemetry Ingestion, Routing Proxy)
- Frontend: React + MapLibre GL JS (Interactive Map Dashboard)
- Database: PostgreSQL + PostGIS (Spatial persistence)
- Routing: GraphHopper (Java-based OSM routing engine)
- Cache: Redis (Hot driver positions and API caching)
- Tile Server: Tileserver-GL (Serving Jordan vector/raster tiles)
📡 Key API Endpoints / أهم الروابط البرمجية
| Endpoint | Method | Description |
|---|---|---|
/api |
GET | Swagger Documentation |
/maps/config |
GET | Map center and region bounds |
/maps/route |
GET | Routing between two points |
/telemetry |
POST | Ingest driver location (every 3s) |
/telemetry/nearby |
GET | Find drivers within a radius |
🛠️ Tech Stack / التقنيات المستخدمة
- Node.js v18
- PostGIS 15
- GraphHopper Latest
- MapLibre GL JS
🎖️ البوابات السيادية والعسكرية / Sovereign & Defense Portals
- بوابة المنظومة العسكرية والتوجيه التكتيكي الميداني (المعتمد للجهات العسكرية):
https://map-saas.intaleqapp.com/sovereign-tactical-landing.html - مركز القيادة التفاعلي (رَصْد):
https://map-saas.intaleqapp.com/sovereign-command.html - المنظومة التكتيكية الميدانية الحية:
https://map-saas.intaleqapp.com/#tactical - وثيقة الإيجاز الأمني والمعمارية التقنية (المركز الجغرافي الملكي):
https://map-saas.intaleqapp.com/security_brief_rjgc.html
📝 Arabic Comments / ملاحظات باللغة العربية
تم تصميم هذا النظام ليكون نواة لمنصة خرائط تجارية وسيادية تدعم تطبيقات التوصيل والنقل الذكي والأنظمة التكتيكية في الأردن، مع التركيز على استيعاب بيانات الموقع اللحظية للسائقين كل 3 ثواني ومعالجتها مكانياً واستقلالية العمل 100% بدون إنترنت.
⚠️ Limitations / القيود الحالية
- Does not include full Map Matching for traffic light delay logic (Phase 2).
- Requires manual download of MBTiles for high-performance tile serving in production.
Languages
JavaScript
45.9%
TypeScript
28.4%
HTML
12.5%
Dart
6.1%
Shell
3.8%
Other
3.3%