Amdouni Lina

Ingénieur - Développeuse iOS

Je suis passionnée par la création d’applications simples, utiles et élégantes qui améliorent le quotidien des utilisateurs.
J’aime concevoir des expériences intuitives, accessibles et bien pensées, en combinant technique, design et sens du détail.

Bienvenue dans mon univers d’applications

Deen Center - Ramadan 2026

Deen Center est une application iOS développée en Swift et SwiftUI, conçue pour accompagner les utilisateurs dans leur pratique quotidienne pendant le Ramadan et tout au long de l’année. L’application regroupe plusieurs fonctionnalités clés : lecture du Coran avec audio et traductions, suivi d’objectif de lecture (khatma), horaires de prière avec rappels personnalisés, direction de la Qibla, adhkar, compteur de tasbih communautaire et quiz éducatif.
L’application repose sur une architecture modulaire basée sur MVVM, avec une séparation claire entre les vues (SwiftUI), la logique métier (ViewModels) et les services (API, notifications, localisation, stockage). Les dépendances sont organisées de manière à favoriser la maintenabilité, la réutilisabilité des composants et la scalabilité de l’application.
Côté technique, l’application intègre plusieurs services système et externes : récupération des données via des API REST, gestion des horaires de prière dynamiques, planification de notifications locales, gestion de la localisation et de l’orientation pour la Qibla, lecture audio des versets avec contrôle de répétition, ainsi qu’un compteur communautaire synchronisé via Firebase / Firestore. La persistance locale est assurée via UserDefaults et des modèles de stockage structurés.Une attention particulière a été portée à la robustesse et à l’expérience utilisateur, avec une interface entièrement développée en SwiftUI, des composants réutilisables et une logique métier clairement encapsulée.Stack technique :Langage
• Swift
UI
• SwiftUI
• Combine (state management)
Architecture
• MVVM
• Modular feature-based structure
• Service-oriented design
Networking & Data
• REST APIs (Quran API, Prayer Times services)
• JSON decoding (Codable)
• UserDefaults persistence
System Services
• CoreLocation (localisation / Qibla)
• UserNotifications (prayer reminders)
• AVFoundation (audio playback)
Backend / Cloud
• Firebase
• Firestore
Tools & Practices
• Dependency injection (lightweight)
• State management via ObservableObject
• Clean separation of concerns
• Reusable SwiftUI components


OsmorCode - Trouve le code

OsmorCode est une application éducative interactive développée en Swift et SwiftUI, conçue pour rendre l’apprentissage des mathématiques ludique et progressif à travers une expérience de jeu structurée par niveaux. L’application permet à plusieurs joueurs de progresser à leur rythme, tout en suivant leur évolution grâce à un système de profils et de progression persistante.L’application adopte une architecture MVVM. La logique métier est isolée dans des composants dédiés (moteur de jeu, validation des réponses, gestion des niveaux), tandis que l’interface utilisateur est construite avec SwiftUI, permettant une UI réactive, maintenable et facilement extensible.Le cœur de l’application s’appuie sur un Game Engine personnalisé qui orchestre le déroulement des sessions de jeu, la validation des réponses, la progression des niveaux et la gestion du temps. Un Level System définit la structure pédagogique et la difficulté progressive, assurant une montée en compétence cohérente pour l’utilisateur.Les données des joueurs et leur progression sont stockées localement via un store persistant, garantissant une expérience continue entre les sessions. L’application intègre également des fonctionnalités avancées telles que :
• gestion multi-profils
• système de validation robuste des réponses
• onboarding utilisateur guidé
• configuration dynamique des parties
• animations et feedback visuel (confetti, transitions)
• support du drag & drop pour certaines interactions
• partage et communication via intégration mail
Sur le plan technique, l’application met en œuvre des pratiques modernes de développement iOS, notamment :
• architecture modulaire et scalable
• gestion centralisée de l’état
• composants réutilisables
• séparation claire entre logique métier et interface
• code structuré pour faciliter les évolutions futures
Stack technique :Langage
• Swift
Framework UI
• SwiftUI
Architecture
• MVVM
• Modular Architecture
• Combine
Persistence
• Local Storage (UserDefaults / Codable)
Core Components
• Custom Game Engine
• Level Progression System
• Validation Engine
• Player Profile Management
UI / UX
• SwiftUI animations
• Drag & Drop interactions
• Dynamic onboarding flow
• Responsive layout
Quality & Engineering
• Reusable components
• Separation of concerns
• Scalable architecture design

Flaky - Écrase les flocons

Flaky est une application iOS de mini-jeu casual développée en SwiftUI, pensée autour d’une expérience immersive, fluide et accessible. L’utilisateur découvre d’abord un onboarding interactif, configure sa partie, gère plusieurs profils joueurs, puis lance une session de jeu en temps réel dans un univers hivernal animé. L’application combine une interface moderne en SwiftUI avec un moteur de jeu SpriteKit, de la musique et des effets sonores, une persistance locale des données, la gestion des préférences utilisateur, la localisation multilingue ainsi qu’une base prête pour l’analytics produit. Le projet a été conçu avec une architecture claire et maintenable, séparant la navigation, la logique métier, la couche de persistance, les services transverses et les composants UI réutilisables.Stack techniqueLanguage
• Swift
UI
• SwiftUI
• Combine (state management)
Game Engine
• SpriteKit (2D rendering & game scene management)
Architecture
• MVVM (Model–View–ViewModel)
• Modular feature-based architecture
• Separation of concerns
• Service layer
Navigation
• Centralized routing
• Screen-based navigation flow
Data & Persistence
• Local persistence (UserDefaults)
• Codable / JSON decoding
System Services
• AVFoundation (audio playback)
• Haptics & sound effects
Tools & Practices
• Dependency Injection (lightweight)
• ObservableObject state management
• Reusable components & design system
• Structured navigation architecture