- Add `AppConfig` and `PresetConfig` models using Pydantic for config validation
- Refactor `read_configurations` to return an `AppConfig` instance
- Implement `OllamaClient` for chat-based server interaction
- Implement `WhisperClient` for transcription via Whisper CLI
- Migrate notification utilities to `libs` directory
- Update tray application to use new clients and config structure
- Simplify Whisper and Ollama integration logic in `WhisperWorker`
Signed-off-by: Max P. <Mail@MPassarello.de>
- Replace direct usage of global configuration dictionaries with local
variables for better readability and maintainability.
- Update all references to use the newly introduced local variables.
Signed-off-by: Max P. <Mail@MPassarello.de>
- Add `preset` argument to `send_cmd` for passing optional presets.
- Modify command formatting to include preset if provided.
- Update CLI to accept an optional `preset` argument.
- Extend socket listener to parse and validate preset values.
- Enhance functionality to allow preset-based dynamic behavior.
Signed-off-by: Max P. <Mail@MPassarello.de>
- Add functionality to save transcription results to a journal file.
- Use current date and time to organize entries in the journal.
- Retain clipboard copy behavior for non-journal modes.
- Enhance error handling for journal writing operations.
Signed-off-by: Max P. <Mail@MPassarello.de>
- Update project version from 0.2.0 to 0.2.1 in pyproject.toml.
- Indicates a minor update, likely for small improvements or fixes.
Signed-off-by: Max P. <Mail@MPassarello.de>
- Update import statements to remove redundant `src` prefix.
- Improve clarity and maintainability of module references.
Signed-off-by: Max P. <Mail@MPassarello.de>
- Update project version from 0.1.0 to 0.2.0 in pyproject.toml.
- Reflects progress or new features added since the previous version.
Signed-off-by: Max P. <Mail@MPassarello.de>
- Replace `os` with `pathlib` for defining the default config path.
- Simplify configuration file path management for readability.
- Improve code maintainability by centralizing the default path.
Signed-off-by: Max P. <Mail@MPassarello.de>
- Add GitHub Actions workflow for building and publishing packages.
- Introduce `pyproject.toml` for project metadata and dependency management.
- Remove `requirements.txt` in favor of Poetry for dependency handling.
- Restructure source files under `src/pyvtt` for better organization.
- Enhance `notify.py` with sound playback and improve error handling.
- Update `voice_to_text_tray.py` to support dynamic configuration reload.
- Add `.vscode/settings.json` for improved IDE configuration.
- Update `.gitignore` to exclude build artifacts.
Signed-off-by: Max P. <Mail@MPassarello.de>
Enhances maintainability by providing comprehensive docstrings for
SocketListener and TrayApp classes. Documents attributes and methods,
clarifying their purposes and usage.
Moves desktop notification functionality to a separate module for better code reuse and maintainability. Updates the main application to use the new utility.
Introduces argument parsing for command-line interaction, allowing
users to specify commands dynamically. Refactors the command
sending function to include detailed error handling and support
for configurable socket paths via external configuration.
Introduces a function to read and parse configuration settings from a JSON file. Handles errors gracefully with exception handling to ensure reliability.
Facilitates centralized management of configuration settings.
Adds detailed error handling for subprocess calls, file I/O, and HTTP requests to enhance robustness. Notifies the user of specific failures during transcription and clipboard operations. Fixes duplicate import and improves UI action configuration.