Skip to main content

Crate netspd

Crate netspd 

Source
Expand description

netspd — a beautiful, modern, minimalistic network speed testing terminal application.

The crate is layered strictly:

  • tui (presentation) draws app state with Ratatui;
  • app (application) reduces events into state and runs the loop;
  • engine (domain) measures ping, download and upload through a provider abstraction, with no knowledge of any UI;
  • config, errors and utils support all layers.

The engine is reusable on its own: a CLI, GUI or REST API can drive engine::Engine and consume engine::EngineEvents without pulling in any terminal code.

Modules§

app
The application layer: state, events, actions and the runtime loop.
config
Application configuration: schema and loading.
engine
The speed test engine.
errors
Error types shared across all layers of netspd.
tui
The presentation layer: terminal management, themes, animation, widgets, screens and the frame renderer.
utils
Small, dependency-free helpers shared by every layer.