Commit graph

210 commits

Author SHA1 Message Date
figwood
ec3b06d5b2
feat: add conversion between Simplified and Traditional Chinese. (#356)
* feat: add conversion between Simplified and Traditional Chinese. If the selected language is Simplified or Traditional Chinese, it will convert the text to the selected variant(Simplified or Traditional) after been recognized, depends on opencc, if it is not installed, the conversion will skip.

* Adopting ferrous-opencc makes cross-platform packaging easier.
2025-11-19 20:31:44 +07:00
Maicon Moreira
c2672638c9
Improve audio feedback timing using real sound duration and trimmed WAV files (#349)
* feat: add sound duration retrieval for audio feedback

* Trim trailing silence from pop_start.wav and pop_stop.wav

* refactor: simplify sound file and base directory retrieval

* feat: only delay mute if audio feedback is enabled

* change the logic

* simplify new logic

* simplify get_sound_path and get_sound_base_dir, reorder functions

* add implicit blocking to playTestSound

* modify to my pref style

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-11-19 10:10:23 +07:00
Jorge
97f3018be0
fix: update laptop detection logic to be more reliable (#348) 2025-11-18 20:43:35 +07:00
CJ Pais
18536aa81e
Add file based debug logging (#347)
* add basic logging to handy

* 100kb of logs

* add open button to the ui for logs

* use log everywhere

* some minor cleanup

* finish debug logging
2025-11-17 12:55:24 +07:00
CJ Pais
315c32eab4 format 2025-11-17 10:41:31 +07:00
Jorge
3b3ed5abc5
feat: add more options for deleting recordings automatically and added button to open the folder that holds the recordings (#330)
* feat: add more options for deleting recordings automatically and added button to open the folder that olds the recordings

- deleting automatically options: after certain time, never or preserving certain number of recordings
- new button "Open Recordings Folder" located on History page

* refactor: moved "Delete Recordings" selector to Debug settings

* refactor: simplify opening recordings folder logic by using tauri's opener plugin

* clean up ui and code a bit

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-11-17 10:41:05 +07:00
Jorge
45eec57226
feat: add fallback microphone for clamshell/desktop mode (#329)
* feat: add fallback microphone for clamshell/desktop mode

* refactor: moved "Closed Laptop Microphone" setting to Debug

* cleanup

* run format

* add check back

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-11-17 10:38:41 +07:00
CJ Pais
70ec82285a
format everything (#323) 2025-11-10 11:39:14 +08:00
Luis Eduardo
f7380fa69a
feat: LLM based post-processing (#222)
* Add LLM post-processing feature with settings management and UI integration

* Refactor LLM post-processing settings and prompt selection logic

* Rename CLAUDE.md to more standard AGENTS.md

* Replace Open Router with OpenAI Compatible endpoints for post-processing

* Fix post processing settings api styles

* refactor or something

* simplify

* cleanup a bit?

* remove useless code

* minor improvements

* fix laggy textarea

* Store post-processing results in db

* fix text color

* new default prompt

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-11-05 18:29:03 -08:00
helpful
09f16b1048
windows paste shift+ins instead of ctrl+v (#236)
* windows paste shift+ins instead of ctrl+v

Shift+Insert is older and more universal than Ctrl+V on windows. For example SSH terminal software often will not permit ctrl+v.

* add option for shift+ins on windows/linux

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-11-03 09:21:46 -08:00
CJ Pais
f6e315786c move paste method and clipboard handling to advanced 2025-11-03 08:34:39 -08:00
Jinhyeok Lee
d274a28dbf
fix: add missing defaults option to plugin-store load() call (#288)
The plugin-store 2.4.1 requires the 'defaults' property in StoreOptions.
Previously, only 'autoSave: false' was provided, causing a TypeScript error.
Now passing DEFAULT_SETTINGS as the defaults value.
2025-11-03 07:33:11 -08:00
Piyush Gupta
951283ca8a fix: tooltip overflow (#269)
* fix: tooltip overflow

* Adds more responsive Css

* StartHidden has tooltip bottom

* in debug setting too

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-10-30 08:06:44 -07:00
Bogdan
64ff385423
fix: disable Translate to English setting for the whisper turbo model (#259)
* feat: disable Translate to English switch for the whisper turbo

* add parakeet-tdt-0.6b-v2 to unsupportedTranslationModels

* disable language selector for parakeet v2

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-10-29 12:37:19 -07:00
CJ Pais
1fd08082e4 move app data dir to about instead of debug 2025-10-28 17:53:43 -07:00
Maicon Moreira
7c04ee85a7
feat: add “mute while recording” setting (#257)
* feat: mute while recording

* refactor: move MuteWhileRecording from AdvancedSettings to DebugSettings
2025-10-28 17:49:33 -07:00
CJ Pais
65c1e2dbcb
parakeet v2 support (#116)
* parakeet v2 support

* Update model.rs

* fix parakeet size

* new onboarding UI for parakeet v2 introduction

* tweak height
2025-10-28 16:32:26 -07:00
CJ Pais
ae406aebe2 fix build 2025-10-27 11:52:23 -07:00
Jackson
eb044d8810
Slight overlay UI fix for flickering (#231) 2025-10-23 10:35:31 -07:00
CJ Pais
a9a3e7bfd8
display download size + refactor (#221) 2025-10-17 16:57:51 -07:00
CJ Pais
db00ff240f
Add Setting to Copy to Clipboard (#220)
* update transcribe-rs

* add copy to clipboard feat
2025-10-17 16:25:35 -07:00
Jackson
93215dc097
A few optimizations on startup (#182)
* Use an optimal release profile... load managers & hotkeys first, add a
splash, simplify app handler

* removed splashscreen, hopefully app boots fast enough anyhow

* No need to load transcription model on start now that its loaded on
demand & cleanup

* Make an unloaded model status

* tiny modification to unloading

* update comment

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-10-17 16:05:43 -07:00
Jackson
a286fe5143
Add custom sound and control notif volume (#214)
* Add custom sound and control notif volume

* Modularize the picker and slider, consolidate the playback and loading

* Move custom sounds to advanced

* pairs of audio

* custom sound handling

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-10-16 09:08:27 -07:00
CJ Pais
d15fabf887 move always on mic to debug settings. really not for mainstream users. 2025-10-09 10:58:12 -07:00
Gr3mIin
aed3a75d54
feat(settings): add autostart toggle in advanced settings (#177)
* feat(settings): add autostart toggle in advanced settings

Enable users to configure autostart behavior through a new toggle in the advanced settings UI. The backend now checks user preferences on startup to enable or disable autostart accordingly, with the setting persisted and manageable via a new Tauri command. This provides better control over app initialization without affecting existing functionality.

* immediate toggle effect?

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-10-09 10:47:51 -07:00
CJ Pais
f165b40a60 add source code link in about 2025-10-08 17:23:38 -07:00
CJ Pais
25be30dd7d move paste method to debug 2025-10-08 16:53:05 -07:00
CJ Pais
1f0332941b better disabled states for parakeet 2025-10-08 16:52:50 -07:00
becker
d0e6a17c17
Add history limit setting (#150)
* Add history limit setting

Dearest Reviewer,

I have added a history limit setting. The limit change is applied instantly.
If the limit is 0 then no recordings are saved.

Becker

* remove extra save

save happens on exit

* move to debug menu

* use the text color

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-10-08 13:01:09 -07:00
CJ Pais
1432bac30f
add support for changing paste method (#187)
* add support for changing paste method

* rename/refactor of methods
2025-10-08 12:32:04 -07:00
Han Pham
9185b3db08
feat: delete a single audio entry (#119)
* feat: delete a single audio entry

* fix(HistorySetting): remove unnecessary loading state
2025-09-19 12:30:50 -07:00
CJ Pais
338d15d2c4
tweak onboarding (#112) 2025-09-09 18:59:09 -07:00
CJ Pais
45a473dc9f
Parakeet V3 (#111)
* wip: model manager support for parakeet

* working parakeet??git status

* Update LanguageSelector.tsx

* Use the published version of the crate.

* move word correction into audio toolkit
2025-09-09 18:33:57 -07:00
Dylan
b82b3b2f20
Added "Start Hidden" (#105)
* Added "Start Hidden"

* revert visible option in tauri conf

---------

Co-authored-by: CJ Pais <cj@cjpais.com>
2025-09-06 14:07:33 -07:00
CJ Pais
7638f6b827
basic working history (#104) 2025-09-05 16:25:38 -07:00
CJ Pais
d6684ccb21
UI v2 (#103)
* wip ui

* pretty much fully new settings page

* proper dark/light mode

* slight style tweak for sidebar

* add about
2025-09-05 12:56:55 -07:00
CJ Pais
ae5f640da5
Add VRAM Inactivity Timer (#101)
* init vram unload

* logging

* add immediate unloading

* thread fixes
2025-09-03 19:00:36 -07:00
CJ Pais
5296738bac tweak thresh 2025-08-19 18:54:00 -07:00
CJ Pais
d52df53343 tweak default to 0.15 2025-08-15 12:11:35 -07:00
CJ Pais
87f97ab121 Correct wording. 2025-08-15 12:09:16 -07:00
CJ Pais
04b006d5b8 new default correction threshold + debug menu 2025-08-15 11:55:15 -07:00
CJ Pais
6be48caf82 slightly tweak styling 2025-08-11 15:28:26 -07:00
CJ Pais
c2b3815f56 'custom words' everywhere instead of 'correct words' 2025-08-11 15:19:48 -07:00
CJ Pais
a252655b2f reset icon color 2025-08-11 15:09:39 -07:00
CJ Pais
bc9617beb2 Use proper cursor for input 2025-08-11 09:32:36 -07:00
Vlad Gerasimov
24e0319256 fix(settings): handle default device labels and empty device lists 2025-08-09 08:21:43 +04:00
Vlad Gerasimov
46d28a0616 fix(settings): remove hardcoded Default option and add placeholder text 2025-08-09 08:10:18 +04:00
Vlad Gerasimov
1f96da9381 style(ui): unify components with shared Input/Button 2025-08-09 08:08:49 +04:00
Vlad Gerasimov
6f16fdf2f4 refactor(settings): wrap components in React.memo and improve ResetIcon 2025-08-09 07:52:28 +04:00
Vlad Gerasimov
f219bd14b6 refactor(settings): wrap CorrectWords with SettingContainer 2025-08-09 07:33:55 +04:00
Vlad Gerasimov
6404ce7487 refactor(transcription): optimize word correction performance 2025-08-08 19:25:21 +04:00
Vlad Gerasimov
ca00ddeb53 fix(ui): reduce window height and tighten layout spacing 2025-08-08 17:51:57 +04:00
Vlad Gerasimov
003bf23402 feat(transcription): add word correction with phonetic matching 2025-08-08 17:50:31 +04:00
CJ Pais
b286a4118f tweak language slightly. 2025-08-07 17:03:25 -07:00
CJ Pais
c0fc1ba817 some cleanup 2025-08-07 16:53:07 -07:00
Vlad Gerasimov
091b392aa6 feat(overlay): replace show_overlay toggle with position selector 2025-08-06 07:52:09 +04:00
Vlad Gerasimov
53874110b1 style(overlay): update recording overlay design and positioning 2025-08-03 11:36:00 +04:00
Vlad Gerasimov
7357baf672 Merge branch 'main' into tweak-colors 2025-08-03 10:56:24 +04:00
CJ Pais
09547c39b1 use super on windows for now 2025-08-02 19:29:05 -07:00
CJ Pais
3bd65da75a toast stuff? 2025-08-02 19:26:30 -07:00
CJ Pais
32a630cc52 potentially fix cross-platform keybinding handling Naming at the very
least.
2025-08-02 19:03:56 -07:00
CJ Pais
98eb336ab0 disallow invalid bindings from frontend 2025-08-02 18:43:59 -07:00
CJ Pais
86a1205619 add partial/resumable download capability 2025-08-02 18:25:30 -07:00
Vlad Gerasimov
3862e23cef style(overlay): update recording overlay theme to pink palette 2025-08-02 18:26:31 +04:00
Vlad Gerasimov
5b19b8a479 style: window height, logo width, group title size 2025-08-02 10:31:32 +04:00
CJ Pais
1ce954d02f add a very simple debug mode toggle 2025-08-01 18:16:51 -07:00
CJ Pais
a97d861f41 Clean up the overlays CSS. 2025-08-01 16:03:04 -07:00
CJ Pais
cb1caf763c add cancel to overlay 2025-08-01 15:59:00 -07:00
CJ Pais
dd957a894d add setting to enable or disable showing the overlay 2025-08-01 14:29:02 -07:00
CJ Pais
ec2fefb9fe Audio visualizer generally working nicely. 2025-08-01 14:15:02 -07:00
CJ Pais
5ed86d7fcc Minor tweaks to HTML and CSS. 2025-08-01 14:15:02 -07:00
CJ Pais
51105dde15 more wip but roughly is there 2025-08-01 14:15:02 -07:00
CJ Pais
d5f23cdfa5 Try not to focus it first. It doesn't quite work though. 2025-08-01 14:15:02 -07:00
CJ Pais
8731881837 wip 2025-08-01 14:15:02 -07:00
CJ Pais
d52018aa79 minor tweaks 2025-07-28 12:26:26 -07:00
Václav Škorpil
b767eca6fb Add language select to settings 2025-07-28 19:52:37 +02:00
CJ Pais
21e96083df add ui toggle back 2025-07-11 18:19:26 -07:00
segudev
c3aa2d7c1b Add "Translate to English" setting: Introduced a new setting to enable automatic translation of speech to English. Updated relevant components, settings modules, and transcription logic to support this feature. Adjusted accessibility permission calls for consistency. 2025-07-11 18:19:15 -07:00
CJ Pais
d8927f1289 refactor settings into a hook. 2025-07-11 17:12:42 -07:00
CJ Pais
c23befd98a big refactor of settings + switch audio devices 2025-07-10 21:10:46 -07:00
CJ Pais
c99fe1d450 Fix the keycode bug. 2025-07-03 14:26:02 -07:00
CJ Pais
79d260c1c8 slight cleanup/refactor 2025-06-30 14:38:36 -07:00
CJ Pais
9036c05088 initial working version of multiple models + cleanup and onboarding 2025-06-30 14:27:21 -07:00
CJ Pais
528bfc24e1 Different start and stop sounds. 2025-06-27 12:54:34 -07:00
CJ Pais
ab79f77747 sample rec sound 2025-06-27 12:54:29 -07:00
CJ Pais
d2c73bda7a fix build 2025-06-27 12:37:06 -07:00
CJ Pais
80f2c72847 fix update? 2025-06-27 12:27:01 -07:00
CJ Pais
9455c77867 release v0.1.3 2025-06-26 15:55:59 -07:00
CJ Pais
2368b9e7ee Release v0.1.2 2025-06-26 14:30:01 -07:00
CJ Pais
fabb1f8760 add footer with the curr version 2025-06-26 14:03:40 -07:00
CJ Pais
cc4b057993 basically label option nicely on macOS as well as fix command not being sent properly. 2025-05-15 13:42:31 -07:00
CJ Pais
cff0969b36 add Jon's feature. 2025-05-12 14:09:47 -07:00
CJ Pais
d4ac035b65 clean up the accessibility panel. 2025-05-12 10:15:32 -07:00
CJ Pais
a4e28be56e add reset button 2025-05-12 09:05:53 -07:00
CJ Pais
75648c6137 better logo 2025-05-12 08:44:26 -07:00
CJ Pais
e0b96ebebc fix not being able to stop recording. 2025-05-12 08:23:47 -07:00
CJ Pais
6183c87aee who knows 2025-05-09 16:07:36 -07:00
CJ Pais
2570f99df6 Better accessibility permissions. 2025-05-09 11:55:55 -07:00
CJ Pais
5fc55cfcb3 icon update + color tray when recording 2025-05-09 11:46:06 -07:00
CJ Pais
b58b65dabc most basic working being able to change key bindings. 2025-05-08 17:19:23 -07:00
CJ Pais
9b5f1c5a04 ugly but working unified settings store. 2025-05-08 16:43:51 -07:00
CJ Pais
5bddf49f88 most basic side of Rust being able to change the key binding. 2025-05-07 16:24:20 -07:00
CJ Pais
d36ddfd61c some opt + load directly from a store 2025-05-07 13:14:31 -07:00
CJ Pais
cbd6a49181 start cleaning up our lib 2025-05-07 09:41:54 -07:00
CJ Pais
894b10e40e slightly better ui 2025-05-07 07:56:01 -07:00
CJ Pais
97700cda60 remove keybinding manager 2025-05-06 11:46:47 -07:00
CJ Pais
2f38e407a5 remove cruft 2025-05-06 11:19:23 -07:00
CJ Pais
6b545d3acd working? ability to package/run on macos 2025-05-05 12:13:27 -07:00
CJ Pais
be49d3ed0c basic settings page 2025-02-12 18:42:24 -08:00
CJ Pais
83d845284d basic working transcription. 2025-02-03 09:26:37 -08:00