Skip to content
Browse files



Signed-off-by: Taiga Nakayama <>
  • Loading branch information...
dora-gt authored and emschwartz committed May 9, 2019
1 parent 1535907 commit 01a8c2f6d4b549fe5abfa4bb0095071b6c7dfc35
Showing with 130 additions and 0 deletions.
  1. +14 −0 LICENSE
  2. +4 −0
  3. +112 −0 docs/
@@ -0,0 +1,14 @@
Copyright 2018-2019 Evan Schwartz and contributors
Copyright 2017-2018 Evan Schwartz

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.
@@ -62,3 +62,7 @@ Install and Run:
1. `git clone && cd interledger-rs`
2. `cargo build` (add `--release` to compile the release version, which is slower to compile but faster to run)
2. `cargo run --package interledger` (append command line options after a `--` to use the CLI)

## Contributing

Contributions are very welcome and if you're interested in getting involved, see [](docs/
@@ -0,0 +1,112 @@
title: Contributing

# Contributing
Welcome to! is an implementation of the [Interledger Protocol (ILP)]( written in the Rust programming language. Contributions are very welcome and if you're interested in getting involved, this document provides some background on the project and how we work.

## Prerequisites
Before diving in to, you may find it helpful to familiarize yourself with some aspects of the Interledger Protocol itself and the Rust-based technologies we use:

- Knowledge about the Interledger Protocol itself
- [](
- [RFCs](
- Knowledge about
- [ Architecture](
- [API Docs](
- Knowledge about the Rust language
- [The Book](
- [Rust by Example](
- [Rust Language Cheat Sheet](
- Knowledge about crates used in
- [](
- [Tokio](
- [hyper](

## Feature Requests

- On Interledger
- If you have questions about how Interledger works or ideas for new features, please visit the [Interledger Forum]( and post your questions or comments.
- On
- If you have any opinion on the features of, please [open issues]( describing what you think we need.

## Pull Requests
We welcome pull requests (PRs) that address reported issues. You can find appropriate issues by `bug` or `help-wanted` labels. To avoid multiple PRs for a single issue, please let us know that you are working on it by a comment for the issue. Also we recommend to make discussions on the issue of how to address the issue, methodology towards the resolution or the architecture of your code, in order to avoid writing inefficient or inappropriate code.

Please follow the instruction below when making pull requests.

- Make sure that your branch is forked from the latest `master` branch.
- Make sure that you wrote tests, ran it and the results were all green.
- Make sure to run `cargo fmt` before you commit.
- To install rustfmt, run `rustup component add rustfmt`
- Make sure to commit using `-s` or `--signoff` option like `git cz -s`.
- `cz` means using the [commitizen]( explained below.
- Why we use the option is explained later in the [Signing-off](#Signing-off) section.
- Make sure that you committed using the [commitizen]( format (commit messages should start with `feat:`, `docs:`, `refactor:`, `chore:`, etc). PRs may contain multiple commits but they should generally be squashed into one or a small number of complete change sets (for example, a feature followed by multiple refactors and another commit to add tests and docs should be combined into a single commit for that feature).
- Make pull requests against `master` branch of this repository (emschwartz/interledger-rs) from your repository.
- If reviewers request some changes, please follow the instruction or make discussions if you have any constructive opinions on the PRs you made.
- Then if you want to make some changes on your PRs, `push -f` is allowed to renew your branch after squashing your new commits. You don't need to open new PRs.

### Signing-off
By using `-s` or `--signoff` option, you agree to the following agreement ([Developer Certificate of Origin]( which assures that your commits consist of your own code and/or code which you have rights to submit.

```:Developer Certificate of Origin
Developer Certificate of Origin
Version 1.1
Copyright (C) 2004, 2006 The Linux Foundation and its contributors.
1 Letterman Drive
Suite D4700
San Francisco, CA, 94129
Everyone is permitted to copy and distribute verbatim copies of this
license document, but changing it is not allowed.
Developer's Certificate of Origin 1.1
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.

## Bug Reports
If you find any bugs, please feel free to report them by opening an [issue]( Please look through existing [issues](✓&q=is%3Aissue) before posting to avoid duplicating other bug reports.

To resolve the problem we need a detailed report of the bug. When you report your bugs, refer to the following example of a report.

Short summary: <summary>
Commit hash or branch: <hash or branch> (or even tag etc. to determine exact version)
How to reproduce the bug: <how to reproduce the bug> (procedure or sample code)
Description: <description> (explanation and/or backtrace)

## Questions
If you have any questions, you can get in touch with us by posting on the [Interledger Forum]( or in the [#rust channel of the Interledger Slack](

Once again, welcome to -- we look forward to working with you!

0 comments on commit 01a8c2f

Please sign in to comment.
You can’t perform that action at this time.