https://github.com/charlespalmerbf/github-client
GitHub integration using the Flutter SDK
https://github.com/charlespalmerbf/github-client
flutter github-api native oauth
Last synced: 5 months ago
JSON representation
GitHub integration using the Flutter SDK
- Host: GitHub
- URL: https://github.com/charlespalmerbf/github-client
- Owner: charlespalmerbf
- Created: 2023-03-13T23:58:38.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-04-02T20:08:12.000Z (almost 3 years ago)
- Last Synced: 2025-03-18T19:55:51.298Z (10 months ago)
- Topics: flutter, github-api, native, oauth
- Language: C++
- Homepage:
- Size: 217 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
GitHub Client Flutter App
=========================
The GitHub Client Flutter App is a sample Flutter app that demonstrates how to authenticate with the GitHub API using OAuth and fetch data from the API.
Installation
------------
To use the GitHub Client Flutter App, clone the repository and run the following command in the root directory of the project:
bashCopy code
`flutter run`
This will launch the app on your default device or emulator.
Usage
-----
The app allows you to log in to your GitHub account using OAuth authentication and view a summary of your GitHub activity.
To log in, tap the "Log in with GitHub" button on the home screen. This will redirect you to the GitHub login page where you can enter your GitHub credentials and authorize the app.
After logging in, you will see a summary of your GitHub activity, including your repositories, pull requests, and issues.
Implementation
--------------
The app is implemented using the following components:
- `MyApp`: The main app widget that sets the app title and theme.
- `MyHomePage`: The home screen widget that displays the app title and the `GitHubSummary` widget.
- `GitHubSummary`: A widget that fetches data from the GitHub API using the `github` package and displays a summary of the user's GitHub activity.
- `GithubLoginWidget`: A widget that handles the OAuth authentication flow and provides an `http.Client` object for making authenticated requests to the GitHub API.
- `github_oauth_credentials.dart`: A file that contains the client ID, client secret, and scopes for the GitHub OAuth app.
The `WindowToFront` plugin is used to bring the app window to the front after the OAuth redirect.