Atlas Design System & Framework
Getir
Senior Product Designer II
2024 - 2025
Abdullah Aydeniz
Project overview
Atlas is Getir's official mobile design system and accompanying development framework. It serves as the single source of truth for both design and engineering teams working on Getir's mobile applications. The project consists of two tightly integrated parts:
The Design System: A comprehensive library of design principles, guidelines, and reusable UI components that define Getir's mobile look and feel.
The Framework: The code implementation of the design system, written natively for both major mobile platforms using modern, declarative UI toolkits: Jetpack Compose for Android and SwiftUI for iOS.
Atlas was crafted to ensure all of Getir's mobile products feel like part of one cohesive family, while simultaneously empowering teams to build higher-quality experiences faster.
Problem
As Getir expanded its services and domains (e.g., Getir, GetirFood, GetirWater), its mobile applications were being developed by different teams, often in parallel.
This rapid growth led to several significant challenges:
- Design and Brand Inconsistency:
Without a centralized guide, UI elements like buttons, icons, typography, and color palettes began to diverge across different apps and even within the same app. This created a fragmented user experience that weakened brand identity.
- Slow Design Workflow:
Designers were constantly "reinventing the wheel," spending valuable time creating common UI components from scratch for each new feature instead of focusing on user experience and problem-solving..
- Inefficient Development Process:
Developers had to custom-code UI components for every task, leading to duplicated effort, increased potential for bugs, and longer development cycles. The lack of a shared component library made it difficult to implement designs quickly and accurately.
- Gap Between Design and Development:
A designer's mockup could be interpreted and implemented differently by an Android developer and an iOS developer, leading to further inconsistencies and lengthy review cycles to fix visual discrepancies.
Goal
The creation of Atlas was driven by a strategic vision to build a scalable and efficient foundation for all mobile development at Getir
The primary goals were:
01. Establish a Single Source of Truth
Create one unified system for both designers and developers to eliminate ambiguity and ensure everyone is building from the same set of rules and components.02. Enforce Consistency
Ensure a consistent, high-quality, and on-brand user experience across all of Getir's mobile domains.03. Accelerate Design Velocity
Provide designers with a robust library of pre-made components to speed up the creation of mockups and prototypes.04. Boost Development Speed and Efficiency
Empower developers with a framework of pre-built, pre-tested, and performant UI components in Jetpack Compose and SwiftUI, drastically reducing boilerplate code and build times.


Outcome
The implementation of the Atlas Design System and Framework has fundamentally transformed Getir's mobile product development lifecycle.
All mobile applications built with Atlas now share a consistent visual language. Users enjoy a seamless and familiar experience as they move between different Getir services, which has strengthened the overall brand perception.
Both design and development workflows have been significantly accelerated. Designers can now assemble high-fidelity screens in a fraction of the time. Developers can implement these designs rapidly by using the Atlas framework's plug-and-play components, allowing teams to ship features and updates much faster.
Atlas created a shared language between designers and engineers. When a designer uses an "Atlas Card," the developer knows exactly which Jetpack Compose or SwiftUI component to implement, reducing friction and miscommunication.
With a library of standardized, rigorously tested components, the overall quality and reliability of the apps have increased. Bug fixes and updates to a component in the Atlas framework are instantly propagated across all features that use it, making the codebase easier to maintain and scale.