#proxy #development #condition #different #local #testing #networking

app devproxy

A local development proxy for testing different network conditions

2 releases

0.1.1 Nov 6, 2024
0.1.0 Nov 4, 2024

#934 in Network programming

MIT/Apache

23KB
231 lines

🌐 devproxy

A local development proxy for testing different network conditions

Crates.io Docs Build Status

Install

$ cargo install devproxy

Building

$ git clone https://github.com/theCarlG/devproxy
$ cd devproxy
$ cargo build --release
$ ./target/release/devproxy --version
0.1.1

How to use devproxy

Basic usage

This is the basic way to use devproxy.

#          LISTEN ADDR    ENDPOINT ADDR
$ devproxy 127.0.0.1:8081 127.0.0.1:8080

Limit speed

Limit the connection speed to 1000KiB/s

$ devproxy --speed 1000 127.0.0.1:8081 127.0.0.1:8080

Options

A local development proxy for testing different network conditions

Usage: devproxy [OPTIONS] <LISTEN> <ENDPOINT>

Arguments:
  <LISTEN>    [env: LISTEN=]
  <ENDPOINT>  [env: ENDPOINT=]

Options:
  -l, --latency <LATENCY>
          Latency in ms [env: LATENCY=]
  -s, --speed <SPEED>
          The network speed in Kib/s [env: SPEED=] [default: 10000]
  -c, --connect-failure-rate <CONNECT_FAILURE_RATE>
          Connect failure rate [env: CONNECT_FAILURE_RATE=]
  -t, --transfer-failure-rate <TRANSFER_FAILURE_RATE>
          Data transfer failure rate [env: TRANSFER_FAILURE_RATE=]
  -h, --help
          Print help
  -V, --version
          Print version

Contributing

We welcome community contributions to this project.

Please read our Contributor Guide for more information on how to get started. Please also read our Contributor Terms before you make any contributions.

Any contribution intentionally submitted for inclusion in devproxy, shall comply with the Rust standard licensing model (MIT OR Apache 2.0) and therefore be dual licensed as described below, without any additional terms or conditions:

License

This contribution is dual licensed under EITHER OF

at your option.

For clarity, "your" refers to CarlG or any other licensee/user of the contribution.

Dependencies

~8–18MB
~230K SLoC