🍺 BREW Explorer

← all formulae

asak

brew install asak v0.4.0 MIT

Cross-platform audio recording/playback CLI tool with TUI

24
30-day installs · #6286
78
90-day · #6158
217
365-day · #7152
367
★ GitHub stars · updated 4mo ago

Runtime dependencies

Build dependencies

Links

Raw metadata
{
  "aliases": [],
  "alternatives": [],
  "build_dependencies": [
    "pkgconf",
    "rust"
  ],
  "categories": [],
  "caveats": null,
  "conflicts_with": [],
  "dependencies": [
    "jack"
  ],
  "deprecated": 0,
  "deprecation_reason": null,
  "desc": "Cross-platform audio recording/playback CLI tool with TUI",
  "disable_reason": null,
  "disabled": 0,
  "enrichment_fetched_at": "2026-06-20T23:35:33+00:00",
  "first_seen": "2026-06-20T23:34:18+00:00",
  "full_name": "asak",
  "github_default_branch": "main",
  "github_last_commit_at": "2026-04-11T21:57:10Z",
  "github_readme_excerpt": "# asak\n\n`asak` is a terminal audio tool written in Rust. It gives you a keyboard-driven TUI for browsing audio files, previewing waveforms, recording new `.wav` files, and selecting playback and recording devices.\n\n\u003cimg width=\"912\" height=\"740\" alt=\"image\" src=\"https://github.com/user-attachments/assets/d9e62893-40de-424b-9277-08fea11fa52a\" /\u003e\n\n\n## What It Does\n\n- Browse and preview `wav`, `mp3`, and `ogg` files\n- Record `.wav` files with a live monitor waveform\n- Show a full-take timeline while recording\n- Display playback waveform, time, and channel meters\n- Choose system input and output devices from the terminal\n\n## Install\n\nYou need a Rust toolchain with `cargo` installed.\n\nInstall from crates.io:\n\n```sh\ncargo install asak\n```\n\nInstall from this repository:\n\n```sh\ncargo install --path .\n```\n\nOn Linux, you will usually need audio development packages for `cpal`:\n\n```sh\nsudo apt install libasound2-dev libjack-dev\n```\n\nIf you want JACK support explicitly:\n\n```sh\ncargo install --path . --features jack\n```\n\n## Start\n\nRun the app:\n\n```sh\nasak\n```\n\nRun it from source:\n\n```sh\ncargo run\n```\n\n## Interface\n\nWhen `asak` starts, you choose between three modes:\n\n- `Play`\n- `Rec`\n- `Settings`\n\n### Play\n\n`Play` opens a file browser rooted at the current working directory.\n\n- Browse folders and supported audio files\n- Open a file to preview it immediately\n- See the full waveform with a left-to-right playhead\n- See playback time, sample rate, channels, and meters\n\nKeys:\n\n- `Up` / `Down`: move through the browser\n- `Enter`: open folder or preview file\n- `Backspace`: go to parent directory\n- `Space`: pause or resume playback\n- `Esc`: stop playback and return to mode selection\n\n### Rec\n\n`Rec` records a `.wav` file into the current working directory.\n\n- Type a file name in the left panel\n- Press `Enter` to start recording\n- Press `Enter` again to stop\n- Watch the live monitor waveform while recording\n- See the full-take timeline update as the recording grows\n\nAfter saving, `asak` re",
  "github_repo": "chaosprint/asak",
  "github_stars": 367,
  "github_topics": [],
  "homepage": "https://github.com/chaosprint/asak",
  "homepage_og_description": null,
  "homepage_og_image": null,
  "homepage_title": null,
  "installs_30d": 24,
  "installs_365d": 217,
  "installs_90d": 78,
  "keg_only": 0,
  "keg_only_reason": null,
  "last_seen": "2026-06-20T23:34:18+00:00",
  "license": "MIT",
  "llm_generated_at": null,
  "llm_model": null,
  "name": "asak",
  "oldnames": [],
  "one_liner": null,
  "optional_dependencies": [],
  "rank_30d": 6286,
  "rank_365d": 7152,
  "rank_90d": 6158,
  "raw_hash": "2a12ae9f8aeb43f0",
  "recommended_dependencies": [],
  "revision": 0,
  "ruby_source_path": "Formula/a/asak.rb",
  "tap": "homebrew/core",
  "test_dependencies": [],
  "uses_from_macos": [],
  "version_head": "HEAD",
  "version_stable": "0.4.0",
  "versioned_formulae": [],
  "why_use_this": null
}