Commit graph

121 commits

Author SHA1 Message Date
sudipnext
b20199a4e3 feat: Integrate Vertex AI and Azure OpenAI support
- Added environment variables for Vertex AI and Azure OpenAI configurations in docker-compose and user configuration models.
- Updated the application logic to handle Vertex and Azure as new LLM providers, including validation and API key management.
- Enhanced the UI components to support model selection and API key input for Vertex and Azure.
- Updated relevant utility functions and constants to accommodate the new providers.
- Ensured proper error handling for configuration requirements specific to Vertex and Azure.
2026-04-30 06:03:39 +05:45
sudipnext
8c3bc13542 Merge branch 'main' into refactor/presenton-chat-stream 2026-04-27 19:54:01 +05:45
sudipnext
64cdac963b chore: Update llmai dependency to version 0.2.2 and enhance chat prompt clarity
- Updated the llmai dependency from version 0.2.1 to 0.2.2 for improved functionality.
- Revised the system prompt in the chat service to clarify the use of context and tools, emphasizing the importance of accurate responses based on live data.
- Enhanced the chat UI to better reflect tool usage and assistant activities, improving user experience.
2026-04-27 17:21:25 +05:45
sudipnext
7084c5f962 fix: Update OpenAI API type to use completions for stability 2026-04-25 14:20:56 +05:45
sauravniraula
11904c6cb0
refactor: cleans old unused export files from both docker and electron and uses package for export 2026-04-24 10:12:23 +05:45
Sudip Parajuli
fe1e7480f6
Merge pull request #534 from presenton/auth-setup
Auth setup
2026-04-23 17:45:41 +05:45
sudipnext
f8da1802fd Enhance authentication handling in FastAPI by adding basic authentication support and improving session token management. Introduced new utility functions for retrieving configured usernames and basic auth credentials, and updated middleware to utilize these enhancements for better session management. 2026-04-23 17:00:17 +05:45
sauravniraula
f76d17314a
feat: integrates llmai instead of using old llm client and tool call handlers 2026-04-23 11:42:15 +05:45
sudipnext
d07f8f05f6 fix: update placeholder image paths to use a consistent placeholder.jpg across image generation service and tests 2026-04-22 12:50:21 +05:45
sudipnext
effa9ad026 feat: implement single-user authentication with environment variable support and update FastAPI middleware for session management 2026-04-21 17:41:37 +05:45
Sudip Parajuli
7f4d6acdd8
Merge branch 'main' into feat/docker-release-electron-sync 2026-04-20 20:56:20 +05:45
sudipnext
e0a66c8963 Refactor code structure for improved readability and maintainability 2026-04-20 19:47:59 +05:45
sudipnext
3d06644914 feat: update placeholder image references and improve asset handling
- Replaced all instances of the placeholder image path from "/static/images/placeholder.jpg" to "/static/images/replaceable_template_image.png".
- Added a new Nginx location block for serving app data with a long cache expiration.
- Enhanced the image generation service to return the new template image when generation fails.
- Updated various services and endpoints to ensure consistent handling of asset paths, including resolving backend asset URLs.
- Removed Electron-specific checks from several components to streamline API calls and improve compatibility with web deployments.
- Improved error handling and logging in the PDF export process.
- Adjusted Next.js configuration for API routing to ensure proper asset serving in Docker environments.
2026-04-18 20:56:37 +05:45
sudipnext
040c619889 fix: refine web search handling in LLM client and presentation outline generation
- Updated LLMClient to include CODEX in web search checks.
- Simplified web search logic in generate_ppt_outline to improve clarity and efficiency.
- Ensured consistent usage of web search settings across methods.
2026-04-16 20:11:25 +05:45
sudipnext
a3a6a1acd2 Refactor code structure and remove redundant changes in multiple sections 2026-04-16 13:33:21 +05:45
Saurav Niraula
6522299f25
Merge pull request #456 from voidborne-d/fix/db-connection-pool-config
fix: configure SQLAlchemy connection pool and dispose engines on shutdown
2026-04-15 18:35:31 +05:45
sudipnext
c7860127f2 feat: add support for optional embedded Ollama and enhance database migration handling
- Updated docker-compose.yml to allow disabling embedded Ollama via environment variable.
- Refactored Dockerfile and Dockerfile.dev for improved dependency management and installation process.
- Enhanced FastAPI migration scripts to handle orphaned Alembic revisions and added new database migration logic.
- Improved error handling in background tasks and Codex authentication endpoints.
- Added support for font file uploads with better validation and extraction of font names.
- Introduced new image search functionality with support for Pexels and Pixabay APIs.
2026-04-15 15:39:35 +05:45
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
sudipnext
69baa06c81 feat: update Codex model versions and enhance content length limits 2026-03-27 18:30:03 +05:45
voidborne-d
f8156df6f5 fix: configure SQLAlchemy connection pool and dispose engines on shutdown
- Add configurable pool settings via environment variables:
  DB_POOL_SIZE, DB_MAX_OVERFLOW, DB_POOL_TIMEOUT, DB_POOL_RECYCLE,
  DB_POOL_PRE_PING (defaults: 5, 10, 30s, 1800s, true)
- Enable pool_pre_ping by default to detect and recycle stale connections
- Add dispose_engines() called during FastAPI lifespan shutdown to
  release all connections back to the database
- Skip pool configuration for SQLite (uses file-lock, not connection pools)
- Apply changes to both servers/ and electron/ FastAPI instances

Fixes #453 (stale connections exhausting pool)
Fixes #454 (missing pool configuration)
2026-03-20 06:08:54 +00:00
sudipnext
bed2d56074 refactor: streamline image path resolution in FastAPI endpoints and PPTX presentation creator using new utility function 2026-03-08 21:08:27 +05:45
sudipnext
2d462d8df4 feat: implement database migration on startup and update dependencies for FastAPI 2026-03-08 20:05:44 +05:45
shiva raj badu
28f2b18e06
feat: completed theme & custom theme UI 2026-03-03 10:50:11 +05:45
shiva raj badu
ef078d57d2
feat: add theme management endpoints, integrate color palette generation and UI implementation 2026-03-02 23:15:15 +05:45
sudipnext
34eed2413f feat: update version to 0.6.1-beta and ensure array schemas have items in JSON responses 2026-03-02 17:11:25 +05:45
sudipnext
d2e3ab9d15 feat: add CodexLLMAdapter for structured LLM calls and integrate with LLMClient
- Introduced CodexLLMAdapter to handle structured and unstructured LLM calls via the Codex Responses API.
- Implemented methods for converting tool formats and building request bodies for Codex.
- Refactored LLMClient to utilize CodexLLMAdapter, enhancing tool call handling and response processing.
- Updated LLMToolCallsHandler to support Codex as a valid LLM provider.
- Enhanced schema utilities for better JSON schema handling.
2026-02-26 12:38:58 +05:45
sudipnext
5f5482cfd5 feat: enhance LLMClient with Codex integration and error handling
- Implemented a new method to create an AsyncOpenAI client specifically for Codex.
- Added functionality to convert Codex event responses into a dictionary format for easier consumption.
- Updated the streaming methods to utilize the new Codex client and handle API errors gracefully.
- Improved logging for debugging purposes during Codex interactions.
- Refactored message handling in the slide content generation function for clarity and efficiency.
2026-02-25 17:56:39 +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
sudipnext
d623fa6670 fix: add fallback to placeholder icon when no icon is found in slide processing 2026-01-04 17:49:22 +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
c9b60d5f51
fix: default ollama url 2025-11-28 02:56:33 +05:45
sauravniraula
bcf8dabbed
feat: adds option to disable image generation for slides 2025-11-28 00:27:54 +05:45
sauravniraula
cc78faea73
fix(fastapi): /edit, /derive and /export endpoints 2025-09-12 02:27:59 +05:45
sauravniraula
3c5ba63309
feat(fastapi): uses better json loader that parses dirty json 2025-09-12 01:28:59 +05:45
sauravniraula
d344721708
fix: placeholder icon 2025-09-11 22:37:21 +05:45
sauravniraula
a992f40077
feat: adds table of contents, title slide, web search options in both UI and API Endpoints 2025-09-07 22:06:22 +05:45
sauravniraula
c4318b5c28
feat(fastapi): adds better error handling for LLMClient 2025-08-30 14:30:58 +05:45
sauravniraula
614948887f
feat: adds tone, verbosity and refactors tables 2025-08-29 10:52:34 +05:45
sauravniraula
5ec4144f9f
feat: adds content and instruction on UI endpoints 2025-08-28 20:35:27 +05:45
sauravniraula
b33b44de99
fix: icon finder services reinitiating in every request 2025-08-28 14:55:12 +05:45
sauravniraula
0d1de4a28e
feat: adds placeholder image and icons while generating 2025-08-28 14:11:04 +05:45
sauravniraula
c5b255a3c8
fix: removes datetime tool and provide it directly 2025-08-28 14:01:12 +05:45
sauravniraula
1299d37e59
fix(fastapi): improves llm client for structured output 2025-08-20 21:29:48 +05:45
Suraj Jha
4f4783bc35
fix: use http_proxy while getting image on network 2025-08-19 15:19:57 +05:45
sauravniraula
c63bf35c51
fix: adds support for sslmode and other params in database url 2025-08-16 20:48:42 +05:45
sauravniraula
29841bdd06
feat(fastapi): adds logic to generate speaker notes and slide note support in export 2025-08-12 16:18:57 +05:45