mafwr-dashboard / README.md

mafwr-dashboard

Last updated: 4/16/2026GitHub

mafwr-dashboard

Dashboard portal for the Ministry of Agriculture, Fisheries, and Water Resources.
Displays interactive Power BI dashboards and provides secure user-based access management.


Overview

This web application embeds various Power BI dashboards relevant to the ministry. Each dashboard is available in four versions:

  • English (Public / Private)
  • Arabic (Public / Private)

Secure access is handled via NTLM authentication, integrated with Microsoft SSRS. The backend ensures users only see dashboards they are authorized to view, based on permissions assigned by an admin.


Design

🔗 View Prototype

🔗 View Figma Design

Dashboard Design Preview


Features

Dashboards

  • Embedded Power BI dashboards via Microsoft SSRS.
  • NTLM authentication for private dashboards.
  • Public dashboards available without login.

Admin Panel

  • User management and role assignment.
  • Dashboard permission control.
  • Upload and manage public PDF documents.

Roles

  • Public User: Can access public dashboards and documents without login.
  • Private User: Requires authentication; can access assigned dashboards and private documents.
  • Admin: Full access to all dashboards, user management, and document uploads.

Getting Started

Prerequisites

  • Docker and Docker Compose
  • Git

Running Development Environment

Install node modules under web:

cd web && npm install

From Repo Root:

docker compose up -d

To view any logs for debugging:

docker compose logs {service} -f

Users

Following default users for testing:

UsernamePasswordRole
adminadminAdmin
membermemberMember

Authentication

When logging in:

  1. Enter username and password
  2. An OTP will be sent to the user email
  3. Access the mail server at http://localhost:8025 to retrieve the OTP
  4. Enter the OTP to complete your login

Accessing the Application

The application is available at http://localhost:3000 after startup.

Please note clicking on cards shows a black iframe because PowerBI is only connected in production, not in dev mode.

Contributing

  1. Issue

    • Check existing issues first or create a new one
    • Assign yourself to the issue
  2. Create a branch

    • Follow project coding standards
    • Include appropriate documentation
  3. Submit a PR

    • Reference the issue
    • Address team feedback if needed
    • Approved PRs are squash-merged to main

Additional Support

Please also refer to the README in the docs folder.

For any additional information, please contact the team.