diff --git a/Octokit.Reactive/Clients/IObservableRepositoriesClient.cs b/Octokit.Reactive/Clients/IObservableRepositoriesClient.cs
index 24369e90..238cea4a 100644
--- a/Octokit.Reactive/Clients/IObservableRepositoriesClient.cs
+++ b/Octokit.Reactive/Clients/IObservableRepositoriesClient.cs
@@ -38,6 +38,17 @@ namespace Octokit.Reactive
/// A
[SuppressMessage("Microsoft.Naming", "CA1716:IdentifiersShouldNotMatchKeywords", MessageId = "Get")]
IObservable Get(string owner, string name);
+
+ ///
+ /// Retrieves every public .
+ ///
+ ///
+ /// The default page size on GitHub.com is 30.
+ ///
+ /// A of .
+ [SuppressMessage("Microsoft.Design", "CA1024:UsePropertiesWhereAppropriate",
+ Justification = "Makes a network request")]
+ IObservable GetAllPublic();
///
/// Retrieves every that belongs to the current user.
diff --git a/Octokit.Reactive/Clients/ObservableRepositoriesClient.cs b/Octokit.Reactive/Clients/ObservableRepositoriesClient.cs
index 5fa2f7a5..b4a010e7 100644
--- a/Octokit.Reactive/Clients/ObservableRepositoriesClient.cs
+++ b/Octokit.Reactive/Clients/ObservableRepositoriesClient.cs
@@ -90,6 +90,18 @@ namespace Octokit.Reactive
return _client.Get(owner, name).ToObservable();
}
+ ///
+ /// Retrieves every public .
+ ///
+ ///
+ /// The default page size on GitHub.com is 30.
+ ///
+ /// A of .
+ public IObservable GetAllPublic()
+ {
+ return _connection.GetAndFlattenAllPages(ApiUrls.AllPublicRepositories());
+ }
+
///
/// Retrieves every that belongs to the current user.
///