Real-time Transcription TUI powered by AssemblyAI
Project description
Scribit
Scribit is a high-performance real-time audio transcription engine with a developer-focused terminal interface.
Powered by AssemblyAI's Streaming API and the Textual framework, it provides an elegant way to capture and log speech instantly.
Features
- Sleek TUI: A dark-themed terminal interface built with Textual.
- Real-time Transcription: Powered by AssemblyAI's Streaming API.
- Toggle Recording: Start and stop transcription dynamically using the
Spacekey. - In-App Settings: Change your API key, audio device, and logging preferences without restarting.
- Persistent Configuration: Settings are saved locally in
settings.json. - Transcript Logging: Option to automatically save session transcripts to timestamped files.
- Session Stats: Monitor duration and turn count in real-time.
From PyPI
pip install scribit
From Source
- Clone the repository:
git clone https://github.com/leo01102/scribit.git cd scribit
- Install the package:
pip install .
Alternatively, for development use:pip install -e ".[dev]"
Usage
Once installed, simply run the following command in your terminal:
scribit
Controls
- Configure API Key:
- Press
Sto open the Settings menu. - Paste your AssemblyAI API key and press
Save.
- Press
- Start Recording: Press
Spaceto begin transcription. - Stop Recording: Press
Spaceagain to pause/stop. - Clear Log: Press
Cto clear the current transcription log. - Quit: Press
Qto exit the application.
Key Bindings
| Key | Action |
|---|---|
Space |
Start/Stop Recording |
S |
Open Settings Menu |
D |
Download Session (.md) |
C |
Clear Session Memory |
Q |
Quit Application |
Storage Location
Scribit now follows platform standards for data storage:
- Windows:
AppData/Local/scribit - macOS:
~/Library/Application Support/scribit - Linux:
~/.config/scribit
Technical Details
- Transcription Engine: AssemblyAI Streaming (v3).
- Default Device: Set to index 2 (configurable in settings).
- Logs: Saved in the
logs/directory if enabled. - Environment: Initial API keys can be loaded from a
.envfile.
License
This project is licensed under the MIT License.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file scribit-1.1.0.tar.gz.
File metadata
- Download URL: scribit-1.1.0.tar.gz
- Upload date:
- Size: 312.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5bc554e5819668383b8cfa3fac6402c9e59556f3c5abbc1a8568e123a471299c
|
|
| MD5 |
f2dfb94df324c35731d1bde5a60edf77
|
|
| BLAKE2b-256 |
ba37df7ff7e1ada5f70022e52b88fd57fe2a9a6d9e58e2d15fc74b671c30e905
|
File details
Details for the file scribit-1.1.0-py3-none-any.whl.
File metadata
- Download URL: scribit-1.1.0-py3-none-any.whl
- Upload date:
- Size: 13.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.1.0 CPython/3.13.7
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
e1754ada8cdf6ae7c6a12fd41307c4ba8cbc2d7b258ed46ce0abf0cf71c64dff
|
|
| MD5 |
9f8213d5d95558cc18d964ff3947aeca
|
|
| BLAKE2b-256 |
3b55570959ec2fc253c859e0e10ddf030abf219e8c62a68c5bddeb1bfc12cbdf
|