Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: add CHANGELOG.md, project breakdown in CONTRIBUTING.md #248

Merged
merged 3 commits into from
Feb 8, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 9 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
# Changelog

All notable changes to Rover will be documented in this file.

This project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).

# [0.0.1] - 2021-02-09

**Initial beta release.** Please visit [our documentation page](apollographql.com/docs/rover/) for information on usage.
73 changes: 72 additions & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -4,6 +4,77 @@
> external feature contributors, though some documentation contributions may be
> accepted.
## Prerequisites

Rover is written in [Rust]. In order to contribute, you'll need to have
Rust installed. To install Rust, visit [https://www.rust-lang.org/tools/install].

Rust has a build tool and package manager called [`cargo`] that you'll use to
interact with Rover's code.

To build the CLI:
```bash
cargo build
```

To run the CLI:
```bash
cargo run -- <args>
# e.g. 'cargo run -- help' will run the rover help command
```

You can also install Rover to your local PATH from source with cargo by first
cloning this repository, and then building the CLI:
```bash
cargo build
```

And then running cargo with `install` argument:
```bash
cargo run -- install
```

[Rust]: https://www.rust-lang.org/
[`cargo`]: https://doc.rust-lang.org/cargo/index.html
[https://www.rust-lang.org/tools/install]: https://www.rust-lang.org/tools/install

## Project Structure

- `src`: the `rover` CLI
- `src/bin/rover.rs`: the entry point for the CLI executable
- `src/command`: logic for the CLI commands
- `src/command/output.rs`: Enum containing all possible `stdout` options for Rover commands
- `src/utils`: shared utility functions
- `src/error`: application-level error handling including suggestions and error codes
- `src/cli.rs`: Module containing definition for all top-level commands
- `src/lib.rs`: all the logic used by the CLI

- `crates`
- `crates/houston`: logic related to configuring rover
- `crates/robot-panic`: Fork of robot-panic to create helpful panic handlers
- `crates/rover-client`: logic for querying apollo services
- `crates/sputnik`: logic for capturing anonymous usage data
- `crates/timber`: output formatting and logging logic


## Documentation

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).

To contribute to these docs, you can add or edit the markdown & MDX files in the `docs/source` directory.

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:

```sh
cd docs
npm i
npm start
```

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.

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.
=======
For info on how to contribute to Rover, see the [docs](https://go.apollo.dev/r/contributing).

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

Don't be a bad actor.
Don't be a bad actor.
Loading