Top Related Projects
Quick Overview
FastHub is an open-source Android application that serves as a feature-rich client for GitHub. It provides a mobile-friendly interface for accessing GitHub repositories, issues, pull requests, and other GitHub features, allowing users to manage their GitHub activities on the go.
Pros
- Comprehensive GitHub functionality in a mobile app
- Clean and intuitive user interface
- Supports multiple GitHub accounts
- Regular updates and active community support
Cons
- Limited to Android platform (no iOS version)
- May consume more battery due to background syncing
- Some advanced GitHub features may not be fully implemented
- Occasional sync issues reported by some users
Getting Started
To use FastHub:
- Download the app from the Google Play Store or build it from source.
- Open the app and sign in with your GitHub account.
- Grant necessary permissions for the app to access your GitHub data.
- Explore repositories, issues, and pull requests directly from your Android device.
For developers who want to contribute to FastHub:
- Fork the repository on GitHub.
- Clone your fork:
git clone https://github.com/your-username/FastHub.git
- Open the project in Android Studio.
- Make your changes and submit a pull request to the main repository.
Note: As FastHub is an Android application and not a code library, code examples are not applicable in this context.
Competitor Comparisons
GitHub client for Android based on the abandoned official app
Pros of ForkHub
- Simpler and more lightweight interface
- Focuses on core GitHub functionality
- Open-source with a permissive license (Apache 2.0)
Cons of ForkHub
- Less frequently updated compared to FastHub
- Fewer advanced features and integrations
- Limited support for newer GitHub features
Code Comparison
ForkHub (Java):
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.repo_list);
setTitle(getString(R.string.bookmarks));
}
FastHub (Kotlin):
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
hideShowShadow(true)
val view = view
if (view is SwipeRefreshLayout) {
view.setOnRefreshListener(this)
}
}
ForkHub offers a straightforward approach with a focus on simplicity, while FastHub provides more advanced features and a modern Kotlin implementation. FastHub generally offers a richer set of features and more frequent updates, making it suitable for users who require a more comprehensive GitHub mobile experience. However, ForkHub's simplicity and lightweight nature may appeal to users who prefer a more streamlined approach to GitHub interactions on mobile devices.
An open source GitHub Android client app, faster and concise.
Pros of OpenHub
- More recent updates and active development
- Better support for newer GitHub features
- Cleaner and more modern user interface
Cons of OpenHub
- Smaller user base and community support
- Fewer advanced features compared to FastHub
- Less comprehensive documentation
Code Comparison
FastHub:
@Override
public void onItemClick(int position, View v, Issue item) {
if (item.getPullRequest() != null) {
PullRequestPagerActivity.startActivity(getContext(), item.getNumber(), item.getRepoId(), item.getLogin());
} else {
IssuesPagerActivity.startActivity(getContext(), item.getLogin(), item.getRepoId(), item.getNumber(), false);
}
}
OpenHub:
@Override
public void onItemClick(int position, View v, Issue issue) {
if (issue.isPullRequest()) {
PullRequestActivity.show(getActivity(), issue.getRepoOwner(), issue.getRepoName(), issue.getNumber());
} else {
IssueDetailActivity.show(getActivity(), issue.getRepoOwner(), issue.getRepoName(), issue.getNumber());
}
}
Both repositories offer similar functionality for handling issue and pull request clicks, but OpenHub's code appears slightly more concise and uses separate activities for issues and pull requests.
Github client for Android
Pros of gh4a
- Longer development history and more established codebase
- Supports a wider range of GitHub features and functionalities
- More frequent updates and active maintenance
Cons of gh4a
- Less modern user interface compared to FastHub
- Slightly slower performance on some devices
- Fewer customization options for user experience
Code Comparison
gh4a:
@Override
protected void onCreate(Bundle savedInstanceState) {
setTheme(Gh4Application.THEME);
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
mDrawerLayout = findViewById(R.id.drawer);
}
FastHub:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
if (savedInstanceState == null) {
supportFragmentManager.beginTransaction()
.replace(R.id.container, FeedsFragment())
.commit()
}
}
The code snippets show differences in language (Java vs. Kotlin) and initialization approaches. gh4a uses a custom theme and sets up a drawer layout, while FastHub focuses on fragment transactions for its main activity.
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual CopilotREADME
FastHub is currently under a huge refactoring, please make sure to submit an issue only if necessary.
You could follow the development on V5 in this PR
FastHub
Yet another open-source GitHub client app but unlike any other app, FastHub was built from scratch.
Features
- App
- Three login types (Basic Auth), (Access Token) or via (OAuth)
- Multiple Accounts
- Enterprise Accounts
- Themes mode
- Offline-mode
- Markdown and code highlighting support
- Notifications overview and "Mark all as read"
- Search Users/Orgs, Repos, Issues/PRs & Code.
- FastHub & GitHub Pinned Repos
- Trending
- Wiki
- Projects
- Repositories
- Browse & Read Wiki
- Edit, Create & Delete files (commit)
- Edit, Create & Delete files (Project Columns Cards)
- Search Repos
- Browse and search Repos
- See your public, private and forked Repos
- Filter Branches and Commits
- Watch, star and fork Repos
- Download releases, files and branches
- Issues and Pull Requests
- Search Issues/PRs
- Filter Issues/PRs
- Long click to peak Issues/PRs & add comments otg.
- Open/close Issues/PRs
- Comment on Issues/PRs
- Manage Issue/PR comments
- React to comments with reactions
- Edit Issues/PRs
- Lock/unlock conversation in Issues/PRs
- Assign people and add Labels and Milestones to Issues/PRs
- Manage Milestones
- Merge PRs
- PRs reviews (reply, react with emojies, delete & edit comment)
- PRs request review changes/approve & comment.
- PRs statuses
- Commits and Gists
- Search Code/Gists
- View Gists and their files
- Comment on Commits/Gists
- Manage Commit/Gist comments
- Create/Delete Gists
- Edit Gist & Gist Files
- React to Commit comments with reactions
- Comment on line number in Files/Code changes.
- Organisations
- Overview
- Feeds
- Teams & Teams repos
- Repos
- Users
- GitHub Pinned Repos
- Follow/Unfollow users
- View user feeds
- Contribution graph.
- Search Users, Repos, Issues,Pull Requests and Code
- Much more...
- FastHub is actively developed. More features will come!
> FastHub contain Ads, which are disabled by default. You could enable them if you'd like to support the development.
Ads currently not available.
Specs / Open-source libraries:
- Minimum SDK 21, but AppCompat is used all the way ;-)
- Kotlin all new modules starting from 2.5.3 will be written in #Kotlin.
- MVP-architecture: ThirtyInch because its ThirtyInch.
- RxJava2 & RxAndroid for Retrofit & background threads
- Retrofit for constructing the REST API
- Requery for offline-mode
- Stream API for dealing with
Collections
- ButterKnife for view binding
- Android State for saving instance states
- Lombok for getters and setters
- Material-BottomNavigation for
BottomBar
tabs - Glide for loading images
- commonmark for Markdown conversion to html
- Toasty for displaying error/success messages
- ShapedImageView for round avatars
- Material-About-Library for the about screen
- Fabric analytics & crash reporting.
- Lottie for animations
- Android Support Libraries, the almighty ;-)
Contribution
You love FastHub? You want new features or bug fixes?
Please contribute to the project either by creating a PR or submitting an issue on GitHub.
Read the contribution guide for more detailed information.
Language Contributors
Thanks for those who contributed to FastHub by adding their language
- Chinese (Simplified) @Devifish
- Chinese (Traditional) @maple3142
- German @failex234
- Indonesian @dikiaap
- Italian @Raffaele74
- Japanese @Rintan
- Lithuanian @mistermantas
- Russian @dedepete
- Turkish @kutsan
- Portuguese @caiorrs
- Czech @hejsekvojtech
- Spanish @alete89
- French @ptt-homme
- Korean @Astro36 @cozyplanes
FAQ
Why can't I see my Organizations either Private or Public ones?
Open up https://github.com/settings/applications and look for FastHub, open it then scroll to Organization access and click on Grant Button, alternatively login via Access Token which will ease this setup.
I tried to login via Access Token & OTP but why isn't it working?
You can't login via Access Token & OTP all together due to the lifetime of the OTP code, you'll be required to login in every few seconds.
Why are my Private Repo and Enterprise Wiki not showing up?
It's due to FastHub scraping GitHub Wiki page & Private Repos require session token that FastHub doesn't have.
I login with Enterprise account but can't interact with anything other than my Enterprise GitHub.
Well, logically, you can't access anything else other than your Enterprise, but FastHub made that possible but can't do much about it, in most cases since your login credential doesn't exists in GitHub server. But in few cases your GitHub account Oauth token will do the trick.
Why am I having problems editing Issues/PRs?
If you are unable to edit an issue in a public organization, please contact your Organization Admin to grant access to FastHub. Alternatively you can login using an Access Token with the correct permissions granted.
I'm having this issue! / I want this and that!
Head to https://github.com/k0shk0sh/FastHub/issues/new and create new issue for bugs or feature requests. I really encourage you to search before opening a ticket. Any duplicate request will result in it being closed immediately.
License
Copyright (C) 2017 Kosh.
Licensed under the GPL-3.0 license.
(See the LICENSE file for the whole license text.)
Screenshots
Feeds | Drawer |
---|---|
Repo | Profile |
---|---|
FastHub Logo
FastHub logo is designed by Cookicons.
Twitter
Designer website Cookicons.
OLD FastHub logo was designed by Kevin Aguilar.
Twitter
Designer at Kevin Aguilar.
Laus Deo Semper
Top Related Projects
Convert designs to code with AI
Introducing Visual Copilot: A new AI model to turn Figma designs to high quality code using your components.
Try Visual Copilot