A pet project based on MVP-C architecture, using REST API, custom backend built with Vapor, and layout built with SnapKit.
The goal of the app is to help users quit smoking by collecting data, tracking statistics, and providing visual insights into their progress.
I started this project as a personal challenge to improve my development skills while building something that could help others. It's meant to showcase my understanding of modern iOS development principles, such as architecture (MVP-C), networking, secure data management and building own backend using VAPOR.
Though the app is still in progress, I aim to make it a complete, functional product. This is an open-ended project where I can continuously refine my skills.
- π― Coordinator β Modular navigation with clear responsibility separation.
- π Network Manager β Handles all REST API interactions with the Vapor backend.
- π Keychain Manager β Secure token storage using iOS Keychain.
- π Authorization β Sign up, login, and token handling flow.
- Architecture: MVP-C (Model-View-Presenter + Coordinator)
- Backend: Vapor (Swift)
- Layout: SnapKit
- Storage: Keychain, CoreData
- Networking: URLSession + custom API layer
π Custom alert implementation
π΄ Offline mode with local caching
π Cigarette statistics screen
π€ Profile screen
πͺ Health check screen
π₯ Stories-style motivational content
This project is under active development as a personal learning and prototyping exercise.