Skip to content

A graphical user interface for autocannon providing the same user experience

Notifications You must be signed in to change notification settings

nearform/autocannon-ui

Repository files navigation

autocannon-ui

ci Conventional Commits

This monorepo contains packages and applications which provide a GUI for using autocannon while maintaining the same user experience. It provides the ability to compare two autocannon results.

To compare, the user must tick two results and press the Compare button. The popup that appeared will display the comparing result. For understanding the result, please see the autocannon-compare documentation.

Screenshots

Autocannon Options

Autocannon Report

Autocannon Compare

Getting started

The easiest way to try this out is to run:

  • npx autocannon-ui

  • a new browser window will be opened automatically

You can also provide port or host parameter to listen on port/host of your choice.

npx autocannon-ui --help

Usage: autocannon-ui [options]

Options:
  -p, --port <port>  listening port
  -h, --host <host>  host to bind (default: "localhost")
  --help             display help for command
  • In some containers like podman, you need to pass host as '0.0.0.0' to listen on all available interfaces. For more information please check this link.

Development

To easily develop the packages of this repo you can execute:

npm install
npm start

This will:

  • run autocannon-frontend build in watch mode so you can change the React components and see the result immediately
  • run autocannon-backend in standalone mode to have a server running
  • expose: http://localhost:3000 so that you may navigate to it

Designs

Designs can be found here.

Packages

autocannon-ui-frontend

A library of React components which provide the UI.

autocannon-ui-backend

A standalone Fastify application.

autocannon-compare-cli

A CLI tool to compare autocannon results and display them in a readable way.