voice2text 0.1.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,2 @@
1
+ # SCM syntax highlighting & preventing 3-way merges
2
+ pixi.lock merge=binary linguist-language=YAML linguist-generated=true -diff
@@ -0,0 +1,8 @@
1
+ .venv/
2
+ __pycache__/
3
+ *.pyc
4
+ *.egg-info/
5
+ dist/
6
+ # pixi environments
7
+ .pixi/*
8
+ !.pixi/config.toml
@@ -0,0 +1,56 @@
1
+ Metadata-Version: 2.4
2
+ Name: voice2text
3
+ Version: 0.1.0
4
+ Summary: Local voice-to-text with Whisper + LLM cleanup
5
+ Requires-Python: >=3.11
6
+ Requires-Dist: loguru
7
+ Requires-Dist: mlx-whisper
8
+ Requires-Dist: numpy
9
+ Requires-Dist: pynput
10
+ Requires-Dist: scipy
11
+ Requires-Dist: sounddevice
12
+ Description-Content-Type: text/markdown
13
+
14
+ # voice2text
15
+
16
+ Local voice-to-text with Whisper + LLM cleanup. Push-to-talk, pastes at cursor.
17
+
18
+ > **Note:** Before anyone suggests splitting this into modules and submodules — this is an intentional design choice. I want to demonstrate that in December 2025, you can have a fully local voice-to-text system with automatic cleanup and correction, running almost instantly on consumer hardware, all in ~270 lines of Python.
19
+
20
+ ## Install
21
+
22
+ ### Option 1: Pixi (recommended)
23
+
24
+ ```bash
25
+ pixi run ollama pull qwen2.5:3b
26
+ pixi run v2t
27
+ ```
28
+
29
+ ### Option 2: UV
30
+
31
+ ```bash
32
+ brew install ollama
33
+ ollama pull qwen2.5:3b
34
+ uv sync
35
+ uv run v2t
36
+ ```
37
+
38
+ ## Usage
39
+
40
+ ```bash
41
+ v2t # strict mode (restructures sentences)
42
+ v2t --casual # light cleanup (punctuation only)
43
+ v2t --pause-music # pause media while recording (macOS only, requires nowplaying-cli)
44
+ ```
45
+
46
+ Hold **Right Command** to record, release to transcribe and paste.
47
+
48
+ ### `--pause-music` (macOS only)
49
+
50
+ Pauses any playing media while recording and resumes after. Requires:
51
+
52
+ ```bash
53
+ brew install nowplaying-cli
54
+ ```
55
+
56
+ Not available via pixi/conda-forge.
@@ -0,0 +1,43 @@
1
+ # voice2text
2
+
3
+ Local voice-to-text with Whisper + LLM cleanup. Push-to-talk, pastes at cursor.
4
+
5
+ > **Note:** Before anyone suggests splitting this into modules and submodules — this is an intentional design choice. I want to demonstrate that in December 2025, you can have a fully local voice-to-text system with automatic cleanup and correction, running almost instantly on consumer hardware, all in ~270 lines of Python.
6
+
7
+ ## Install
8
+
9
+ ### Option 1: Pixi (recommended)
10
+
11
+ ```bash
12
+ pixi run ollama pull qwen2.5:3b
13
+ pixi run v2t
14
+ ```
15
+
16
+ ### Option 2: UV
17
+
18
+ ```bash
19
+ brew install ollama
20
+ ollama pull qwen2.5:3b
21
+ uv sync
22
+ uv run v2t
23
+ ```
24
+
25
+ ## Usage
26
+
27
+ ```bash
28
+ v2t # strict mode (restructures sentences)
29
+ v2t --casual # light cleanup (punctuation only)
30
+ v2t --pause-music # pause media while recording (macOS only, requires nowplaying-cli)
31
+ ```
32
+
33
+ Hold **Right Command** to record, release to transcribe and paste.
34
+
35
+ ### `--pause-music` (macOS only)
36
+
37
+ Pauses any playing media while recording and resumes after. Requires:
38
+
39
+ ```bash
40
+ brew install nowplaying-cli
41
+ ```
42
+
43
+ Not available via pixi/conda-forge.
@@ -0,0 +1,15 @@
1
+ # Lint with ruff
2
+ lint:
3
+ uv run ruff check --fix voice2text.py
4
+
5
+ # Build the package
6
+ build:
7
+ rm -rf dist/
8
+ uv run hatch build
9
+
10
+ # Publish to PyPI
11
+ publish:
12
+ uv run hatch publish
13
+
14
+ # Build and publish
15
+ release: build publish