🍒 Cherry Studio is a desktop client that supports for multiple LLM providers.
Go to file
LiuVaayne 9538d07169 support tokenflux image generation for [Flux.1 Kontext] (#6705)
* Add support for TokenFlux image generation service

This commit integrates TokenFlux as a new painting provider with dynamic
form generation based on model schemas, real-time generation polling,
and full painting history management.

Key features:
- Dynamic form rendering from JSON schema input parameters
- Model selection with pricing display
- Real-time generation status polling
- Integration with existing painting workflow and file management
- Provider-specific painting state management

The implementation follows existing patterns from other painting pages
while adding TokenFlux-specific functionality like schema-based form
generation and asynchronous polling for generation results.

* Add image upload support and comparison view to TokenFlux

Implements file upload handling for image parameters with base64
conversion, random seed generation, and side-by-side comparison
layout when input images are present.

* Refactor TokenFlux to use service class and components

Extract form rendering logic to DynamicFormRender component and API
logic to TokenFluxService class. Simplifies the main component by
removing duplicate code for model fetching, image generation polling,
and form field rendering.

* Refactor TokenFlux to fix state management and polling

- Change painting field from modelId to model for consistency
- Fix updatePaintingState to use functional state updates
- Add automatic polling for in-progress generations on mount
- Group models by provider in the selection dropdown
- Separate prompt from other input params in form data handling
- Improve error handling in the paintings store

* Auto-select first model when models are loaded

* Add image generation UI localization strings

Add translation keys for model selection, input parameters, image
labels, pricing display, and form validation across all supported
locales (en-us, ja-jp, ru-ru, zh-cn, zh-tw). Update TokenFluxPage
component to use localized strings instead of hardcoded English text.

* fix: Add a right border to the first child of the ImageComparisonSection

* style: Remove padding from UploadedImageContainer in TokenFluxPage

* feat: Implement caching for TokenFlux model fetching and update image upload handling

* feat: Enhance localization support by adding language context handling in TokenFluxPage

* refactor: Simplify layout structure in TokenFluxPage by removing unnecessary SectionGroup components and improving section title styling

---------

Co-authored-by: kangfenmao <kangfenmao@qq.com>
2025-06-05 15:47:51 +08:00
.github fix(ci): Update the nightly-build workflow (#6791) 2025-06-04 17:37:13 +08:00
.husky chore(pre-commit): add pre-commit hook to enforce code style (#3351) 2025-03-15 11:09:11 +08:00
.vscode chore: Update runtime version in VSCode launch configuration (#5434) 2025-04-28 18:48:00 +08:00
.yarn fix: update TikToken implementation and remove js-tiktoken dependency 2025-05-28 08:55:52 +08:00
build feat(icons): explicitly add icons in multiple resolutions to correct appimage icon path 2025-04-06 08:28:10 +08:00
docs chore: update electron configuration and add debug script (#6361) 2025-05-26 11:48:19 +08:00
packages/shared feat(constants): expand supported file extensions and categorize text… (#6815) 2025-06-05 12:32:28 +08:00
resources feat: add support for Windows ARM64 architecture in bun installation script 2025-05-23 18:53:55 +08:00
scripts build: add win-sign script 2025-05-22 19:33:40 +08:00
src support tokenflux image generation for [Flux.1 Kontext] (#6705) 2025-06-05 15:47:51 +08:00
tests test: more unit tests (#5130) 2025-05-26 16:50:26 +08:00
.editorconfig fix: electron builder ignore files 2024-08-26 18:19:01 +08:00
.gitattributes opt: optimise local dev with fixed yarn (#3456) 2025-03-19 13:18:11 +08:00
.gitignore chore(gitignore): exclude cursor settings (#6779) 2025-06-04 11:48:58 +08:00
.npmrc opt: optimise local dev with fixed yarn (#3456) 2025-03-19 13:18:11 +08:00
.prettierignore feat: nutstore integration (#3461) 2025-03-25 11:40:11 +08:00
.prettierrc chore(lint): Update ESLint and Prettier configurations 2024-05-24 16:33:26 +08:00
.yarnrc.yml chore: upgrade yarn version to v4.9.1 2025-05-22 15:48:20 +08:00
CODE_OF_CONDUCT.md docs: update documentation for a more inclusive environment and added japanese and chinese documentation 2024-10-25 00:09:01 +08:00
CONTRIBUTING.md docs: contributor guide 2025-04-24 18:14:21 +08:00
dev-app-update.yml feat: add after-build script for renaming files and updating latest.yml 2025-04-14 17:14:45 +08:00
electron-builder.yml chore(version): 1.4.0-rc.3 2025-05-30 15:18:46 +08:00
electron.vite.config.ts chore: update electron-builder configuration to refine file exclusion patterns 2025-05-27 10:06:39 +08:00
eslint.config.mjs ci: fix eslint slow 2025-03-25 18:34:20 +08:00
LICENSE Update LICENSE (#4744) 2025-04-13 08:00:41 +08:00
package.json fix(SelectionAssistant): JetBrains IDEs, Remote desktop, Gaming, PDF views, etc (#6809) 2025-06-04 23:56:05 +08:00
playwright.config.ts test: more unit tests (#5130) 2025-05-26 16:50:26 +08:00
README.md docs: update README files to enhance feature listings and organization 2025-05-26 11:30:34 +08:00
tokenflux_painting_page.md support tokenflux image generation for [Flux.1 Kontext] (#6705) 2025-06-05 15:47:51 +08:00
tsconfig.json feat: add local module 2024-08-27 11:31:05 +08:00
tsconfig.node.json feat: nutstore integration (#3461) 2025-03-25 11:40:11 +08:00
tsconfig.web.json feat: code tools, editor, executor (#4632) 2025-05-16 13:53:44 +08:00
vitest.config.ts test: more unit tests (#5130) 2025-05-26 16:50:26 +08:00
yarn.lock fix(SelectionAssistant): JetBrains IDEs, Remote desktop, Gaming, PDF views, etc (#6809) 2025-06-04 23:56:05 +08:00

banner

English | 中文 | 日本語

kangfenmao%2Fcherry-studio | Trendshift Cherry Studio - AI Chatbots, AI Desktop Client | Product Hunt

🍒 Cherry Studio

Cherry Studio is a desktop client that supports for multiple LLM providers, available on Windows, Mac and Linux.

👏 Join Telegram GroupDiscord | QQ Group(575014769)

❤️ Like Cherry Studio? Give it a star 🌟 or Sponsor to support the development!

📖 Guide

https://docs.cherry-ai.com

🌠 Screenshot

🌟 Key Features

  1. Diverse LLM Provider Support:
  • ☁️ Major LLM Cloud Services: OpenAI, Gemini, Anthropic, and more
  • 🔗 AI Web Service Integration: Claude, Peplexity, Poe, and others
  • 💻 Local Model Support with Ollama, LM Studio
  1. AI Assistants & Conversations:
  • 📚 300+ Pre-configured AI Assistants
  • 🤖 Custom Assistant Creation
  • 💬 Multi-model Simultaneous Conversations
  1. Document & Data Processing:
  • 📄 Support for Text, Images, Office, PDF, and more
  • ☁️ WebDAV File Management and Backup
  • 📊 Mermaid Chart Visualization
  • 💻 Code Syntax Highlighting
  1. Practical Tools Integration:
  • 🔍 Global Search Functionality
  • 📝 Topic Management System
  • 🔤 AI-powered Translation
  • 🎯 Drag-and-drop Sorting
  • 🔌 Mini Program Support
  • ⚙️ MCP(Model Context Protocol) Server
  1. Enhanced User Experience:
  • 🖥️ Cross-platform Support for Windows, Mac, and Linux
  • 📦 Ready to Use, No Environment Setup Required
  • 🎨 Light/Dark Themes and Transparent Window
  • 📝 Complete Markdown Rendering
  • 🤲 Easy Content Sharing

📝 Roadmap

We're actively working on the following features and improvements:

  1. 🎯 Core Features
  • Selection Assistant - Smart content selection enhancement
  • Deep Research - Advanced research capabilities
  • Memory System - Global context awareness
  • Document Preprocessing - Improved document handling
  • MCP Marketplace - Model Context Protocol ecosystem
  1. 🗂 Knowledge Management
  • Notes and Collections
  • Dynamic Canvas visualization
  • OCR capabilities
  • TTS (Text-to-Speech) support
  1. 📱 Platform Support
  • HarmonyOS Edition (PC)
  • Android App (Phase 1)
  • iOS App (Phase 1)
  • Multi-Window support
  • Window Pinning functionality
  1. 🔌 Advanced Features
  • Plugin System
  • ASR (Automatic Speech Recognition)
  • Assistant and Topic Interaction Refactoring

Track our progress and contribute on our project board.

Want to influence our roadmap? Join our GitHub Discussions to share your ideas and feedback!

🌈 Theme

Welcome PR for more themes

🖥️ Develop

Refer to the development documentation

Refer to the Architecture overview documentation

Refer to the Branching Strategy for contribution guidelines

🤝 Contributing

We welcome contributions to Cherry Studio! Here are some ways you can contribute:

  1. Contribute Code: Develop new features or optimize existing code.
  2. Fix Bugs: Submit fixes for any bugs you find.
  3. Maintain Issues: Help manage GitHub issues.
  4. Product Design: Participate in design discussions.
  5. Write Documentation: Improve user manuals and guides.
  6. Community Engagement: Join discussions and help users.
  7. Promote Usage: Spread the word about Cherry Studio.

Getting Started

  1. Fork the Repository: Fork and clone it to your local machine.
  2. Create a Branch: For your changes.
  3. Submit Changes: Commit and push your changes.
  4. Open a Pull Request: Describe your changes and reasons.

For more detailed guidelines, please refer to our Contributing Guide.

Thank you for your support and contributions!

🔗 Related Projects

  • one-api:LLM API management and distribution system, supporting mainstream models like OpenAI, Azure, and Anthropic. Features unified API interface, suitable for key management and secondary distribution.

  • ublacklist:Blocks specific sites from appearing in Google search results

🚀 Contributors



🌐 Community

Telegram | Email | Twitter

Sponsor

Buy Me a Coffee

📃 License

LICENSE

✉️ Contact

yinsenho@cherry-ai.com

Star History

Star History Chart