Skip to main content

Walkie-Talkie

Serverless peer-to-peer walkie-talkie application for LAN.

Automatic peer discovery, encrypted text chat, push-to-talk voice communication.

Installation

pip install walkie

Or for development:

git clone https://github.com/Lunixizm0/walkie.git
cd walkie
uv sync

Usage

# Generate config (creates random passwords, salt, and encryption key)
walkie gen

# Receive config from another client
walkie get

# Send config to another client
walkie give <target_ip>

# Start the application
walkie run

Or run directly:

python -m walkie run
python -m walkie gen
python -m walkie get
python -m walkie give 192.168.1.100

Configuration

The app looks for walkie_config.toml in ~/.config/walkie/. You can override the path with the WALKIE_CONFIG environment variable.

Features

  • Automatic peer discovery via UDP broadcast (no server needed)
  • AES-256-GCM encryption for voice and chat
  • Low-latency voice with Opus codec
  • Push-to-Talk (Shift+V) and Voice Activity Detection (VAD) modes
  • Seamless playback with jitter buffer
  • System tray minimization
  • TOML-based configuration
  • Config sharing over TCP (--get/--give)

Requirements

  • Python 3.11+
  • Linux, Windows, or macOS
  • Microphone and speakers

System Dependencies

Walkie requires system libraries for audio and GUI tray support. Install them before installing the Python package:

Debian / Ubuntu:

sudo apt install -y portaudio19-dev gobject-introspection \
  libgirepository1.0-dev libglib2.0-dev pkg-config python3-dev python3-tk

Arch Linux:

sudo pacman -S --needed portaudio gobject-introspection pkgconf python tk

macOS (Homebrew):

brew install portaudio gobject-introspection pkg-config tcl-tk

Windows:

No extra system dependencies needed. Wheels for sounddevice and pygobject bundle everything required.

License

MIT

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

walkie-1.0.0.tar.gz (23.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

walkie-1.0.0-py3-none-any.whl (23.3 kB view details)

Uploaded Python 3

File details

Details for the file walkie-1.0.0.tar.gz.

File metadata

  • Download URL: walkie-1.0.0.tar.gz
  • Upload date:
  • Size: 23.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for walkie-1.0.0.tar.gz
Algorithm Hash digest
SHA256 531dd7488c20a24db1021bb11931c12fd85da77f4acf34b4e472664bb395a830
MD5 e6d57cfcff7a921db960670d1550a92d
BLAKE2b-256 32d19faa1aef912a9b7e776840c7d9a99843b894a521adbc0ab92e14a6a0fddd

See more details on using hashes here.

Provenance

The following attestation bundles were made for walkie-1.0.0.tar.gz:

Publisher: publish.yml on Lunixizm0/Walkie

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file walkie-1.0.0-py3-none-any.whl.

File metadata

  • Download URL: walkie-1.0.0-py3-none-any.whl
  • Upload date:
  • Size: 23.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/7.0.0 CPython/3.13.14

File hashes

Hashes for walkie-1.0.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d1714a6909b5f0a42ee4f6384a4231dc57dbef491d84f2423c56973df5ec2281
MD5 96cf19d5c1dba268f70423dffd6df375
BLAKE2b-256 5c80478f7cbdc469b6aeb11453af799c849cf55735c768897a4d62c29b6e8922

See more details on using hashes here.

Provenance

The following attestation bundles were made for walkie-1.0.0-py3-none-any.whl:

Publisher: publish.yml on Lunixizm0/Walkie

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Release history Release notifications | RSS feed

3.0.0

2 files

2.0.1

2 files

This release

1.0.0 This release

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page