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
d2477dc9d8
Merge pull request #58 from RobbyV2/feat/SaveLoadProgress
Build and Publish Docker Image / build (push) Has been cancelled
2025-07-20 12:13:07 -06:00
RobbyV2
7b703f015f
Add cancelText parameter
2025-07-19 21:19:12 -07:00
RobbyV2
32f5cdc494
Saving and Loading Progress Bar
2025-07-19 20:22:50 -07:00
Richard Roberson
f5776e5494
Merge pull request #56 from RobbyV2/DocSelectLoad
2025-07-19 21:16:41 -06:00
RobbyV2
772aa83f6a
Upload multiple files
2025-07-19 19:22:21 -07:00
RobbyV2
0bcae0dee7
Add document selection loading icon
2025-07-19 18:58:08 -07:00
Richard Roberson
593dd7d1a1
Merge pull request #55 from RobbyV2/AutoSelect
...
Auto select page number when navigating
2025-07-19 13:53:45 -06:00
RobbyV2
12e30f4ecf
Allow clicking of internal links
2025-07-19 12:46:05 -07:00
RobbyV2
41ea2cdc52
Auto select navigation
2025-07-19 12:40:01 -07:00
RobbyV2
0aac3f4816
Move button closure higher in SettingsModal
2025-07-17 16:49:52 -07:00
Richard Roberson
b56584cbed
Change go to page + add Vercel Analytics integration
2025-06-30 12:10:56 -06:00
Richard Roberson
08480f07ed
Merge pull request #52 from thepycoder/feature/better-speed-control
2025-06-29 15:09:05 -06:00
Victor Sonck
89833d596b
Allow for player speed changes as well as native voice speed changes. Kokoro for example swallows parts of words when asked to go faster than maybe 1.3x. This fixes that, by simply speeding up the player instead. Since we're already using the html5 version of howler, by default it will pitch-correct the audio and it sounds quite good!
2025-06-23 14:09:51 +02:00
Victor Sonck
ece8bcd35a
Added saving and restoring last location in PDFs
2025-06-23 13:57:27 +02:00
Richard Roberson
e6cd1d0264
Bump version + fix build error
Build and Publish Docker Image / build (push) Has been cancelled
2025-06-22 13:47:23 -06:00
Richard Roberson
8cf685633d
Merge branch 'feature/merge_nlp_implementations' of https://github.com/thepycoder/OpenReader-WebUI into thepycoder-feature/merge_nlp_implementations
2025-06-22 13:23:46 -06:00
Richard Roberson
8d17c69374
Change width and text color
2025-06-22 13:17:26 -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
740c5e17d3
Add editable page number in PDF navigator view, to make it much easier to jump to specific pages
2025-06-20 08:32:53 +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
a1465f1680
Increase size of .md viewer
2025-04-15 11:47:35 -06:00
Richard Roberson
5892383a61
Fix mardown viewer text color
Build and Publish Docker Image / build (push) Has been cancelled
2025-04-15 11:41:26 -06: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
fc780746aa
Bug fixes and readme update
2025-03-30 21:17:16 -06:00
Richard Roberson
7ba807fd95
Pause on page changes + Fix ePub bug when reloading
2025-03-23 17:18:21 -06:00
Richard Roberson
1bbd77f93b
Improve space detection logic in PDF text extraction
2025-03-22 12:10:17 -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
4c5866c02b
Add core-js for promise-with-resolvers support and update version to 0.2.4-patch.4
Build and Publish Docker Image / build (push) Has been cancelled
2025-03-04 18:49:08 -07:00
Richard Roberson
d10d4410e2
Update PDF worker paths and remove setup script
2025-03-04 17:10:57 -07:00
Richard Roberson
4e857a75f0
withResolvers() try again
Build and Publish Docker Image / build (push) Has been cancelled
2025-03-04 14:27:05 -07:00
Richard Roberson
50877d6543
Use legacy PDF worker for lower Safari versions
Build and Publish Docker Image / build (push) Has been cancelled
2025-03-04 13:37:41 -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
4e07e737f0
Stop using audio blobs
2025-03-02 21:16:24 -07:00
Richard Roberson
4aaa74414f
Update tests
2025-03-02 20:19:52 -07:00
Richard Roberson
521aafe8e0
Add tests for playing and pausing
2025-03-02 15:56:53 -07:00
Richard Roberson
136fdb9652
Fix Apple WebKit PDF Upload
2025-03-01 23:36:25 -07:00
Richard Roberson
28a3804843
Setup playwright e2e initial test
2025-03-01 22:44:30 -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
9357dddf3a
Implement PDF audiobook generation with configurable margins for text extraction
2025-02-25 16:11:08 -07:00
Richard Roberson
92220de5ea
Refactor PDF text extraction to support configurable margins for header, footer, left, and right
2025-02-25 15:53:45 -07:00
Richard Roberson
f948601e70
Add configurable text extraction margin for PDF processing
2025-02-25 03:26:37 -07:00
Richard Roberson
b87b83310b
Rely on TTS API for splitting
2025-02-25 00:58:32 -07:00