NSGitHub

A mini GitHub client written in SwiftUI.

photo-output 2

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:

  1. Clone the project.
  2. Build and run!

GitHub

View Github