Richard Roberson
b21bdb3a21
feat(tts): add multi-provider TTS support with Deepinfra and custom OpenAI-compatible endpoints
...
Add comprehensive multi-provider TTS support enabling users to choose between OpenAI, Deepinfra, and custom OpenAI-compatible endpoints. Implement provider-specific voice management with automatic voice restoration per provider-model combination, and migrate package manager to pnpm for improved dependency handling.
Key changes:
- Add TTS provider selection (OpenAI, Deepinfra, custom-openai) in settings UI
- Implement provider-specific model and voice lists with dynamic fetching
- Add voice persistence per provider-model combination in savedVoices
- Support Deepinfra models: Kokoro-82M, Orpheus-3B, Sesame-1B with their voice libraries
- Migrate to pnpm with frozen lockfile for reproducible builds
- Update Docker configuration to use pnpm and Deepinfra API defaults
- Add migration logic for existing users to infer provider from stored baseUrl
- Update test helpers and Playwright configuration for Deepinfra API
- Add example docker-compose.yml with Kokoro-FastAPI integration
BREAKING CHANGE: Voice selection is now provider-model specific. Previously saved voices will be migrated to the new savedVoices structure, but users may need to reselect voices if switching providers.
2025-11-09 15:47:17 -07:00
Richard Roberson
b56584cbed
Change go to page + add Vercel Analytics integration
2025-06-30 12:10:56 -06:00
Victor Sonck
4c92b9875c
Remove the NLP route, since it is no longer used.
2025-06-22 15:48:33 +02:00
Victor Sonck
f594ca836b
Refactored NLP into a single, shared function for splitting to sentences.
...
now both handleClick and global sentences are the exact same, so the sentenceIndex will always be correct.
2025-06-20 08:25:29 +02:00
Richard Roberson
82bb91a850
Add TXT and MD support with and HTML viewer with react markdown + many refactors to support it
2025-04-15 02:28:51 -06:00
Richard Roberson
4ed6b17e98
Support gpt-4o-mini-tts with instructions
Build and Publish Docker Image / build (push) Has been cancelled
2025-03-21 11:32:42 -06:00
Richard Roberson
f464b059e4
Update API settings
2025-03-13 21:00:34 -06:00
Richard Roberson
520236b95c
add DOCX support (requires libreoffice) + upload test
2025-03-04 22:47:37 -07:00
Richard Roberson
ce9df9a5ab
implement retry logic for TTS API calls and clean up code
2025-03-03 23:03:52 -07:00
Richard Roberson
54dea5da36
Add onloaderror retries
2025-03-02 22:13:08 -07:00
Richard Roberson
4aaa74414f
Update tests
2025-03-02 20:19:52 -07:00
Richard Roberson
b89d1700e9
Fix for longer audiobooks
2025-03-01 18:21:51 -07:00
Richard Roberson
e3370f7526
Further audiobook extraction optimizations
2025-02-26 04:03:05 -07:00
Richard Roberson
b67aea6b27
Refactor audio conversion API to improve memory management and add streaming response
2025-02-25 23:38:29 -07:00
Richard Roberson
4a2d75e155
Export to m4b from WAV efficiently
2025-02-25 20:01:15 -07:00
Richard Roberson
79d2e7f613
Working m4b
2025-02-25 19:47:30 -07:00
Richard Roberson
b87b83310b
Rely on TTS API for splitting
2025-02-25 00:58:32 -07:00
Richard Roberson
96376e2324
Environment changes, set in Docker run
2025-02-23 13:20:42 -07:00
Richard Roberson
0be34a09fe
Re-add AbortController API, fixes duplicate playback
2025-02-23 01:29:10 -07:00
Richard Roberson
9d6632d2d0
Use server instead of client for open ai request + large refactors and bug fixes
2025-02-21 11:24:07 -07:00
Richard Roberson
0ce14f3aec
Refactors + epub location fixes
2025-02-18 02:31:30 -07:00
Richard Roberson
9ae6dd9e82
Fix epub use theme and saved location
2025-02-17 23:03:28 -07:00
Richard Roberson
737cf5c9f5
Fix + debounce epub text extraction on window resize
2025-02-17 11:14:00 -07:00
Richard Roberson
1dcf1b09e3
Setting for themed epubs
2025-02-14 01:51:33 -07:00
Richard Roberson
09188ecab2
Update nlp max length
2025-02-13 17:17:29 -07:00
Richard Roberson
005ac66d7e
More themes
2025-02-13 04:25:49 -07:00
Richard Roberson
80bc0b0006
Refactor new doc list
2025-02-13 04:12:16 -07:00
Richard Roberson
1f2ebb7ba2
Fix theme flickering on Chromium
2025-02-13 00:56:48 -07:00
Richard Roberson
bc790df89e
Cleanup imports and ssr cabable components
2025-02-13 00:09:49 -07:00
Richard Roberson
a6915ee51d
Merge branch 'main' into advanced-doclist
2025-02-12 20:29:27 -07:00
Richard Roberson
9d4377cdf9
switch settings location
2025-02-12 05:25:46 -07:00
Richard Roberson
b7f64a28b1
Merge branch 'main' into advanced-doclist
2025-02-12 02:39:18 -07:00
Richard Roberson
521eda6cff
Move nlp processing to next server
2025-02-12 02:14:56 -07:00
Richard Roberson
f441b030cf
DocumentList: Drag to create folders + sorting
2025-02-12 00:14:57 -07:00
Richard Roberson
d839d3cfa4
App settings upgrade + new themes
2025-02-11 14:16:47 -07:00
Richard Roberson
4bd443aea4
Add server side document store
2025-02-11 01:29:02 -07:00
Richard Roberson
e8008b68ab
Save last EPUB location
2025-02-10 11:49:49 -07:00
Richard Roberson
a5ea48ed3d
Update SEO metadata
2025-02-09 15:13:48 -07:00
Richard Roberson
707dd9261a
EPUB Working Well
2025-02-09 11:52:42 -07:00
Richard Roberson
2fa91a2448
Working epub viewer
2025-02-08 15:55:31 -07:00
Richard Roberson
7d667b2114
Prepare epub work
2025-02-08 13:07:36 -07:00
Richard Roberson
e3167a18ea
Use react-hot-toast for important notifications
2025-02-05 15:07:24 -07:00
Richard Roberson
8531d4a68a
Update 'use client' in places
2025-02-04 22:28:38 -07:00
Richard Roberson
96e499cc58
Setting to automatically skip blank pages, on by default
2025-02-04 18:53:52 -07:00
Richard Roberson
74b486139d
Only show footer in production
2025-02-04 03:18:20 -07:00
Richard Roberson
8f90455862
Darker dark
2025-01-28 18:35:56 -07:00
Richard Roberson
ca1e3a83a9
Better mobile styling
2025-01-28 18:14:33 -07:00
Richard Roberson
ced82d7bf5
Allow 300% zoom
2025-01-26 23:14:56 -07:00
Richard Roberson
8ed930e65a
Improve SEO
2025-01-26 23:11:36 -07:00
Richard Roberson
f9ab9190c2
Add button animations
2025-01-26 20:43:42 -07:00
Richard Roberson
e8922d6acf
Add footer
2025-01-26 19:31:05 -07:00
Richard Roberson
55919310a5
Add different view modes
2025-01-26 18:34:31 -07:00
Richard Roberson
92ee491363
Apple web app capable changes
2025-01-26 16:49:05 -07:00
Richard Roberson
21e1b8f9ca
Another build fix
2025-01-26 03:02:32 -07:00
Richard Roberson
8495e4212d
Document load fix
2025-01-26 02:33:41 -07:00
Richard Roberson
9374d3efbe
Build fixes
2025-01-26 02:15:14 -07:00
Richard Roberson
43d34fb2f7
Fix
2025-01-25 23:55:07 -07:00
Richard Roberson
34d9d4715c
Fix increment page
2025-01-25 23:47:19 -07:00
Richard Roberson
429ec3f264
Single page viewer + Major refactor
2025-01-25 22:23:29 -07:00
Richard Roberson
d78be686c1
Add better zoom + controls
2025-01-22 13:34:48 -07:00
Richard Roberson
5edae0e8ae
cleanup
2025-01-22 11:51:08 -07:00
Richard Roberson
23d7fae8c2
Add api settings to settings modal + fix README.md
2025-01-22 09:50:47 -07:00
Richard Roberson
9823cd9596
Fix refreshing issue
2025-01-19 20:27:39 -07:00
Richard Roberson
728eb185b7
Rename /context --> /contexts
2025-01-19 14:45:32 -07:00
Richard Roberson
3e82def76c
Add theme switching + fixes
2025-01-19 03:44:04 -07:00
Richard Roberson
51352943c6
First reasonably okay version
2025-01-19 00:14:32 -07:00
Richard Roberson
355e4ebe29
Use indexed db
2025-01-18 21:59:02 -07:00
Richard Roberson
109d43f585
Buggy but working
2025-01-18 19:30:50 -07:00
Richard Roberson
1ce63a8fba
Add compromise, TTSPlayer template
2025-01-18 15:47:37 -07:00
Richard Roberson
ae8eb084c2
Update
2025-01-18 13:04:38 -07:00
Richard Roberson
8263a84e40
Working
2025-01-18 05:38:13 -07:00
Richard Roberson
5ecd54a0be
First push
2025-01-18 04:58:57 -07:00