I'd like to share Fooocus-MRE (MoonRide Edition), my variant of the original Fooocus (developed by lllyasviel), new UI for SDXL models.
We all know SD web UI and ComfyUI - those are great tools for people who want to make a deep dive into details, customize workflows, use advanced extensions, and so on. But we were missing simple UI that would be easy to use for casual users, that are making first steps into generative art - that's why Fooocus was created. I played with it, and I really liked the idea - it's really simple and easy to use, even by kids.
But I also missed some basic features in it, which lllyasviel didn't want to be included in vanilla Fooocus - settings like steps, samplers, scheduler, and so on. That's why I decided to create Fooocus-MRE, and implement those essential features I've missed in the vanilla version. I want to stick to the same philosophy and keep it as simple as possible, just with few more options for a bit more advanced users, who know what they're doing.
For comfortable usage it's highly recommended to have at least 20 GB of free RAM, and GPU with at least 8 GB of VRAM.
You can find additional information about stuff like Control-LoRAs or included styles in Fooocus-MRE wiki.
List of features added into Fooocus-MRE, that are not available in original Fooocus:
Support for Image-2-Image mode.
Support for Control-LoRA: Canny Edge (guiding diffusion using edge detection on input, see Canny Edge description from SAI).
Support for Control-LoRA: Depth (guiding diffusion using depth information from input, see Depth description from SAI).
Support for Control-LoRA: Revision (prompting with images, see Revision description from SAI).
Adjustable text prompt strengths (useful in Revision mode).
Support for embeddings (use "embedding:embedding_name" syntax, ComfyUI style).
Customizable sampling parameters (sampler, scheduler, steps, base / refiner switch point, CFG, CLIP Skip).
Displaying full metadata for generated images in the UI.
Support for JPEG format.
Ability to save full metadata for generated images (as JSON or embedded in image, disabled by default).
Ability to load prompt information from JSON and image files (if saved with metadata).
Ability to change default values of UI settings (loaded from settings.json file - use settings-example.json as a template).
Ability to retain input files names (when using Image-2-Image mode).
Ability to generate multiple images using same seed (useful in Image-2-Image mode).
Ability to generate images forever (ported from SD web UI - right-click on Generate button to start or stop this mode).
Official list of SDXL resolutions (as defined in SDXL paper).
Compact resolution and style selection (thx to runew0lf for hints).
Support for custom resolutions list (loaded from resolutions.json - use resolutions-example.json as a template).
Support for custom resolutions - you can just type it now in Resolution field, like "1280x640".
Support for upscaling via Image-2-Image (see example in Wiki).
Support for custom styles (loaded from sdxl_styles folder on start).
Support for playing audio when generation is finished (ported from SD web UI - use notification.ogg or notification.mp3).
Starting generation via Ctrl-ENTER hotkey (ported from SD web UI).
Support for loading models from subfolders (ported from RuinedFooocus).
Support for authentication in --share mode (credentials loaded from auth.json - use auth-example.json as a template).
Support for wildcards (ported from RuinedFooocus - put them in wildcards folder, then try prompts like
__color__ sports carwith different seeds).Support for FreeU.
Limited support for non-SDXL models (no refiner, Control-LoRAs, Revision, inpainting, outpainting).
Style Iterator (iterates over selected style(s) combined with remaining styles - S1, S1 + S2, S1 + S3, S1 + S4, and so on; for comparing styles pick no initial style, and use same seed for all images).
If you find my work useful / helpful, please consider supporting it - even $1 would be nice :).
Description
First release.
FAQ
Comments (12)
Really good idea for the one that struggles with Comfy and want some friendly UI!
I don't know what the idea was to have a comfyui to practice operations? Laughable, good webui not to develop ~ very obvious internal struggle smell of gunpowder, ruin the development of SD!
Thank you for this, came here to see about metadata for Fooocus and this looks the ticket. I like Fooocus for it's XL optimizations and thought a few more options would make it superb. Kudos!
Thank you very much !
Oh, please can you remind me something... if i wish to start on the dark style by default (adding: ?__theme=dark) at the end of the default URL, which file should i modify ?
I didn't try theming, yet - adding it to the wishlist. I know runew0lf played with theming on his fork (RuinedFooocus, https://github.com/runew0lf/RuinedFooocus), so you might take a look on it there.
@MoonRide Great, hop you can add it later by default or a button to restart the url in dark mode. For now doing it manually (refreshing the broser with this url: http://127.0.0.1:7860/?__theme=dark just works fine. so you shouldn't have to much work to add it later. Thank you very much for your help & support and doing the MRE version as well ^_^
Also allow me to suggest something... if you have few min, can you just have a look to this extension 'cozy nest' https://github.com/Nevysha/Cozy-Nest it is (in my opinion) a winner extension to simplify the process with Loras, checkpoints, and so on.... i mean i'm not using any other features of the extension but the hidden tab to select loras, checkpoints, speed up things and is a must. Maybe it could be something to think about for a feature request.
Thank you for the release. Report a bug. When writing METADATA to PNG in continuous image creation, the seed will be the first image. It would be helpful if you could fix it.
↓
OK. got it. Although it is written correctly in PNG, SEED is not reflected accurately in Load Prompt. The number ends with 000. Please fix it.
It works this way because the field in the UI acts as seed for whole batch - so when you regenerate all images again, you will get exactly the same set images.
Random seeds are indeed generated with 1000 resolution (I didn't notice it previously - thanks for pointing it out) - I will look into it, as it's kinda interesting why it happens :).
Update: Python code for seed generation is fine - it seems that some resolution is lost when Gradio is importing the value it to the web component.
@jinnxamel Problem with random numbers losing precision was caused by Gradio Number (Gradio issue #5354). I've applied workaround in the current version - random numbers should work properly, now.
Can I ask what are the differences between INPUT, REVISION and OUTPUT? And what can be a goof way to upscale the image (like using 4SHARP in A1111)
Input images are sources for Image-2-Image. Revision images can be used as either alternative (when zero-outing text prompts) or supplementary to text prompts to guide image generation. You can look at the description from SAI, here: https://huggingface.co/stabilityai/control-lora#revision.
No support for upscaling at the moment - it's pretty complex subject, and it's not easy to do it well. I am not satisfied with quality offered by simple upscalers like UltraSharp, so I am not adding those to Fooocus. If I figure out something good, and relatively simple (to not complicate workflow and the UI) - I will add it, then.





