# ali

> HTTP load testing tool with real-time TUI analysis and charting capabilities

Stars: 3.9k · Categories: Network

- Repository: https://github.com/nakabonne/ali
- Page: https://www.trmn.sh/tools/ali

## Install

- Homebrew: `brew install nakabonne/ali/ali`
- APT: `wget https://github.com/nakabonne/ali/releases/download/v0.7.3/ali_0.7.3_linux_amd64.deb && apt install ./ali_0.7.3_linux_amd64.deb`
- Go: `go install github.com/nakabonne/ali@latest`

## Overview

ali is an HTTP load testing tool that provides real-time performance analysis through a terminal-based user interface. It generates configurable request loads against HTTP endpoints while continuously plotting metrics like latency, percentiles, and throughput in interactive charts. Users can adjust parameters such as request rate, duration, HTTP method, headers, and request body through command-line flags.

The tool displays multiple chart types including latency over time, percentile distributions (50th, 90th, 95th, 99th), and progress indicators for long-running tests. Charts support mouse interaction for zooming and navigation. Test results can be exported to files for further analysis. The interface updates in real-time with configurable redraw intervals, allowing users to monitor performance characteristics as tests execute.

ali supports standard HTTP features including custom headers, request bodies from files, TLS configuration, HTTP/2, keep-alive connections, and custom DNS resolvers. It can perform infinite duration attacks by setting duration to 0, or time-limited tests with specific rates and worker counts. The tool is particularly useful for developers and SREs who need to assess API performance, identify bottlenecks, and validate system behavior under load with immediate visual feedback.

### Installation

```bash
# via Homebrew
brew install nakabonne/ali/ali
```

```bash
# via APT
wget https://github.com/nakabonne/ali/releases/download/v0.7.3/ali_0.7.3_linux_amd64.deb && apt install ./ali_0.7.3_linux_amd64.deb
```

```bash
# via Go
go install github.com/nakabonne/ali@latest
```

![ali terminal interface showing real-time load testing](https://media.trmn.sh/cached/ee0328f7077105f674449329f11b2580499bd509d2eb841f4cd160bb0874ccb8.gif)

![Real-time plotting of load test metrics](https://media.trmn.sh/cached/78b2a6261de1ee2bd22d14186ee8c1646e028f052f699cb8e242c5a06d2e6437.gif)

![Mouse interaction with charts](https://media.trmn.sh/cached/dc8c14e2290f42efa7e8a59204340690d2fe0f89aa9efaea2fffc601844a08b8.gif)

## Alternatives

- [cariddi](https://www.trmn.sh/tools/cariddi.md): Web crawler that scans domains for endpoints, secrets, API keys, and file extensions (3.8k stars)
- [devzat](https://www.trmn.sh/tools/devzat.md): SSH server that creates a chat room instead of shell access, enabling cross-platform terminal chat (Go, 4.1k stars)
- [curlie](https://www.trmn.sh/tools/curlie.md): A curl frontend that combines curl's features with HTTPie's user-friendly interface and syntax (Go, 3.7k stars)
- [weechat](https://www.trmn.sh/tools/weechat.md): Terminal-based chat client with modular plugin architecture and multi-protocol support, primarily for IRC (C, 3.4k stars)
- [irssi](https://www.trmn.sh/tools/irssi.md): Terminal-based IRC client with modular architecture and support for multiple chat protocols (C, 3.2k stars)

## Guides

- [Best HTTP Load Testing CLI Tools](https://www.trmn.sh/best/http-load-testing-tools): Compare wrk, vegeta, k6 and hey for HTTP load testing: requests per second, latency percentiles, constant-rate attacks and scripting.

---

Canonical: https://www.trmn.sh/tools/ali
