← All projects
Case study · Front end · Company project

Magenus Dashboard

A single admin dashboard that runs several independent rewards apps from one codebase, with a central super-admin panel and role-based access for each app.

Role
Front-end developer
Company
Magenus, UAE
Scope
Module architecture, tenant switching, permission-driven UI, tables, forms, charts, i18n
Since
May 2024
Statistics page with KPI cards and top-country charts
01 — The brief

One front end, many apps

Users earn points in mobile apps by watching ads, finishing tasks, installing apps and inviting friends, then redeem them for gift cards. This dashboard is where the business runs that whole economy.

Each app is an isolated tenant with its own back end and real-time setup, yet admins manage them all through one interface. My part was the front end: the module architecture, the app-switching flow, the permission-driven UI and the screens themselves.

02 — What I built

Three architecture decisions

Tenancy

Isolated multi-tenant switching

A super-admin context lists every app. Entering one rewires the Axios base URL and the Pusher connection, so each tenant keeps its own back end and real-time config.

Access

Permission-driven UI

Every route and menu item is gated by permission keys fetched per role. Different apps show different pages from the same code, with no forks.

Structure

One module blueprint

About 40 feature modules follow the same core, table and add-edit pattern, so hundreds of screens stay consistent and easy to maintain.

03 — Screens

Arabic-first, right to left

Pending redemption orders with tabs, filters and a paginated table
Active users table with status badges and pagination
Home layout builder with toggles and drag handles for each section
Points list with country targeting and click counts
Gift-card products table with supplier and country columns
User details page with device, country and history sections
04 — Coverage

What the dashboard runs

Rewards economyGift-card storeOrder managementChallenges and achievementsOfferwalls and adsUser managementSupport chatHome-layout builderAnalyticsRoles and permissions

Dashboards and advanced filters use amCharts 5, ApexCharts and Chart.js. Lists support Excel import and export, and the whole interface ships in Arabic and English with full RTL.

05 — Stack

Built with

React 18TypeScriptViteReact QueryAxiosFormik + YupReact Router v6PusheramCharts 5ApexChartsChart.jsreact-intlBootstrap 5Metronic

Result: one codebase runs several isolated reward apps, across about 40 feature modules and hundreds of screens.

Next projectAl-Ahli SC — academy platform with live streams
Contact

Need a dashboard at this scale?

mohammadnoursammane@gmail.com