Skip to content

Commit 692a4cb

Browse files
committedMar 14, 2016
extract OVERVIEW.md document which introduces the overall Octokit codebase
1 parent ca025b9 commit 692a4cb

File tree

2 files changed

+34
-34
lines changed

2 files changed

+34
-34
lines changed
 

‎CONTRIBUTING.md

+2-34
Original file line numberDiff line numberDiff line change
@@ -25,40 +25,7 @@ easiest way to do this. You can then clone down your fork instead:
2525
After doing that, run the `.\build.cmd` script at the root of the repository
2626
to ensure all the tests pass.
2727

28-
### How is the codebase organised?
29-
30-
The two main projects are the `Octokit` and `Octokit.Reactive` projects.
31-
32-
The `Octokit.Reactive` library is a thin wrapper over the `Octokit`
33-
library - for those who want to use Reactive Extensions (Rx) instead of tasks.
34-
35-
The namespaces are organised so that the relevant components are easy to discover:
36-
37-
- **Authentication** - everything related to authenticating requests
38-
- **Clients** - the logic for interacting with various parts of the GitHub API
39-
- **Exceptions** - types which represent exceptional behaviour from the API
40-
- **Helpers** - assorted extensions and helpers to keep the code neat and tidy
41-
- **Http** - the internal networking components which Octokit requires
42-
- **Models** - types which represent request/response objects
43-
44-
Unless you're modifying some core behaviour, the **Clients** and **Models** namespaces
45-
are likely to be the most interesting areas.
46-
47-
The clients within a project are organized similarly to the endpoints in the
48-
[GitHub API documentation](http://developer.github.com/v3/)
49-
50-
Some clients are "sub-clients". For example, when you navigate to the
51-
[Issues API](http://developer.github.com/v3/issues/) you'll notice there's an
52-
endpoint for issues. But in the right navbar, there are other APIs such as
53-
[Assignees](http://developer.github.com/v3/issues/assignees/) and
54-
[Milestones](http://developer.github.com/v3/issues/milestones/).
55-
56-
We've tried to mirror this structure. So the `IObservableMilestoneClient` isn't
57-
a direct property of `IObservableGitHubClient`. Instead, it's a property of the
58-
`IObservableIssuesClient`. And thus you can get to it by going to
59-
`client.Issues.Milestones`.
60-
61-
### What needs to be done?
28+
### How can I get involved?
6229

6330
We have a [`easy-fix`](https://github.com/octokit/octokit.net/issues?labels=easy-fix&state=open)
6431
tag on our issue tracker to indicate tasks which contributors can pick up.
@@ -141,4 +108,5 @@ Some things that will increase the chance that your pull request is accepted.
141108

142109
# Additional Resources
143110

111+
* [Octokit Codebase Overview](https://github.com/octokit/octokit.net/blob/master/OVERVIEW.md)
144112
* [General GitHub documentation](http://help.github.com/)

‎OVERVIEW.md

+32
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
### How is the codebase organised?
2+
3+
The two main projects are the `Octokit` and `Octokit.Reactive` projects.
4+
5+
The `Octokit.Reactive` library is a thin wrapper over the `Octokit`
6+
library - for those who want to use Reactive Extensions (Rx) instead of tasks.
7+
8+
The namespaces are organised so that the relevant components are easy to discover:
9+
10+
- **Authentication** - everything related to authenticating requests
11+
- **Clients** - the logic for interacting with various parts of the GitHub API
12+
- **Exceptions** - types which represent exceptional behaviour from the API
13+
- **Helpers** - assorted extensions and helpers to keep the code neat and tidy
14+
- **Http** - the internal networking components which Octokit requires
15+
- **Models** - types which represent request/response objects
16+
17+
Unless you're modifying some core behaviour, the **Clients** and **Models** namespaces
18+
are likely to be the most interesting areas.
19+
20+
The clients within a project are organized similarly to the endpoints in the
21+
[GitHub API documentation](http://developer.github.com/v3/)
22+
23+
Some clients are "sub-clients". For example, when you navigate to the
24+
[Issues API](http://developer.github.com/v3/issues/) you'll notice there's an
25+
endpoint for issues. But in the right navbar, there are other APIs such as
26+
[Assignees](http://developer.github.com/v3/issues/assignees/) and
27+
[Milestones](http://developer.github.com/v3/issues/milestones/).
28+
29+
We've tried to mirror this structure. So the `IObservableMilestoneClient` isn't
30+
a direct property of `IObservableGitHubClient`. Instead, it's a property of the
31+
`IObservableIssuesClient`. And thus you can get to it by going to
32+
`client.Issues.Milestones`.

0 commit comments

Comments
 (0)