Stable Diffusion web UI-UX
Not just a browser interface based on Gradio library for Stable Diffusion. A pixel perfect design, mobile friendly, customizable interface that adds accessibility, ease of use and extended functionallity to the stable diffusion web ui. Enjoy!
Default theme
Features of ui-ux
- resizable viewport
- switchable viewports (DoubleClick on the split handler to swap views) option in settings for default position
- mobile navigation
- top header tabs (option setting)
- hidden tabs (option setting) no need to restart this is a different implementation
- drag and drop reordable quick settings offcanvas aside view
- drag and drop images to txt2img and img2img and import generation info parameters along with a preview image
- ignore - remove overrides when import [multiselect] (option setting)
- resizable cards for extra networks and number of rows (option setting)
- lazy loading alternative offcanvas aside view for extra networks (option setting)
- live preview image fit method (option setting)
- generated image fit method (option setting)
- max resolution output for txt2img and img2img (option setting)
- performant dispatch for gradio's range slider and input number field issue: https://github.com/gradio-app/gradio/issues/3204 (option setting) latest update uses only one instance clone to mediate for the release event
- ticks input range sliders (option setting)
- pacman preloader unified colors on reload ui
- frame border animation when generating images
- progress bar on top of the page always visible (when scroll for mobile)
- remix icons
- style theme configurator extension to customize every aspect of theme in real time with cool global functions to change the hue / saturation / brightness or invert the theme colors
- pan and zoom in out functionality for sketch, inpaint, inpaint sketch
- fullscreen support for sketch, inpaint, inpaint sketch
- better lightbox with zoom in-out mobile gestures support etc..
TODO
- small arrows next to icons sent to inpaint, extras, img2img etc
- component gallery navigate to previous generations inside the txt2img, img2img interface
- and auto load the current generation settings
- credits/about page display all 300+ contributors so far inside the UI
Quick Settings aside off-canvas view - drag and drop to custom sort your settings
Extra Networks aside off-canvas view
Detail img2img sketch view
Theme Configurator - aside off-canvas view
Mobile 395px width
Features
Detailed feature showcase with images
Installation and Running
Make sure the required dependencies are met and follow the instructions available for both NVidia (recommended) and AMD GPUs.
Alternatively, use online services (like Google Colab):
Installation on Windows
- Install Python 3.10.6 (Newer version of Python does not support torch), checking "Add Python to PATH".
- Install git.
- Download the stable-diffusion-webui-ux repository, for example by running
git clone https://github.com/anapnoe/stable-diffusion-webui-ux.git
. - Run
webui-user.bat
from Windows Explorer as normal, non-administrator, user.
Installation on Linux
- Install the dependencies:
# Debian-based:
sudo apt install wget git python3 python3-venv
# Red Hat-based:
sudo dnf install wget git python3
# Arch-based:
sudo pacman -S wget git python3
- Navigate to the directory you would like the webui to be installed and execute the following command:
bash <(wget -qO- https://raw.githubusercontent.com/anapnoe/stable-diffusion-webui-ux/master/webui.sh)
- Run
webui.sh
. - Check
webui-user.sh
for options.
Installation on Apple Silicon
Find the instructions here.
and replace the path in step 3 with git clone https://github.com/anapnoe/stable-diffusion-webui-ux
Contributing
Here's how to add code to the original repo: Contributing
Documentation
The documentation was moved from this README over to the project's wiki.
Credits
Licenses for borrowed code can be found in Settings -> Licenses
screen, and also in html/licenses.html
file.
- Stable Diffusion - https://github.com/CompVis/stable-diffusion, https://github.com/CompVis/taming-transformers
- k-diffusion - https://github.com/crowsonkb/k-diffusion.git
- GFPGAN - https://github.com/TencentARC/GFPGAN.git
- CodeFormer - https://github.com/sczhou/CodeFormer
- ESRGAN - https://github.com/xinntao/ESRGAN
- SwinIR - https://github.com/JingyunLiang/SwinIR
- Swin2SR - https://github.com/mv-lab/swin2sr
- LDSR - https://github.com/Hafiidz/latent-diffusion
- MiDaS - https://github.com/isl-org/MiDaS
- Ideas for optimizations - https://github.com/basujindal/stable-diffusion
- Cross Attention layer optimization - Doggettx - https://github.com/Doggettx/stable-diffusion, original idea for prompt editing.
- Cross Attention layer optimization - InvokeAI, lstein - https://github.com/invoke-ai/InvokeAI (originally http://github.com/lstein/stable-diffusion)
- Sub-quadratic Cross Attention layer optimization - Alex Birch (https://github.com/Birch-san/diffusers/pull/1), Amin Rezaei (https://github.com/AminRezaei0x443/memory-efficient-attention)
- Textual Inversion - Rinon Gal - https://github.com/rinongal/textual_inversion (we're not using his code, but we are using his ideas).
- Idea for SD upscale - https://github.com/jquesnelle/txt2imghd
- Noise generation for outpainting mk2 - https://github.com/parlance-zz/g-diffuser-bot
- CLIP interrogator idea and borrowing some code - https://github.com/pharmapsychotic/clip-interrogator
- Idea for Composable Diffusion - https://github.com/energy-based-model/Compositional-Visual-Generation-with-Composable-Diffusion-Models-PyTorch
- xformers - https://github.com/facebookresearch/xformers
- DeepDanbooru - interrogator for anime diffusers https://github.com/KichangKim/DeepDanbooru
- Sampling in float32 precision from a float16 UNet - marunine for the idea, Birch-san for the example Diffusers implementation (https://github.com/Birch-san/diffusers-play/tree/92feee6)
- Instruct pix2pix - Tim Brooks (star), Aleksander Holynski (star), Alexei A. Efros (no star) - https://github.com/timothybrooks/instruct-pix2pix
- Security advice - RyotaK
- UniPC sampler - Wenliang Zhao - https://github.com/wl-zhao/UniPC
- TAESD - Ollin Boer Bohan - https://github.com/madebyollin/taesd
- Initial Gradio script - posted on 4chan by an Anonymous user. Thank you Anonymous user.
- (You)