Cross-platform GitHub client in Flutter and BLoC clean architecture
FlutterHub
Cross-platform GitHub client in Flutter and BLoC clean architecture.
SwiftHub – Swift version is available
App Features
- Basic, Personal Access Token and OAuth2 authentication
- View trending repositories and users (github-trending-api)
- Advanced searching and sorting repositories and users, filter by language
- View repository and user details, events, issues, commits, pull requests, contributors, etc…
- View issue and pull request messages
- Tool for counting lines of code from github repositories (codetabs) (charts_flutter)
- The missing star history graph of github repos (stars-history)
- Quickly browse the history of a file from any git repository (git-history)
- Tool for visualizing GitHub profiles (profile-summary-for-github)
- View a 3D model of your GitHub contribution grap (skyline)
- Source file viewer and syntax highlighting
- Color themes in light and dark modes (flex_color_scheme)
- In-app language switching (en, ru, hy)
- Whats New functionality
- Invite friends functionality
- Clone repository directly to app
- Support iOS, Android, Web, and Windows
Technologies
- Clean architecture (BLoC)
- Dependency injection (GetIt)
- REST API v3 (for unauthenticated or basic authentication) (Chopper, Freezed)
- GraphQL API v4 (for OAuth2 authentication) (graphql_flutter)
- Mixpanel and Firebase analytics events
- Crash reporting
- Logging
- Google ads implementation, can be enabled/disabled from settings
- Add tests
License
MIT License. See LICENSE.