Back to Archive
Case StudyWeb Frontend

Rawasy — Multilingual Corporate Frontend Powered by a Dynamic CMS

A modern corporate frontend built with Next.js for Rawasy services, sectors and solutions, with content served from a CMS, Arabic, English and French support, and strong SEO and responsive behaviour.

Role
Lead Engineer
Timeline
Production
Industry
Web Frontend
Status
Shipped
rawasy-corporate-frontend
Rawasy — Multilingual Corporate Frontend Powered by a Dynamic CMS
01Overview

What this system is

A production-ready business frontend wired directly to a CMS and a REST API. It supports AR, EN and FR with full RTL and LTR handling, dark and light modes, one shared design system, advanced SEO, and content that is entirely manageable from the admin side rather than edited in code.

02The Problem

What we needed to solve

The company needed a corporate presence in three languages whose services, sectors and solutions could be updated by the business itself, without a developer in the loop for every wording or image change.

03The Solution

How we shipped it

A Next.js frontend that consumes the CMS through a REST API and builds each section from data, with one design system covering both reading directions and both themes, and metadata generated per page and per language.

04Architecture

How the system is wired

A modular architecture separating presentation, application, and data layers with REST contracts between the frontend and backend. Designed for clean scaling, observability, and predictable deployments.

Data flow
01
Presentation

Server-rendered + responsive client UI with reusable components and animation primitives.

02
Application

Business logic in service classes, validated input, role-aware authorisation, and queueable side-effects.

03
Data

Relational schema with indexed lookups, soft deletes, and migration-backed evolution.

04
Integration

REST APIs, webhooks, and third-party SDKs surfaced through thin adapters.

05Tech Stack

Engineering choices

Frontend
Next.jsReactTypeScriptTailwind CSS
Backend
REST API
06Gallery

In the wild

Rawasy — Multilingual Corporate Frontend Powered by a Dynamic CMS
11Challenges Solved

Hard problems, handled

Impact
Challenge 01

The company needed a corporate presence in three languages whose services, sectors and solutions could be updated by the business itself, without a developer in the loop for every wording or image change.

Resolution

A Next.js frontend that consumes the CMS through a REST API and builds each section from data, with one design system covering both reading directions and both themes, and metadata generated per page and per language.

Impact
Challenge 02

Maintaining performance under realistic production load.

Resolution

Indexed queries, paginated lists, image optimisation, and lean client bundles kept the platform responsive end-to-end.

12Performance

Built to stay fast

Optimised images and lazy-loaded routes for fast first paint.
Cached read-heavy endpoints and indexed all hot lookup paths.
Pruned unused dependencies and tree-shook client bundles.
Graceful loading states across every async surface.
13UI / UX

Design and interaction

Consistent design tokens — spacing, type scale, radii, motion curves.
Tuned for both desktop precision and mobile thumb reach.
Empty states, error states, and skeletons across every screen.
Reduced-motion fallbacks and accessible colour contrast.
14Production Readiness

Ready to ship and operate

Environment-scoped configuration with no secrets in source.
Migrations + seeders that recreate the full state from zero.
Error boundaries and logging on critical paths.
Reproducible builds, ready for CI deployment.
15System Features

What it does

Three languages: Arabic, English and French
Full RTL and LTR support
Dark and light modes on one design system
CMS-driven services, sectors and solutions
Dynamic content through a REST API
Per-page SEO metadata
16Technical Decisions

Why we chose what we chose

Decision 01

Built on Next.js, React, TypeScript.

Mature ecosystem, strong typing where applicable, and predictable performance characteristics for the workload.

Decision 02

REST-first integration boundary.

Keeps clients (web, mobile, partner) decoupled and trivially swappable without coupling to a single transport.

17Outcome

Results

Production
Status
8+ features
Surface area
6 technologies
Stack depth
Continue exploring

Other case studies

Building something similar?

Let's scope your platform — dashboard, mobile apps, APIs, the full stack.

WhatsApp