This project is a web application that allows users to generate and set custom background images using ComfyUI workflows. The application provides a user-friendly interface for customizing workflow parameters, generating stylized images, and managing the generation process.
- Workflow Selection: Browse and select from multiple available workflows with preview images
- Parameter Customization: User-friendly interface for editing workflow parameters including images, numbers, and text inputs
- Live Generation Progress: Real-time progress tracking with elapsed time counter and animated noise background
- Image Preview: Grid view of generated images with lightbox support for detailed viewing
- Image Interaction: Zoom and pan functionality in the lightbox view for detailed image inspection
- Responsive Design: Bootstrap-based responsive interface that works across different screen sizes
- Workflow Management: Tools for converting and managing ComfyUI workflows with user-editable parameters
- TypeScript: Type-safe implementation of the application logic
- Bootstrap 5: Responsive design and UI components
- WebGL: Advanced visual effects for the noise animation background
- WebSocket: Real-time communication with the ComfyUI server
- Modular Architecture: Clean separation of concerns with specialized classes
- Parameter Editor: Handles workflow parameter UI and validation
- Image Generator: Coordinates the image generation process
- Workflow Browser: Manages workflow selection and metadata
- UI State Manager: Controls application state transitions
- Lightbox Manager: Handles image preview and interaction
- API Client: Manages communication with the ComfyUI server
/app: Core application logicapi-client.ts: ComfyUI server communicationimage-generator.ts: Image generation coordinationlightbox-manager.ts: Image preview functionalityparameter-editor.ts: Workflow parameter managementui-state-manager.ts: Application state controlworkflow-browser.ts: Workflow selection interface
/shared: Shared utilities and typesimage-utility.ts: Image processing utilitiesnoise-animation.ts: Background animation effectstypes.ts: TypeScript type definitionsutils.ts: General utility functions
/js: Compiled JavaScript output/css: Stylesheets/lib: Third-party libraries/workflow: ComfyUI workflow definitions and parameters
tsconfig.json: TypeScript compiler settingspackage.json: Project dependencies and scripts
The project uses Node.js and npm for development. Key npm scripts:
npm run build: Compile TypeScript codenpm run watch: Watch for changes and recompilenpm run serve: Start a development servernpm run dev: Run watch and serve in parallel