Simple app using the Flutter SearchDelegate
class to show a list of users matching the input search query:
The app uses switchMap
& debounce
from RxDart for a good user experience, without putting too much load on the server, or compromising bandwidth and battery life on the client.
Simple architecture diagram:
GitHubSearchAPIWrapper
: pulls the data from the GitHub REST APIGitHubSearchResult
: contains the API response dataGitHubSearchDelegate
: shows the search UI with a grid of resultsGitHubSearchService
: holds the logic for wiring up the API wrapper with the UI
This tutorial was heavily inspired by this talk by Brian Egan & Filip Hracek at ReactiveConf 2018: