Graduation
2023GIS · MappingGIS Sinai Explorer
Multilingual (EN/AR/FR) GIS dashboard for exploring buildings across the Sinai region on an interactive Cesium 3D terrain map, with point-to-point distance & travel-time calculation.
Next.jsExpressPrismaPostgreSQLCesiumJSJWT
The Business Problem
Sinai region building data had no visual, interactive way to explore locations, calculate distances between points, or manage records — and needed to serve English, Arabic, and French speaking stakeholders.
My Responsibilities
Built both the Next.js client and the Express/Prisma API server solo, including the localization files for all three languages.
Main Workflows
- 1User registers and logs in via JWT authentication
- 2User explores buildings on an interactive Cesium 3D map of the Sinai region
- 3User adds or browses building records tied to map locations
- 4User calculates distance and estimated travel time between two selected points
- 5Dashboard surfaces summary statistics on buildings and routes
Tech Stack & Architecture
Decoupled Next.js client and Express API server, connected over REST
Prisma ORM over PostgreSQL for building records and migrations
CesiumJS powering the interactive 3D terrain map on the client
English, Arabic, and French localization files for a trilingual interface
Security & Deployment
JWT-based registration and login
Environment-based configuration (.env / .env.local) kept out of version control
Cesium Ion token managed through the deployment provider's secret settings, not hardcoded


.png)






