20 Commits

Author SHA1 Message Date
a1df097f9c feat(media): add Convex media archive with backfill and mixed-media library 2026-04-10 15:15:44 +02:00
d145cebe75 feat(ai): enable all image models with server-side tier enforcement 2026-04-08 07:21:30 +02:00
c10839b27e refactor(convex): modularize ai generation helpers and cleanup flows 2026-04-07 09:21:40 +02:00
ed08b976f9 feat(canvas): add video-prompt node and enhance video generation support
- Introduced a new node type "video-prompt" for AI video generation, including its integration into the canvas command palette and node template picker.
- Updated connection validation to allow connections from text nodes to video-prompt and from video-prompt to ai-video nodes.
- Enhanced error handling and messaging for video generation failures, including specific cases for provider issues.
- Added tests to validate new video-prompt functionality and connection policies.
- Updated localization files to include new labels and prompts for video-prompt and ai-video nodes.
2026-04-07 08:50:59 +02:00
d7d715fd03 fix(convex): rename helper modules to valid convex paths 2026-04-03 19:59:50 +02:00
68416ed9de test: add vitest baseline for critical payment and auth guards 2026-04-03 18:15:18 +02:00
923a73dafe fix(convex): enforce node-canvas match in generateImage 2026-04-03 17:46:26 +02:00
3aaad38e06 Enhance canvas sidebar and toolbar with improved UI and state management
- Integrated NextImage for logo display in the canvas sidebar, enhancing visual consistency.
- Updated canvas name handling in the toolbar to ensure proper display and accessibility.
- Refactored sidebar layout for better responsiveness and user experience.
- Improved state management for category collapsibility in the sidebar, allowing for a more intuitive navigation experience.
2026-04-03 13:51:41 +02:00
Matthias
3926940c5a Show upload progress and fix credit concurrency user scope
- Replace image upload POST with XHR progress tracking
- Keep upload state until Convex sync completes
- Pass owner userId through image generation to decrement concurrency correctly
2026-04-01 20:18:01 +02:00
79d9092d43 Implement internationalization support across components
- Integrated `next-intl` for toast messages and locale handling in various components, including `Providers`, `CanvasUserMenu`, and `CreditOverview`.
- Replaced hardcoded strings with translation keys to enhance localization capabilities.
- Updated `RootLayout` to dynamically set the language attribute based on the user's locale.
- Ensured consistent user feedback through localized toast messages in actions such as sign-out, canvas operations, and billing notifications.
2026-04-01 18:16:52 +02:00
4723fdca16 fix: change retryCount declaration from const to let in generateAndStoreImage function for proper reassignment 2026-03-31 20:44:35 +02:00
df73c389a0 Refactor Convex image generation into queued background sub-processes 2026-03-31 20:39:44 +02:00
Matthias
e5f27d7d29 feat: implement error classification and handling for AI generation limits
- Added error classification for daily generation cap and concurrency limits in the PromptNode component, improving user feedback during AI image generation failures.
- Enhanced toast notifications to provide specific messages for daily limit and concurrent job errors.
- Introduced internal mutations in the credits module to check abuse limits and track usage, ensuring better resource management and user experience.
- Updated AI error handling logic to categorize and respond to different error types effectively.
2026-03-28 11:31:11 +01:00
Matthias
bc3bbf9d69 feat: enhance canvas functionality with new asset node type and improved image handling
- Introduced a new "asset" node type in the canvas sidebar for better resource management.
- Updated image node components to support dynamic image dimensions and improved resizing logic.
- Enhanced prompt and AI image nodes to utilize reference images from asset nodes, improving integration and functionality.
- Refactored canvas utilities to accommodate new asset configurations and maintain consistent media handling.
2026-03-27 20:33:20 +01:00
Matthias
5da0204163 feat: enhance canvas and node components with error handling and retry logic
- Integrated retry logic for AI image generation to handle transient errors and improve user experience.
- Updated error categorization to provide more informative feedback based on different failure scenarios.
- Enhanced node components to display retry attempts and error messages, improving visibility during image generation failures.
- Refactored canvas and node components to include retry count in status updates, ensuring accurate tracking of generation attempts.
2026-03-27 11:35:18 +01:00
8d62ee27a2 feat: enhance dashboard and canvas components with credit management features
- Integrated CreditOverview and RecentTransactions components into the dashboard for better credit visibility.
- Updated canvas toolbar to display current credit balance using CreditDisplay.
- Improved AI image and prompt nodes to show credit costs and handle credit availability checks during image generation.
- Added new queries for fetching recent transactions and monthly usage statistics to support dashboard features.
- Refactored existing code to streamline credit-related functionalities across components.
2026-03-26 22:15:03 +01:00
Matthias
886a530f26 feat: implement internal credits handling in AI image generation
- Added support for internal credits feature in the generateImage action.
- Conditional reservation of credits based on the INTERNAL_CREDITS_ENABLED environment variable.
- Updated error handling to ensure credits are released or committed only when reservations are made.
2026-03-26 20:23:46 +01:00
Matthias
da6529f263 feat: enhance canvas functionality with new node types and improved data handling
- Added support for a new "compare" node type to facilitate side-by-side image comparisons.
- Updated AI image and prompt nodes to include aspect ratio handling for better image generation.
- Enhanced canvas toolbar to include export functionality for canvas data.
- Improved data resolution for compare nodes by resolving incoming edges and updating node data accordingly.
- Refactored frame node to support dynamic resizing and exporting capabilities.
- Introduced debounced saving for prompt node to optimize performance during user input.
2026-03-25 21:33:22 +01:00
Matthias
fffdae3a9c feat: integrate credit cost tracking in AI image generation and prompt nodes
- Added credit cost tracking to AI image nodes, displaying the cost in Euro-Cent.
- Updated prompt node to create edges between prompt and AI image nodes during image generation.
- Enhanced Convex action to include credit cost in image generation data handling.
- Introduced utility function for formatting Euro-Cent values for better user display.
2026-03-25 18:27:45 +01:00
Matthias
8d6ce275f8 feat: enhance AI image generation and prompt handling in canvas components
- Introduced shimmer animation for loading states in AI image nodes.
- Updated prompt node to handle image generation with improved error handling and user feedback.
- Refactored AI image node to manage generation status and display loading indicators.
- Enhanced data handling in canvas components to include canvasId for better context management.
- Improved status message handling in Convex mutations for clearer user feedback.
2026-03-25 18:18:55 +01:00