GitHub Profile Viewer is a fast and intuitive iOS app built with modern SwiftUI for searching and viewing GitHub user profiles. Simply enter a username to instantly fetch and display key details from their profile. It's the perfect tool for developers, recruiters, or anyone curious about the GitHub community.
- User Search: Find any GitHub user with a simple and responsive search interface.
- Detailed Profile View: Displays the user's avatar, name, bio, and join date.
- Key Stats: Quickly view important statistics like Public Repositories, Followers, and Following counts.
- Direct GitHub Link: A dedicated button takes you directly to the user's profile on github.com.
- Modern UI: A clean, dark-mode-first design with a smooth, asynchronous user experience.
- Error Handling: Provides clear feedback for common issues like "User Not Found" or network problems.
- Asynchronous Networking: Used
async/await
to perform modern, non-blocking network requests to the GitHub API (https://docs.github.com/en/rest?apiVersion=2022-11-28) . - JSON Decoding: Decoded complex JSON responses from the API into Swift
Codable
structs. - State Management: Managed the app's state, including user data, loading status, and error messages, using SwiftUI's
@Observable
. - MVVM Architecture: Structured the app using the Model-View-ViewModel (MVVM) pattern to separate UI from business logic.
- Modular UI Components: Broke down the complex profile view into smaller, reusable SwiftUI subviews for cleaner and more maintainable code.
- Error Handling: Implemented a robust error handling system to catch network or parsing failures and display user-friendly alerts.
- Custom Vector Icons: Learned to convert SVG icons into a format compatible with Xcode's Asset Catalog for use in the UI.