Commit graph

55 commits

Author SHA1 Message Date
Christopher Quenneville
f2703ec003 feat: add Open WebUI as image generation provider
Add native support for Open WebUI's image generation API as a new
image provider option. Open WebUI exposes an OpenAI-like
/v1/images/generations endpoint but with key differences that
require special handling:

- Response is a bare JSON array instead of {"data": [...]}
- Image URLs are relative paths (e.g. /api/v1/files/.../content)
- File downloads require the same Bearer auth token

The implementation uses raw HTTP calls via aiohttp rather than the
OpenAI SDK to handle these differences. No model parameter is sent
since Open WebUI manages the image model in its own admin settings.

Backend changes:
- New OPEN_WEBUI enum value in ImageProvider
- generate_image_open_webui() method in ImageGenerationService
- Environment getters/setters for OPEN_WEBUI_IMAGE_URL and
  OPEN_WEBUI_IMAGE_API_KEY
- UserConfig model and config loading/saving pipeline updated

Frontend changes:
- New "Open WebUI" option in image provider dropdown
- Settings UI with URL and optional API key fields
- Validation, field mappings, and config persistence

Docker:
- OPEN_WEBUI_IMAGE_URL and OPEN_WEBUI_IMAGE_API_KEY added to all
  docker-compose service definitions

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-05 12:27:45 -05:00
shiva raj badu
0c772a28e4
fix: present mode theme issue 2026-03-29 17:27:31 +05:45
shiva raj badu
22ee90664c
feat: enhance Ollama URL handling in TextProvider and PresentonMode components, adding custom URL options and improving user experience 2026-03-04 12:34:46 +05:45
Sudip Parajuli
00ae125e83
Merge branch 'main' into feat/revamp_design 2026-03-02 19:37:50 +05:45
shiva raj badu
3cdbf246ab
feat: Update Text/Image provider & Pages Designs. 2026-03-02 00:02:19 +05:45
shiva raj badu
ebccd4976b
feat: Integrate TextProvider and ImageProvider components in settings page for enhanced LLM configuration options 2026-02-28 23:58:14 +05:45
sudipnext
d2e85a8ffa feat: implement Codex OAuth flow and integrate into application
- Added Codex authentication endpoints and logic for OAuth flow.
- Updated Docker configuration to expose port 1455 for Codex callback.
- Enhanced user configuration model to include Codex-related fields.
- Integrated Codex selection into the LLM provider UI.
- Implemented token management and refresh logic for Codex.
- Added utility functions for handling Codex OAuth tokens and state management.
2026-02-24 18:51:35 +05:45
sauravniraula
908bea18b5
feat: adds gpt image 1.5 2025-12-21 01:14:31 +05:45
shiva raj badu
f421260bfc
feat: nano banana image generation model integration 2025-12-19 00:41:55 +05:45
shiva raj badu
ea8db1bfdd
feat: replace local image provider with ComfyUI configuration in environment variables and user settings 2025-12-18 22:42:53 +05:45
shiva raj badu
e72cea3655
feat: integrate ComfyUI workflow for local image generation 2025-12-17 21:04:32 +05:45
shiva raj badu
c34fb75302
feat: local image provider 2025-12-15 19:12:34 +05:45
sauravniraula
bcf8dabbed
feat: adds option to disable image generation for slides 2025-11-28 00:27:54 +05:45
shiva raj badu
9765749a83
feat: add undo/redo buttons & re-generate in presentation page 2025-08-30 16:31:11 +05:45
sauravniraula
667415997e
chore: uses proper naming for vars and functions 2025-08-13 13:59:09 +05:45
sauravniraula
5f79275985
chore: adds ppt prepare and stream api call events 2025-08-13 13:31:33 +05:45
sauravniraula
88bbff4998
fix(nextjs): changes some event names and removes search query from button click event 2025-08-13 13:21:43 +05:45
sauravniraula
4b2a84b320
feat(nextjs): adds basic anonymous tracking that tracks navigation, api calls (Just name of endpoint is tracked) and button clicks 2025-08-12 20:15:17 +05:45
sauravniraula
5278146126
feat(nextjs): adds speaker note attribute in HtmlElement and extracts it on export 2025-08-12 16:57:57 +05:45
sauravniraula
56cd69a8b6
fix: division by zero, no paragraphs in text box model and elements with 0 width or height issue solved 2025-08-10 17:52:52 +05:45
sauravniraula
52215bb7e7
style: remove ollama icons 2025-08-09 03:47:52 +05:45
sauravniraula
3f523f1491
refactor: removes redis service and env variables, fix(fastapi): user config bool env variables issues, parse tool fix for custom llm on tool call structured output 2025-08-09 03:03:13 +05:45
sauravniraula
c599aa15e4
feat: adds options to select between tool calls/json schema and enable disable thinking for custom models 2025-08-04 14:50:55 +05:45
sauravniraula
686f60676e
chore(fastapi), feat(nextjs): adds tool calls selector 2025-08-04 13:46:07 +05:45
sauravniraula
6b9635d165
feat(nextjs): adds model selection options for openai and google, refactor 2025-08-01 00:15:56 +05:45
sauravniraula
ac5d278a9b
feat(nextjs): adds claude support in home and settings page 2025-07-30 23:30:39 +05:45
sauravniraula
b1192e8471
fix(nextjs+fastapi): adds invert in pptx picture box model, which when set inverts the image during export 2025-07-26 20:25:29 +05:45
sauravniraula
96f12e6c82
fix(nextjs): if element is svg convert it directly to png and pass opacity values in pptx picture model 2025-07-26 01:28:00 +05:45
sauravniraula
7122325401
feat(nextjs): elements with background image style will be extractly correctly on export 2025-07-26 00:52:18 +05:45
sauravniraula
cd8361ed2d
fix(nextjs): adds overlay to change icon color based on brightness and invert filters 2025-07-26 00:06:04 +05:45
sauravniraula
23d0c7fb17
feat(nextjs+fastapi): fixes presentation export 2025-07-24 01:45:50 +05:45
sauravniraula
521c85f726
fix(nextjs): parses border radius to int 2025-07-24 00:26:49 +05:45
sauravniraula
99cde255ac
fix(fastapi): adds a default transparent shadow effect if shadow is None while creating PPTX, fix(nextjs): improvements on presentation_to_pptx_model endpoint, fix(nextjs): improves pdf export 2025-07-24 00:13:58 +05:45
sauravniraula
801f103c2a
style(nextjs): changes home llm selection layout 2025-07-23 00:00:06 +05:45
sauravniraula
d763393376
fix(nextjs): improves parse border radius to clamp 2025-07-21 18:57:38 +05:45
sauravniraula
52892482e4
fix(nextjs): implements working screenshot logic, perf(nextjs): process all slides in parallel 2025-07-20 18:45:44 +05:45
Saurav Niraula
523945a8f1
Merge pull request #101 from presenton/feat/presentation_export
feat(nextjs): implements presentation export for all elements except svg, canvas and tables
2025-07-19 23:06:42 +05:45
sauravniraula
4b9cabbada
feat(nextjs): implements presentation export for all elements except svg, canvas and tables 2025-07-19 23:05:40 +05:45
shiva raj badu
d4813b02a6
refactor (Nextjs): Unused files and function removed 2025-07-19 22:59:02 +05:45
sauravniraula
039048f139
fix(nextjs): makes box with shadow inherit color from parents to fix export issue 2025-07-19 18:09:38 +05:45
sauravniraula
c760736e51
feat(nextjs): somewhat working presentation export 2025-07-19 17:05:18 +05:45
Saurav Niraula
ac90de96de
Merge pull request #92 from presenton/feat/separate-text-and-image-models-53
Feat/separate text and image models 53
2025-07-19 12:45:41 +05:45
sauravniraula
19e69739b8
feat(fastapi): adds slide element attributes to pptx_model and improves element attributes scraping 2025-07-19 12:43:48 +05:45
sudipnext
2171dba4e5 feat: replace 'imagen' with 'gemini_flash' across image provider configurations and related services 2025-07-19 11:22:20 +05:45
sudipnext
21dca979ce feat: add image provider configuration and validation
- Updated LLMConfig interface to include IMAGE_PROVIDER and PIXABAY_API_KEY.
- Enhanced handleSaveLLMConfig to log the saving process and validate IMAGE_PROVIDER.
- Implemented image provider validation logic in hasValidLLMConfig to check for required API keys based on the selected provider.
- Modified start.js to read IMAGE_PROVIDER and PIXABAY_API_KEY from environment variables and include them in the user configuration setup.
2025-07-18 17:52:23 +05:45
sauravniraula
a7516ee208
feat(nextjs): adds basic slide scraper endpoint, feat(fastapi): adds presentation export endpoint and pptx creator service 2025-07-18 08:16:35 +05:45
sauravniraula
d5cb629d2b
fix(custom_url_support): makes api key optional 2025-07-08 16:12:47 +05:45
sauravniraula
eb25416219
feat(fastapi, nextjs): adds custom openai compartible url support 2025-07-08 13:12:01 +05:45
sauravniraula
62e56b988d
fix(fastapi, nextjs): fixes errors while using Custom Ollama URL 2025-07-06 15:29:23 +05:45
sauravniraula
2542ad6f20
feat(nextjs, fastapi): support for ollama custom url 2025-06-29 23:12:31 +05:45