Skip to content

dromai/edword

Repository files navigation

Edword (V1 Prototype)

Edword is a keyboard-activated voice assistant that will eventually run on a Raspberry Pi. Version 1 focuses on building a macOS-friendly prototype that can listen for the space bar, simulate a voice session, and prepare the foundation for audio streaming and ElevenLabs integration.

What works today

  • Global listener reacts to the space bar and prints a mock “listening” session.
  • Press Esc to stop the prototype.
  • Structured logging writes to both the console and logs/edword.log (ignored by Git).
  • Configuration is optional. If you want to prepare for ElevenLabs you can copy config.example.json to config.json or duplicate .env.example to .env and fill in your keys.

Quick start

If you are brand new to coding, follow the Mac setup guide. It walks through installing Python, creating the virtual environment, running the syntax check, and launching the prototype.

Experienced users can run:

python -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt
python main.py

Project structure

edword/
├── docs/
│   └── mac-setup-guide.md   # Step-by-step Mac walkthrough
├── main.py                  # Keyboard listener prototype
├── requirements.txt         # Python dependencies
├── .env.example             # Environment variable template
├── config.example.json      # Configuration template
├── receipts/                # Placeholder for mock printer output
│   └── .gitkeep
├── logs/                    # Log directory (actual log ignored by Git)
│   └── .gitkeep
└── README.md

Roadmap

  1. Stream microphone audio to ElevenLabs in real time.
  2. Play responses through a Bluetooth or system speaker.
  3. Implement the mock printer tool and log generated receipts.
  4. Harden configuration management and error handling. Edword is a voice-controlled AI assistant currently under development. Version 1 focuses on building a desktop prototype that will later migrate to Raspberry Pi hardware.

Project Status

This repository currently contains the initial project scaffolding and a simple keyboard listener prototype. Pressing the space bar triggers a simulated "listening" session in the terminal. Subsequent milestones will add live audio streaming, ElevenLabs integration, and the mock printer tool.

Getting Started

  1. Clone the repository

    git clone <repo-url>
    cd edword
  2. Create a virtual environment (recommended)

    python3 -m venv .venv
    source .venv/bin/activate
  3. Install dependencies

    pip install -r requirements.txt
  4. Configure environment variables

    • Copy .env.example to .env
    • Populate your ElevenLabs API key and agent ID when you receive them
  5. Run the prototype

    python main.py

Keyboard Controls

  • Space Bar — Starts a simulated voice session and prints "🎤 Listening..." in the terminal
  • Esc — Exits the listener cleanly
  • Ctrl+C — Force quit the application

Project Structure

edword/
├── config.json           # Application configuration template
├── main.py               # Application entry point (keyboard listener prototype)
├── requirements.txt      # Python dependencies
├── README.md             # Project documentation
├── .env.example          # Template for environment secrets
├── receipts/             # Placeholder for printed receipt files
│   └── .gitkeep
└── logs/                 # Placeholder for log output
    └── .gitkeep

Next Steps

  • Wire up live audio recording and playback
  • Integrate ElevenLabs conversational streaming
  • Implement the mock receipt printer
  • Add robust logging and configuration management

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages