NSGitHub
A mini GitHub client written in SwiftUI.
Architechture:
- MVVM + SwiftUI
Frameworks:
Features:
- Supports Dark/Light mode
- Lightweight network layer
- Asynchronous image loading
- Showing details for each repo
- Save sensitive data using Keychain
- Animation for different states using Lottie
- Browse through a list of your private or public repos
- Ability to sort repos based on Ascending or Descending
- Search between repos by entering your favorite repo name
- Pagination for repos list (loads 30 repos per network request)
- Render full README files (aka Markdown files) thanks to MarkdownView
Upcoming:
- Ability to logout!
- Ability to star repos
- Have a better error handling
- Test coverage for network layer
- Showing more details for each repo
- Ability to save favorite repos and access them offline
How to compile:
- Clone the project.
- Build and run!