UIKit-based African language-learning iOS demo built with Swift, MVVM, Repository Pattern, Dependency Injection, async/await, and offline lesson support.
# NKENNE MVVM iOS Portfolio Demo
A UIKit-based African language-learning portfolio demo built in Swift. The repository demonstrates MVVM, repository abstraction, dependency injection, async/await, offline lesson state, and reusable UIKit navigation patterns.
## Highlights
- Swift + UIKit
- MVVM
- Repository Pattern
- Dependency Injection
- async/await mock data layer
- Offline lesson state using a storage abstraction
- Course → Lesson → Pronunciation Practice flow
- Loading and error states
- Portfolio-safe mock content
## Architecture
`ViewController → ViewModel → Use Case → Repository Protocol → Repository Implementation → Storage/Data Source`
## Screenshots
## Key Features
- African language learning workflow
- Language courses and lesson browsing
- Pronunciation and practice flow
- Offline lesson support
- UIKit-based user interface
- Mock API integration for portfolio demonstration
## Portfolio Note
This is a separate portfolio demonstration inspired by language-learning workflows. It does not contain proprietary production source code, credentials, private APIs, or confidential user data.