Skip to content

Commit f8428db

Browse files
docs: add CHANGELOG.md, project breakdown in CONTRIBUTING.md (#248)
Co-authored-by: Avery Harnish <[email protected]>
1 parent cb59a33 commit f8428db

File tree

3 files changed

+85
-301
lines changed

3 files changed

+85
-301
lines changed

CHANGELOG.md

+9
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
# Changelog
2+
3+
All notable changes to Rover will be documented in this file.
4+
5+
This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
6+
7+
# [0.0.1] - 2021-02-09
8+
9+
**Initial beta release.** Please visit [our documentation page](apollographql.com/docs/rover/) for information on usage.

CONTRIBUTING.md

+72-1
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,77 @@
44
> external feature contributors, though some documentation contributions may be
55
> accepted.
66
7+
## Prerequisites
8+
9+
Rover is written in [Rust]. In order to contribute, you'll need to have
10+
Rust installed. To install Rust, visit [https://www.rust-lang.org/tools/install].
11+
12+
Rust has a build tool and package manager called [`cargo`] that you'll use to
13+
interact with Rover's code.
14+
15+
To build the CLI:
16+
```bash
17+
cargo build
18+
```
19+
20+
To run the CLI:
21+
```bash
22+
cargo run -- <args>
23+
# e.g. 'cargo run -- help' will run the rover help command
24+
```
25+
26+
You can also install Rover to your local PATH from source with cargo by first
27+
cloning this repository, and then building the CLI:
28+
```bash
29+
cargo build
30+
```
31+
32+
And then running cargo with `install` argument:
33+
```bash
34+
cargo run -- install
35+
```
36+
37+
[Rust]: https://www.rust-lang.org/
38+
[`cargo`]: https://doc.rust-lang.org/cargo/index.html
39+
[https://www.rust-lang.org/tools/install]: https://www.rust-lang.org/tools/install
40+
41+
## Project Structure
42+
43+
- `src`: the `rover` CLI
44+
- `src/bin/rover.rs`: the entry point for the CLI executable
45+
- `src/command`: logic for the CLI commands
46+
- `src/command/output.rs`: Enum containing all possible `stdout` options for Rover commands
47+
- `src/utils`: shared utility functions
48+
- `src/error`: application-level error handling including suggestions and error codes
49+
- `src/cli.rs`: Module containing definition for all top-level commands
50+
- `src/lib.rs`: all the logic used by the CLI
51+
52+
- `crates`
53+
- `crates/houston`: logic related to configuring rover
54+
- `crates/robot-panic`: Fork of robot-panic to create helpful panic handlers
55+
- `crates/rover-client`: logic for querying apollo services
56+
- `crates/sputnik`: logic for capturing anonymous usage data
57+
- `crates/timber`: output formatting and logging logic
58+
59+
60+
## Documentation
61+
62+
Documentation for using and contributing to rover is built using Gatsby and [Apollo's Docs Theme for Gatsby](https://github.com/apollographql/gatsby-theme-apollo/tree/master/packages/gatsby-theme-apollo-docs).
63+
64+
To contribute to these docs, you can add or edit the markdown & MDX files in the `docs/source` directory.
65+
66+
To build and run the documentation site locally, you'll have to install the relevant packages by doing the following from the root of the `rover` repository:
67+
68+
```sh
69+
cd docs
70+
npm i
71+
npm start
72+
```
73+
74+
This will start up a development server with live reload enabled. You can see the docs by opening [localhost:8000](http://localhost:8000) in your browser.
75+
76+
To see how the sidebar is built and how pages are grouped and named, see [this section](https://github.com/apollographql/gatsby-theme-apollo/tree/master/packages/gatsby-theme-apollo-docs#sidebarcategories) of the gatsby-theme-apollo-docs docs. There is also a [creating pages section](https://github.com/apollographql/gatsby-theme-apollo/tree/master/packages/gatsby-theme-apollo-docs#creating-pages) if you're interesed in adding new pages.
77+
=======
778
For info on how to contribute to Rover, see the [docs](https://go.apollo.dev/r/contributing).
879

980
## Code of Conduct
@@ -46,4 +117,4 @@ course *even if you are not entirely convinced you need to*. Giving other
46117
contributors the benefit of the doubt and having a sincere willingness to admit
47118
that you *might* be wrong is critical for any successful open collaboration.
48119

49-
Don't be a bad actor.
120+
Don't be a bad actor.

0 commit comments

Comments
 (0)