The Jalal Talabani International Airport (JTIA) digital platform combines a public-facing airport website with an administrative application for managing the information visitors and airport personnel rely on. The project covers more than visual website development: it brings together multilingual content, flight information, structured operational data, backend services, and internal publishing workflows.
My engineering involvement focused on building and connecting these application layers while keeping the public experience approachable and the administration tools practical for their users.
Understanding the Requirements
The project serves audiences with very different needs. Travelers and visitors need accessible flight information, travel guidance, airport services, and news. Administrative staff need a structured environment to maintain the content and data presented to those visitors.
Translating those needs into software required defining the boundaries between public pages, authenticated management workflows, and backend information services. Flight information in particular needed its own searchable and filterable experience, distinct from editorial content such as announcements and guides.
The central challenge was creating a consistent experience across two surfaces: a public multilingual airport website and a protected management panel, both supported by the same application foundation.
Public Airport Experience
The public application is built with Next.js App Router, React, and TypeScript. It includes flight search and information views, airline and destination pages, passenger guidance, news, weather-related information, and other airport content.
The website supports English, Arabic, and Kurdish Sorani, with language-aware routing and attention to right-to-left presentation. Responsive layouts make the information usable across different screen sizes, while metadata, canonical links, and structured content support search visibility.
These features reflect the demands of a public information platform: navigation must remain clear even as the underlying information changes.
Administration & Content Workflows
The protected management area supports the maintenance of flight records, airline and location information, news, banners, publications, and related content. It also includes user administration and a safety-report management area.
The project uses dashboard views and reusable interfaces to bring different administrative activities into a cohesive workspace. This approach avoids treating each management screen as a separate application and makes it easier to extend content functionality over time.
The safety-report functionality in this website's panel is separate from the dedicated JTIA Safety Management System presented in another portfolio case study.
Full-Stack Architecture
The backend uses NestJS, TypeScript, PostgreSQL, and TypeORM, while the web and management experiences are delivered through Next.js. The repository is organized as a pnpm monorepo, including a shared TypeScript package for common API contracts, types, and validation schemas.
This shared foundation supports consistent communication between frontend features and backend services without making the public website responsible for business logic or persistence concerns.
The UI uses modern form and data-fetching tools, with TanStack Query supporting server-state interactions and reusable components supporting the management experience.
Delivery & Engineering Perspective
The project includes Docker-based application packaging and automated delivery workflows using GitHub Actions. My contribution spans full-stack implementation, application organization, integration between client and API, and preparing the software for deployment.
JTIA demonstrates experience building a substantial web platform around real organizational requirements, where public information design, administrative usability, localization, and dependable data management must work together.
Project: Jalal Talabani International Airport
Scope: Public Website, Administration Panel & Full-Stack Engineering
Internal integration details, infrastructure configuration, and proprietary operational information are intentionally excluded.