moved project structure notes in

This commit is contained in:
Brendan Forster
2014-02-03 20:25:25 +11:00
parent c346573ff3
commit 3d7b249736
+17
View File
@@ -44,6 +44,9 @@ to ensure all the tests pass.
The two main projects are the `Octokit` and `Octokit.Reactive` projects.
The `Octokit.Reactive` library is a thin wrapper over the `Octokit`
library - for those who want to use Reactive Extensions (Rx) instead of tasks.
The namespaces are organised so that the relevant components are easy to discover:
- **Authentication** - everything related to authenticating requests
@@ -56,6 +59,20 @@ The namespaces are organised so that the relevant components are easy to discove
Unless you're modifying some core behaviour, the **Clients** and **Models** namespaces
are likely to be the most interesting areas.
The clients within a project are organized similarly to the endpoints in the
[GitHub API documentation](http://developer.github.com/v3/)
Some clients are "sub-clients". For example, when you navigate to the
[Issues API](http://developer.github.com/v3/issues/) you'll notice there's an
endpoint for issues. But in the right navbar, there are other APIs such as
[Assignees](http://developer.github.com/v3/issues/assignees/) and
[Milestones](http://developer.github.com/v3/issues/milestones/).
We've tried to mirror this structure. So the `IObservableMilestoneClient` isn't
a direct property of `IObservableGitHubClient`. Instead, it's a property of the
`IObservableIssuesClient`. And thus you can get to it by going to
`client.Issues.Milestones`.
### What needs to be done?
We have a [`easy-fix`](https://github.com/octokit/octokit.net/issues?labels=easy-fix&state=open)