mohup-unified-portal / README.md
mohup-unified-portal
mohup-unified-portal
A modern, unified digital portal for the Ministry of Housing and Urban Planning (MoHUP), designed to streamline access to housing and urban planning services in Oman. The portal provides citizens, residents, and businesses with a seamless way to apply for services, track application status, view interactive maps, and access up-to-date information—all in one place. It empowers users with intuitive self-service tools, transparent processes, and timely notifications to enhance their experience and satisfaction.
Problem Statement
Prior to the unified portal, users faced fragmented online services, inconsistent application processes, and limited visibility into the status of their requests with the Ministry of Housing and Urban Planning. This often led to confusion, repeated visits, and inefficiency for both users and ministry staff. The mohup-unified-portal addresses these challenges by centralizing all MoHUP services, standardizing user journeys, and providing real-time status updates, ultimately improving accessibility, transparency, and operational efficiency for all stakeholders.
Project Links
- View the latest Figma design files
- Read the Business Requirements documentation
- Browse User Stories and feature requests
- Check the PM Board for tasks and progress
- Visit the Project Live Preview
Getting started
Pre-requisites
List all prerequisites for the project to be able to run on any system:
- Node.js (v22)
- Docker (v24.0.2)
- Make
- PostgreSQL Server (or Dockerized)
- [Optional] Golang (if running backend directly)
- [Optional] Strapi CLI
Project setup
Clone the repository
git clone https://github.com/rihal-om/mohup-unified-portal.git
cd mohup-unified-portal
Running the app locally
Run docker-compose to start the application
docker-compose up
# or
make run
Populate the database
make populate-strapi
Real Data population
In case you wanted the real data to exists in your local machine for the purpose of development You'll find the files here
Open this link in one drive https://rihalom598-my.sharepoint.com/my?id=%2Fpersonal%2Fabdulkarim%5Fkhayari%5Frihal%5Fom%2FDocuments%2Ffor%20MoHUP&ct=1758794663090&or=Teams%2DHL&ga=1&LOF=1
download both files
for uploads.tar.gz, uncompress it, and move it into ./strapi/public/uploads
for backup.sql, you'll need to copy it inside strapi's database container, do the following commands:
docker cp ./backup.sql <container_id>:/
docker exec -it <container_id> bash
psql -U postgres -d strapi
\i /backup.sql # note that the path might change, so be careful
Once the application is running, open your browser and navigate to:
- Frontend: http://localhost:3000
- Backend/Strapi: http://localhost:1337
Tech Stack
| Category | Tool | Description |
|---|---|---|
| Frontend | Next.js (TypeScript) | UI library/framework |
| Backend | Golang | Server-side language/framework |
| Database | PostgreSQL | Relational DB |
| CMS | Strapi | Headless CMS |
| Containerization | Docker | Container platform |
| CI/CD | GitHub Actions | Workflow automation |
Project Team
| Name | Role | GitHub |
|---|---|---|
| Hisham Al Harrasi | Backend Dev | @HishamAl-Harrasi |
| Abrar Al Hadabi | Lead Designer | @abraralhadabi |
| Safiya BaOmar | UI/UX Designer | @SafBaomar |
| Jishnu Kidile | UI/UX Designer | @jkidile |
| Maymoona Al Balushi | Sr. Front End | @MaymoonaAlBoloshi |
| Abdulkarim Al Khayari | Backend Dev | @abdulkarim1998 |
| Shah Nawaz | Backend Dev | @shuv1824 |
| Mohammed Bait Othman | Frontend Dev | @moham1233 |
| Riham Al Khamiasi | Jr. Frontend Dev | @RehamCodes |
Feel free to reach out to any of us for questions, feedback, or collaboration opportunities. We are always open to discussing new ideas and improvements for the project.