Skip to content

Commit f57e485

Browse files
committed
Fleshing out the README
1 parent 0531b71 commit f57e485

File tree

1 file changed

+35
-1
lines changed

1 file changed

+35
-1
lines changed

README.md

+35-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,37 @@
11
## The Nym Privacy Platform
22

3-
It's Nym!
3+
This repository contains the full Nym platform, written in Rust.
4+
5+
The platform is composed of multiple Rust crates. Top-level crates include:
6+
7+
* client - an executable crate which you can use for interacting with Nym nodes
8+
* mixnode - an executable mixnode crate
9+
* sfw-provider - an executable store-and-forward provider crate. The provider acts sort of like a mailbox for mixnet messages.
10+
11+
### Building
12+
13+
#### Prerequisites
14+
15+
* Rust 1.39 or later. Stable works.
16+
* The `nym` platform repo (this one).
17+
* Checkout the [Sphinx]() repo beside the `nym` repo.
18+
19+
Your directory structure should look like this:
20+
21+
```
22+
tree -L 1
23+
├── nym
24+
│   ├── client
25+
│   ├── mixnode
26+
│   ├── README.md
27+
│   └── sfw-provider
28+
├── sphinx
29+
```
30+
31+
Entering each top-level crate (`client`, `mixnode` or `sfw-provider`) and doing a `cargo build` will build the software.
32+
33+
As with any other Rust project, there are other ways to build:
34+
35+
* `cargo build --release` will build an optimized release version for use in production
36+
* `cargo test` will run unit and integration tests for the crate (once)
37+
* `cargo watch -x test` will run tests whenever you change a file in the crate. Very handy in development.

0 commit comments

Comments
 (0)