initial wave of SwarmUI rename pushes

This commit is contained in:
Alex "mcmonkey" Goodwin
2024-06-21 15:55:44 -07:00
parent 6071f8f685
commit cc9943cd8b
45 changed files with 123 additions and 136 deletions

View File

Before

Width:  |  Height:  |  Size: 396 KiB

After

Width:  |  Height:  |  Size: 396 KiB

View File

@@ -1,4 +1,4 @@
# Contributing to StableSwarmUI # Contributing to SwarmUI
Please open an Issue or Discussion, or ask on Discord before opening a pull request, to make sure your work doesn't overlap with others. Please open an Issue or Discussion, or ask on Discord before opening a pull request, to make sure your work doesn't overlap with others.
@@ -12,7 +12,7 @@ Want to help translate Swarm into another language?
- Are you just helping improve an existing language? - Are you just helping improve an existing language?
- Great! Just edit the file in `languages/(language-code).json` and improve the translations included - Great! Just edit the file in `languages/(language-code).json` and improve the translations included
- Do you want to add a new language? - Do you want to add a new language?
- See example commit here: https://github.com/Stability-AI/StableSwarmUI/commit/20fd27a20127b6529a2837eb838a0cfae80c20b8 - See example commit here: https://github.com/mcmonkeyprojects/SwarmUI/commit/20fd27a20127b6529a2837eb838a0cfae80c20b8
- In short: copy/paste `languages/en.json` to `languages/(your-code).json`, fill out the info at the top, and start translating keys. - In short: copy/paste `languages/en.json` to `languages/(your-code).json`, fill out the info at the top, and start translating keys.
- Also add `src/wwwroot/imgs/flags/(your-code).jpg` as a small icon image of a flag that represents the language. - Also add `src/wwwroot/imgs/flags/(your-code).jpg` as a small icon image of a flag that represents the language.
- You can use https://github.com/mcmonkeyprojects/translate-tool to fill out any keys you can't be bothered filling in yourself with automatic AI-powered translation - You can use https://github.com/mcmonkeyprojects/translate-tool to fill out any keys you can't be bothered filling in yourself with automatic AI-powered translation

View File

@@ -1,26 +1,14 @@
# StableSwarmUI # SwarmUI
**StableSwarmUI 0.6.4.1 Beta**. **SwarmUI 0.9.0.0 Beta**.
A Modular Stable Diffusion Web-User-Interface, with an emphasis on making powertools easily accessible, high performance, and extensibility. A Modular Stable Diffusion Web-User-Interface, with an emphasis on making powertools easily accessible, high performance, and extensibility.
![ui-screenshot](.github/images/stableswarmui.jpg) ![ui-screenshot](.github/images/swarmui.jpg)
Join the [Discord](https://discord.gg/q2y38cqjNw) to discuss the project, get support, see announcements, etc. Join the [Discord](https://discord.gg/q2y38cqjNw) to discuss the project, get support, see announcements, etc.
Follow the [Feature Announcements Thread](https://github.com/Stability-AI/StableSwarmUI/discussions/11) for updates on new features. Follow the [Feature Announcements Thread](https://github.com/mcmonkeyprojects/SwarmUI/discussions/1) for updates on new features.
# Migration Notice
As of 2024/06/21 StableSwarmUI will no longer be maintained under Stability AI.
The original developer will be maintaining an independent version of this project as [mcmonkeyprojects/SwarmUI](https://github.com/mcmonkeyprojects/SwarmUI)
Windows users can migrate to the new independent repo by simply updating and then running `migrate-windows.bat`
For Linux, Mac, or manual Windows: open a terminal in your Swarm folder then run `git remote set-url origin https://github.com/mcmonkeyprojects/SwarmUI`
See full migration guide here: https://github.com/mcmonkeyprojects/SwarmUI/discussions/2
---- ----
@@ -45,7 +33,7 @@ Key feature targets not yet implemented:
**WARNING**: Google Colab does not necessarily allow remote WebUIs, particularly for free accounts, use at your own risk. **WARNING**: Google Colab does not necessarily allow remote WebUIs, particularly for free accounts, use at your own risk.
Colab link if you want to try Swarm: https://colab.research.google.com/github/Stability-AI/StableSwarmUI/blob/master/colab/colab-notebook.ipynb Colab link if you want to try Swarm: https://colab.research.google.com/github/mcmonkeyprojects/SwarmUI/blob/master/colab/colab-notebook.ipynb
### Runpod ### Runpod
@@ -57,11 +45,11 @@ Note it may take several minutes to start up the first time. Check the container
Note: if you're on Windows 10, you may need to manually install [git](https://git-scm.com/download/win) and [DotNET 8](https://dotnet.microsoft.com/en-us/download/dotnet/8.0) first. (Windows 11 this is automated). Note: if you're on Windows 10, you may need to manually install [git](https://git-scm.com/download/win) and [DotNET 8](https://dotnet.microsoft.com/en-us/download/dotnet/8.0) first. (Windows 11 this is automated).
- Download [The Install-Windows.bat file](https://github.com/Stability-AI/StableSwarmUI/releases/download/0.6.1-Beta/install-windows.bat), store it somewhere you want to install at (not `Program Files`), and run it. - Download [The Install-Windows.bat file](https://github.com/mcmonkeyprojects/SwarmUI/releases/download/0.6.5-Beta/install-windows.bat), store it somewhere you want to install at (not `Program Files`), and run it.
- It should open a command prompt and install itself. - It should open a command prompt and install itself.
- If it closes without going further, try running it again, it sometimes needs to run twice. (TODO: Fix that) - If it closes without going further, try running it again, it sometimes needs to run twice. (TODO: Fix that)
- It will place an icon on your desktop that you can use to re-launch the server at any time. - It will place an icon on your desktop that you can use to re-launch the server at any time.
- When the installer completes, it will automatically launch the StableSwarmUI server, and open a browser window to the install page. - When the installer completes, it will automatically launch the SwarmUI server, and open a browser window to the install page.
- Follow the install instructions on the page. - Follow the install instructions on the page.
- After you submit, be patient, some of the install processing take a few minutes (downloading models and etc). - After you submit, be patient, some of the install processing take a few minutes (downloading models and etc).
@@ -71,16 +59,16 @@ Note: if you're on Windows 10, you may need to manually install [git](https://gi
- Install git from https://git-scm.com/download/win - Install git from https://git-scm.com/download/win
- Install DotNET 8 SDK from https://dotnet.microsoft.com/en-us/download/dotnet/8.0 (Make sure to get the SDK x64 for Windows) - Install DotNET 8 SDK from https://dotnet.microsoft.com/en-us/download/dotnet/8.0 (Make sure to get the SDK x64 for Windows)
- open a terminal to the folder you want swarm in and run `git clone https://github.com/Stability-AI/StableSwarmUI` - open a terminal to the folder you want swarm in and run `git clone https://github.com/mcmonkeyprojects/SwarmUI`
- open the folder and run `launch-windows.bat` - open the folder and run `launch-windows.bat`
# Installing on Linux # Installing on Linux
- Install `git`, `python3` via your OS package manager if they are not already installed (make sure to include `pip` and `venv` on distros that do not include them in python directly) - Install `git`, `python3` via your OS package manager if they are not already installed (make sure to include `pip` and `venv` on distros that do not include them in python directly)
- For example, on recent Ubuntu versions, `sudo apt install git python3-pip python3-venv` - For example, on recent Ubuntu versions, `sudo apt install git python3-pip python3-venv`
- Download [the install-linux.sh file](https://github.com/Stability-AI/StableSwarmUI/releases/download/0.6.1-Beta/install-linux.sh), store it somewhere you want to install at, and run it - Download [the install-linux.sh file](https://github.com/mcmonkeyprojects/SwarmUI/releases/download/0.6.5-Beta/install-linux.sh), store it somewhere you want to install at, and run it
- If you like terminals, you can open a terminal to the folder and run the following commands: - If you like terminals, you can open a terminal to the folder and run the following commands:
- `wget https://github.com/Stability-AI/StableSwarmUI/releases/download/0.6.1-Beta/install-linux.sh -O install-linux.sh` - `wget https://github.com/mcmonkeyprojects/SwarmUI/releases/download/0.6.5-Beta/install-linux.sh -O install-linux.sh`
- `chmod +x install-linux.sh` - `chmod +x install-linux.sh`
- Run the `./install-linux.sh` script, it will install everything for you and eventually open the webpage in your browser. - Run the `./install-linux.sh` script, it will install everything for you and eventually open the webpage in your browser.
- Follow the install instructions on-page. - Follow the install instructions on-page.
@@ -96,8 +84,8 @@ Note: if you're on Windows 10, you may need to manually install [git](https://gi
- Some users [have said](https://github.com/Stability-AI/StableSwarmUI/pull/6) that certain Linux distros expect `aspnet-runtime` to be installed separately - Some users [have said](https://github.com/Stability-AI/StableSwarmUI/pull/6) that certain Linux distros expect `aspnet-runtime` to be installed separately
- Open a shell terminal and `cd` to a directory you want to install into - Open a shell terminal and `cd` to a directory you want to install into
- Run shell commands: - Run shell commands:
- `git clone https://github.com/Stability-AI/StableSwarmUI` - `git clone https://github.com/mcmonkeyprojects/SwarmUI`
- cd `StableSwarmUI` - cd `SwarmUI`
- `./launch-linux.sh` - `./launch-linux.sh`
- open `http://localhost:7801/Install` (if it doesn't launch itself) - open `http://localhost:7801/Install` (if it doesn't launch itself)
- Follow the install instructions on-page. - Follow the install instructions on-page.
@@ -106,28 +94,28 @@ Note: if you're on Windows 10, you may need to manually install [git](https://gi
# Installing on Mac # Installing on Mac
> **Note**: You can only run StableSwarmUI on Mac computers with M1 or M2 (Mx) Apple silicon processors. > **Note**: You can only run SwarmUI on Mac computers with M1 or M2 (Mx) Apple silicon processors.
- Open Terminal. - Open Terminal.
- Ensure your `brew` packages are updated with `brew update`. - Ensure your `brew` packages are updated with `brew update`.
- Verify your `brew` installation with `brew doctor`. You should not see any error in the command output. - Verify your `brew` installation with `brew doctor`. You should not see any error in the command output.
- Install .NET for macOS: `brew install dotnet`. - Install .NET for macOS: `brew install dotnet`.
- If you don't have Python, install it: `brew install python@3.10` and `brew install virtualenv` - If you don't have Python, install it: `brew install python@3.10` and `brew install virtualenv`
- Change the directory (`cd`) to the folder where you want to install StableSwarmUI. - Change the directory (`cd`) to the folder where you want to install SwarmUI.
- Clone the StableSwarmUI GitHub repository: `git clone https://github.com/Stability-AI/StableSwarmUI`. - Clone the SwarmUI GitHub repository: `git clone https://github.com/mcmonkeyprojects/SwarmUI`.
- `cd StableSwarmUI` and run the installation script: `./launch-macos.sh`. - `cd eSwarmUI` and run the installation script: `./launch-macos.sh`.
The installation starts now and downloads the Stable Diffusion models from the internet. Depending on your internet connection, this may take several minutes. Wait for your web browser to open the StableSwarmUI window. The installation starts now and downloads the Stable Diffusion models from the internet. Depending on your internet connection, this may take several minutes. Wait for your web browser to open the SwarmUI window.
> During the StableSwarmUI installation, you are prompted for the type of backend you want to use. For Mac computers with M1 or M2, you can safely choose the ComfyUI backend and choose the Stable Diffusion XL Base and Refiner models in the Download Models screen. > During the SwarmUI installation, you are prompted for the type of backend you want to use. For Mac computers with M1 or M2, you can safely choose the ComfyUI backend and choose the Stable Diffusion XL Base and Refiner models in the Download Models screen.
# Running with Docker # Running with Docker
- To forward an Nvidia GPU, you must have the Nvidia Container Toolkit installed: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html - To forward an Nvidia GPU, you must have the Nvidia Container Toolkit installed: https://docs.nvidia.com/datacenter/cloud-native/container-toolkit/latest/install-guide.html
- Open a shell terminal and `cd` to a directory you want to install into - Open a shell terminal and `cd` to a directory you want to install into
- Run shell commands: - Run shell commands:
- `git clone https://github.com/Stability-AI/StableSwarmUI` - `git clone https://github.com/mcmonkeyprojects/SwarmUI`
- cd `StableSwarmUI` - cd `SwarmUI`
- `./launch-docker.sh` - `./launch-docker.sh`
- Open your browser to `localhost:7801` - Open your browser to `localhost:7801`
- Note that it will forward the `Models` and `Output` directory, and will mount `Data` and `dlbackend` as independent persistent volumes. - Note that it will forward the `Models` and `Output` directory, and will mount `Data` and `dlbackend` as independent persistent volumes.
@@ -140,7 +128,7 @@ See [the documentation folder](/docs/README.md).
The "Swarm" name is in reference to the original key function of the UI: enabling a 'swarm' of GPUs to all generate images for the same user at once (especially for large grid generations). This is just the feature that inspired the name and not the end all of what Swarm is. The "Swarm" name is in reference to the original key function of the UI: enabling a 'swarm' of GPUs to all generate images for the same user at once (especially for large grid generations). This is just the feature that inspired the name and not the end all of what Swarm is.
The overall goal of StableSwarmUI is to a be full-featured one-stop-shop for all things Stable Diffusion. The overall goal of SwarmUI is to a be full-featured one-stop-shop for all things Stable Diffusion.
See [the motivations document](/docs/Motivations.md) for motivations on technical choices. See [the motivations document](/docs/Motivations.md) for motivations on technical choices.
@@ -161,13 +149,20 @@ This project:
- has the option to connect to remote servers to use [the Stability AI API](https://platform.stability.ai/) as a backend. - has the option to connect to remote servers to use [the Stability AI API](https://platform.stability.ai/) as a backend.
- supports user-built extensions which may have their own licenses or legal conditions. - supports user-built extensions which may have their own licenses or legal conditions.
StableSwarmUI itself is under the MIT license, however some usages may be affected by the GPL variant licenses of connected projects list above, and note that any models used have their own licenses. SwarmUI itself is under the MIT license, however some usages may be affected by the GPL variant licenses of connected projects list above, and note that any models used have their own licenses.
### Previous License
(For updates prior to June 2024)
The MIT License (MIT)
Copyright (c) 2024 Stability AI
### License ### License
The MIT License (MIT) The MIT License (MIT)
Copyright (c) 2024 Stability AI Copyright (c) 2024 Alex "mcmonkey" Goodwin
Permission is hereby granted, free of charge, to any person obtaining a copy Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal of this software and associated documentation files (the "Software"), to deal

View File

@@ -3,7 +3,7 @@ Microsoft Visual Studio Solution File, Format Version 12.00
# Visual Studio Version 17 # Visual Studio Version 17
VisualStudioVersion = 17.5.33530.505 VisualStudioVersion = 17.5.33530.505
MinimumVisualStudioVersion = 10.0.40219.1 MinimumVisualStudioVersion = 10.0.40219.1
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "StableSwarmUI", "src\StableSwarmUI.csproj", "{2A621042-196A-4F9C-88EA-10369EAEE774}" Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "SwarmUI", "src\SwarmUI.csproj", "{2A621042-196A-4F9C-88EA-10369EAEE774}"
EndProject EndProject
Global Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution GlobalSection(SolutionConfigurationPlatforms) = preSolution

View File

@@ -22,7 +22,7 @@
"SWARMPATH = '/content/drive/MyDrive'\n", "SWARMPATH = '/content/drive/MyDrive'\n",
"\n", "\n",
"# Colab breaks venvs, and doesn't save anything valid to drive, so just screw it do a global install of pip reqs if we used a comfy backend in the drive\n", "# Colab breaks venvs, and doesn't save anything valid to drive, so just screw it do a global install of pip reqs if we used a comfy backend in the drive\n",
"!if [[ -f \"$SWARMPATH/StableSwarmUI/dlbackend/ComfyUI/requirements.txt\" ]]; then rm -rf $SWARMPATH/StableSwarmUI/dlbackend/ComfyUI/venv/; pip install -r $SWARMPATH/StableSwarmUI/dlbackend/ComfyUI/requirements.txt; fi" "!if [[ -f \"$SWARMPATH/SwarmUI/dlbackend/ComfyUI/requirements.txt\" ]]; then rm -rf $SWARMPATH/SwarmUI/dlbackend/ComfyUI/venv/; pip install -r $SWARMPATH/SwarmUI/dlbackend/ComfyUI/requirements.txt; fi"
] ]
}, },
{ {
@@ -51,8 +51,8 @@
"# Colab breaks venv, so, tell swarm to not make a venv\n", "# Colab breaks venv, so, tell swarm to not make a venv\n",
"os.environ['SWARM_NO_VENV'] = 'true'\n", "os.environ['SWARM_NO_VENV'] = 'true'\n",
"\n", "\n",
"# Download StableSwarmUI\n", "# Download SwarmUI\n",
"url = \"https://github.com/Stability\" + \"-AI/StableSwarmUI\"\n", "url = \"https://github.com/mcmonkeyprojects/SwarmUI\"\n",
"!git clone $url" "!git clone $url"
] ]
}, },
@@ -65,7 +65,7 @@
"outputs": [], "outputs": [],
"source": [ "source": [
"# Alright, launch it! Watch the output for a Cloudflare URL\n", "# Alright, launch it! Watch the output for a Cloudflare URL\n",
"%cd $SWARMPATH/StableSwarmUI/\n", "%cd $SWARMPATH/SwarmUI/\n",
"!git pull\n", "!git pull\n",
"\n", "\n",
"!bash ./launch-linux.sh --launch_mode none --cloudflared-path cloudflared" "!bash ./launch-linux.sh --launch_mode none --cloudflared-path cloudflared"

View File

@@ -1,8 +1,8 @@
services: services:
stableswarmui: swarmui:
image: stableswarmui image: swarmui
build: . build: .
container_name: stableswarmui container_name: swarmui
# uncomment `networks: host` if you want to access other services on the host network (eg a separated comfy instance) # uncomment `networks: host` if you want to access other services on the host network (eg a separated comfy instance)
# networks: host # networks: host
volumes: volumes:

View File

@@ -1,6 +1,6 @@
# StableSwarmUI API Documentation # SwarmUI API Documentation
StableSwarmUI has a full-capability network API that you can use from external programs, both to use Swarm features (eg generate images) and to manage the Swarm instance (eg modify backends). SwarmUI has a full-capability network API that you can use from external programs, both to use Swarm features (eg generate images) and to manage the Swarm instance (eg modify backends).
Swarm uses its own API - you can simply open the web interface, open your browser tools, and interact with Swarm to watch what API calls are made, and then replicate those from your own code. Swarm uses its own API - you can simply open the web interface, open your browser tools, and interact with Swarm to watch what API calls are made, and then replicate those from your own code.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - AdminAPI # SwarmUI API Documentation - AdminAPI
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - BackendAPI # SwarmUI API Documentation - BackendAPI
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - BasicAPIFeatures # SwarmUI API Documentation - BasicAPIFeatures
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - ComfyUIWebAPI # SwarmUI API Documentation - ComfyUIWebAPI
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - GridGeneratorExtension # SwarmUI API Documentation - GridGeneratorExtension
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - ImageBatchToolExtension # SwarmUI API Documentation - ImageBatchToolExtension
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - ModelsAPI # SwarmUI API Documentation - ModelsAPI
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - T2IAPI # SwarmUI API Documentation - T2IAPI
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI API Documentation - UtilAPI # SwarmUI API Documentation - UtilAPI
> This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info. > This is a subset of the API docs, see [/docs/API.md](/docs/API.md) for general info.

View File

@@ -2,16 +2,16 @@
(TODO: More examples of advanced usage with explanation) (TODO: More examples of advanced usage with explanation)
# Accessing StableSwarmUI From Other Devices # Accessing SwarmUI From Other Devices
- To access StableSwarmUI from another device over LAN: - To access SwarmUI from another device over LAN:
- Simply open StableSwarmUI to the `Server` -> `Server Configuration` tab, find `Host` (default value is `localhost`) and change the value to `0.0.0.0`, then save and restart - Simply open SwarmUI to the `Server` -> `Server Configuration` tab, find `Host` (default value is `localhost`) and change the value to `0.0.0.0`, then save and restart
- Note you may also need to allow StableSwarmUI through your firewall. - Note you may also need to allow SwarmUI through your firewall.
- To access StableSwarmUI over open internet without port forwarding: - To access SwarmUI over open internet without port forwarding:
- You can either launch use Cloudflared or Ngrok - You can either launch use Cloudflared or Ngrok
- For **Cloudflared:** Install Cloudflared according to [their readme](https://github.com/cloudflare/cloudflared?tab=readme-ov-file#installing-cloudflared) (note: ignore the stuff about accounts/domains/whatever, only the `cloudflared` software install is relevant), and launch StableSwarmUI with `--cloudflared-path [...]` or set the path in Server Configuration `CloudflaredPath` option and restart - For **Cloudflared:** Install Cloudflared according to [their readme](https://github.com/cloudflare/cloudflared?tab=readme-ov-file#installing-cloudflared) (note: ignore the stuff about accounts/domains/whatever, only the `cloudflared` software install is relevant), and launch SwarmUI with `--cloudflared-path [...]` or set the path in Server Configuration `CloudflaredPath` option and restart
- For Debian Linux servers, look at how the [Colab Notebook](/colab/colab-notebook.ipynb) installs and uses cloudflared. - For Debian Linux servers, look at how the [Colab Notebook](/colab/colab-notebook.ipynb) installs and uses cloudflared.
- For **ngrok:** Install ngrok according to [their documentation](https://ngrok.com/) and login to your ngrok account, and launch StableSwarmUI with `--ngrok-path [...]` - For **ngrok:** Install ngrok according to [their documentation](https://ngrok.com/) and login to your ngrok account, and launch SwarmUI with `--ngrok-path [...]`
## Custom Workflows (ComfyUI) ## Custom Workflows (ComfyUI)

View File

@@ -1,6 +1,6 @@
# Basic Usage of StableSwarmUI # Basic Usage of SwarmUI
So you want to know how to get started with StableSwarmUI, huh? It's easy! So you want to know how to get started with SwarmUI, huh? It's easy!
For the most part, just download the installer and follow the instructions on screen. Everything explains itself, even the settings and parameters all have `?` clickables that explain what they do! For the most part, just download the installer and follow the instructions on screen. Everything explains itself, even the settings and parameters all have `?` clickables that explain what they do!
@@ -8,7 +8,7 @@ Nonetheless, here's a step-by-step you can follow:
## Installing ## Installing
Step one: [Install StableSwarmUI](/README.md#installing-on-windows). Step one: [Install SwarmUI](/README.md#installing-on-windows).
Once you've ran the basic program-installation, if all went well, it will open a web interface to select basic install settings. Once you've ran the basic program-installation, if all went well, it will open a web interface to select basic install settings.
- Agree to the SD license - Agree to the SD license
@@ -48,7 +48,7 @@ If you have pre-existing Stable Diffusion files, you'll want to configure settin
- If all went well, you should have a nice picture of a cat in the center of your screen! - If all went well, you should have a nice picture of a cat in the center of your screen!
If it didn't go well, ... well it's alpha software, hopefully there's an error message telling you what went wrong. If you can't figure it out, open an [issue here](https://github.com/Stability-AI/StableSwarmUI/issues) or ask on [discord](https://discord.gg/q2y38cqjNw). If it didn't go well, ... well it's alpha software, hopefully there's an error message telling you what went wrong. If you can't figure it out, open an [issue here](https://github.com/mcmonkeyprojects/SwarmUI/issues) or ask on [discord](https://discord.gg/q2y38cqjNw).
## Using The SDXL Refiner ## Using The SDXL Refiner
@@ -64,7 +64,7 @@ So, you want *refined* images, huh? Well, if the base isn't enough, and you down
## Getting Advanced: Playing With Parameters ## Getting Advanced: Playing With Parameters
StableSwarmUI is designed on the principle of exposing all the parameters to you, but making them approachable. To that end: SwarmUI is designed on the principle of exposing all the parameters to you, but making them approachable. To that end:
- All the parameters are grouped. You can toggle groups open/closed, and where relevant there's sliders to toggle groups on/off. - All the parameters are grouped. You can toggle groups open/closed, and where relevant there's sliders to toggle groups on/off.
- All the parameters have a lil purple `?` icon next to them. Clicking this will open a popup with an explanation of the parameter and some examples. - All the parameters have a lil purple `?` icon next to them. Clicking this will open a popup with an explanation of the parameter and some examples.
- When in doubt, with most parameters, just play with them and see what happens. Lock in your `Seed` to a constant one before trying to avoid unrelated changes. - When in doubt, with most parameters, just play with them and see what happens. Lock in your `Seed` to a constant one before trying to avoid unrelated changes.
@@ -88,7 +88,7 @@ You want more images more faster right now hurry up and tell me how quick quick
- Got close friends with GPUs? If you can figure out the network routing (and the interpersonal agreements), you can use those! - Got close friends with GPUs? If you can figure out the network routing (and the interpersonal agreements), you can use those!
- Go to the `Server` -> `Backends` page - Go to the `Server` -> `Backends` page
- Pick the backend type that you want, and click the button to add it. - Pick the backend type that you want, and click the button to add it.
- For remote hosts, you'll want to set up StableSwarmUI over there, get a remote connection working, and then add `Swarm-API-Backend`, and give the URL to it. - For remote hosts, you'll want to set up SwarmUI over there, get a remote connection working, and then add `Swarm-API-Backend`, and give the URL to it.
- For more GPUs in your one machine, you can eg use multiple `ComfyUI Self-Starting` and just change the GPU ID for each. - For more GPUs in your one machine, you can eg use multiple `ComfyUI Self-Starting` and just change the GPU ID for each.
- If it doesn't error out, you can immediately start using it. - If it doesn't error out, you can immediately start using it.
- When you generate images, your first generation goes to the first backend, your second to the second one, etc. - When you generate images, your first generation goes to the first backend, your second to the second one, etc.
@@ -115,7 +115,7 @@ What's the fun in testing changes one by one, when you can unleash your machine
- Want to use [IP-Adapter](/docs/Features/IPAdapter-ReVision.md) with a [Video](/docs/Features/Video.md)? - Want to use [IP-Adapter](/docs/Features/IPAdapter-ReVision.md) with a [Video](/docs/Features/Video.md)?
- No problem! Just... do both! Swarm is so easy it's crazy sometimes - you can just enable multiple different features at the same time, and generally trust Swarm will automatically figure out how to combine them appropriately. - No problem! Just... do both! Swarm is so easy it's crazy sometimes - you can just enable multiple different features at the same time, and generally trust Swarm will automatically figure out how to combine them appropriately.
- If you ever find a case that doesn't work, you can just [file an issue](https://github.com/Stability-AI/StableSwarmUI/issues) to get that fixed. - If you ever find a case that doesn't work, you can just [file an issue](https://github.com/mcmonkeyprojects/SwarmUI/issues) to get that fixed.
## Take It Further: Advanced Usage ## Take It Further: Advanced Usage

View File

@@ -1,4 +1,4 @@
# StableSwarmUI Autocompletions Engine # SwarmUI Autocompletions Engine
When you're typing into a prompt box within Swarm, the **autocompletions engine** is looking for ways to help you. When you're typing into a prompt box within Swarm, the **autocompletions engine** is looking for ways to help you.
@@ -19,7 +19,7 @@ If you want to have autocompletions for word lists (*such as anime booru tags*),
- Find a word-list file. There are [several here you can use](https://github.com/DominikDoom/a1111-sd-webui-tagcomplete/tree/main/tags). - Find a word-list file. There are [several here you can use](https://github.com/DominikDoom/a1111-sd-webui-tagcomplete/tree/main/tags).
- Any `.csv` will do (if the word is the first entry per row). Optionally second column can be an ID number 0-5 for unique colorations to distinguish categories. - Any `.csv` will do (if the word is the first entry per row). Optionally second column can be an ID number 0-5 for unique colorations to distinguish categories.
- or `.txt` files (for newline-separated wordlists, allowing `#` to mark comments). - or `.txt` files (for newline-separated wordlists, allowing `#` to mark comments).
- Save the file into `StableSwarmUI/Data/Autocompletions`. - Save the file into `SwarmUI/Data/Autocompletions`.
- Restart swarm or reload parameter values if necessary. - Restart swarm or reload parameter values if necessary.
- Go to `User` -> `User Settings` - Go to `User` -> `User Settings`
- find the option `AutoCompletionsSource` and select your word list file of choice. - find the option `AutoCompletionsSource` and select your word list file of choice.

View File

@@ -1,4 +1,4 @@
# ControlNets in StableSwarmUI # ControlNets in SwarmUI
- ControlNets are a form of guidance for Stable Diffusion that take in a reference image, and copy some feature set from it - ControlNets are a form of guidance for Stable Diffusion that take in a reference image, and copy some feature set from it
- For example, "Canny" controlnets copy the linework for images. This is useful for image to easily turn a sketch into a photo, while keeping the same structure. - For example, "Canny" controlnets copy the linework for images. This is useful for image to easily turn a sketch into a photo, while keeping the same structure.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI Image Prompt - IP-Adapter and Revision # SwarmUI Image Prompt - IP-Adapter and Revision
- To use image-prompting features in Swarm, simply drag an image into the prompt box, or copy an image and while in the prompt box press CTRL+V to paste. - To use image-prompting features in Swarm, simply drag an image into the prompt box, or copy an image and while in the prompt box press CTRL+V to paste.
- When you do this, the ReVision control panel will open on the left at the top of the parameters listing. - When you do this, the ReVision control panel will open on the left at the top of the parameters listing.

View File

@@ -1,4 +1,4 @@
# StableSwarmUI Feature List & Documentation # SwarmUI Feature List & Documentation
See [The Docs Readme](/docs/README.md) for general listing of documentation and basic usage info, this section here is a subfolder for specific individual features listed out file-by-file. See [The Docs Readme](/docs/README.md) for general listing of documentation and basic usage info, this section here is a subfolder for specific individual features listed out file-by-file.

View File

@@ -1,6 +1,6 @@
# Video Generation in StableSwarmUI # Video Generation in SwarmUI
- Video generation in StableSwarmUI is powered by [Stable Video Diffusion](https://arxiv.org/abs/2311.15127) - Video generation in SwarmUI is powered by [Stable Video Diffusion](https://arxiv.org/abs/2311.15127)
- You can find the official SVD XT 1.1 model [here](https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt-1-1) (requires a HuggingFace account to download) - You can find the official SVD XT 1.1 model [here](https://huggingface.co/stabilityai/stable-video-diffusion-img2vid-xt-1-1) (requires a HuggingFace account to download)
- Store the model in your Stable-Diffusion models folder - Store the model in your Stable-Diffusion models folder
- To use Video, simply enable the Video parameter group - To use Video, simply enable the Video parameter group

View File

@@ -1,4 +1,4 @@
# Making Extensions for StableSwarmUI # Making Extensions for SwarmUI
So, you want to make a Swarm extension, eh? You've come to the right place! So, you want to make a Swarm extension, eh? You've come to the right place!
@@ -9,10 +9,10 @@ Here's some general info:
- Every extension has a root `.cs` C# class file that extends `Extension`, in a file named the same as the class, eg `src/Extensions/MyExtension/MyCoolExtensionName.cs` contains `public class MyCoolExtensionName : Extension` - Every extension has a root `.cs` C# class file that extends `Extension`, in a file named the same as the class, eg `src/Extensions/MyExtension/MyCoolExtensionName.cs` contains `public class MyCoolExtensionName : Extension`
- There's a variety of initialization points, and you can choose the one that fits your needs, and then register any usage/callbacks/etc. - There's a variety of initialization points, and you can choose the one that fits your needs, and then register any usage/callbacks/etc.
- When writing a Swarm extension, you need to meet Swarm's code requirements -- most notably, that means you need to write code that won't explode if it's called from multiple threads (in most cases this won't be an issue, it's just something to consider when you're getting very advanced). - When writing a Swarm extension, you need to meet Swarm's code requirements -- most notably, that means you need to write code that won't explode if it's called from multiple threads (in most cases this won't be an issue, it's just something to consider when you're getting very advanced).
- All of Swarm is open source, including a pile of built-in-extensions ([see here](https://github.com/Stability-AI/StableSwarmUI/tree/master/src/BuiltinExtensions)), so you can reference any existing code to get examples of things - All of Swarm is open source, including a pile of built-in-extensions ([see here](https://github.com/mcmonkeyprojects/SwarmUI/tree/master/src/BuiltinExtensions)), so you can reference any existing code to get examples of things
- Swarm uses C#, a compiled language, so it only recompiles if (A) you do so manually, (B) you run the `update` script in the swarm root, or (C) you launch using the `launch-dev` scripts (builds fresh every time). When working on extensions, you need to either use the dev scripts, or remember to run the update every time. - Swarm uses C#, a compiled language, so it only recompiles if (A) you do so manually, (B) you run the `update` script in the swarm root, or (C) you launch using the `launch-dev` scripts (builds fresh every time). When working on extensions, you need to either use the dev scripts, or remember to run the update every time.
- You can add custom tabs by just making a folder inside your extension of `Tabs/Text2Image/` and inside of that put `Your Tab Name.html` - You can add custom tabs by just making a folder inside your extension of `Tabs/Text2Image/` and inside of that put `Your Tab Name.html`
- See the [`Extension` class source here](https://github.com/Stability-AI/StableSwarmUI/blob/master/src/Core/Extension.cs) for more things you can do. - See the [`Extension` class source here](https://github.com/mcmonkeyprojects/SwarmUI/blob/master/src/Core/Extension.cs) for more things you can do.
- This has several different launch points (eg `OnInit`, `OnPreInit`, etc.) and some registration points (eg `ScriptFiles` and `StyleSheetFiles` to register custom web assets to the main page). - This has several different launch points (eg `OnInit`, `OnPreInit`, etc.) and some registration points (eg `ScriptFiles` and `StyleSheetFiles` to register custom web assets to the main page).
## Example: A Custom Comfy-Node-Backed Parameter ## Example: A Custom Comfy-Node-Backed Parameter

View File

@@ -1,4 +1,4 @@
# Model Type Support In StableSwarmUI # Model Type Support In SwarmUI
Swarm natively supports [ModelSpec](https://github.com/Stability-AI/ModelSpec) metadata and can import metadata from some legacy formats used by other UIs (auto webui thumbnails, matrix jsons, etc) Swarm natively supports [ModelSpec](https://github.com/Stability-AI/ModelSpec) metadata and can import metadata from some legacy formats used by other UIs (auto webui thumbnails, matrix jsons, etc)

View File

@@ -4,7 +4,7 @@ This document explains the reasoning behind some core choices for the design of
## Language Choice ## Language Choice
This project is built with a C# backend server to maximize performance while only minimally increasing code complexity. While most ML projects tend to be written in Python, that language is simply insufficient to meet the performance goals of this project\* (ie to provide a very fast and responsive multi-user-ready multi-backend service), notably it lacks "true" multithreading capabilities (due to Python GIL), which was deemed strongly necessary for StableSwarmUI (it must be able to use available CPU cores while serving user requests and managing internal data to be able to respond to all requests as quickly as possible). This project is built with a C# backend server to maximize performance while only minimally increasing code complexity. While most ML projects tend to be written in Python, that language is simply insufficient to meet the performance goals of this project\* (ie to provide a very fast and responsive multi-user-ready multi-backend service), notably it lacks "true" multithreading capabilities (due to Python GIL), which was deemed strongly necessary for SwarmUI (it must be able to use available CPU cores while serving user requests and managing internal data to be able to respond to all requests as quickly as possible).
It is also hoped that building Stable Diffusion tools in C# will enable a wider range of developers to make use of Stable Diffusion (vs being limited to the Python ecosystem). It is also hoped that building Stable Diffusion tools in C# will enable a wider range of developers to make use of Stable Diffusion (vs being limited to the Python ecosystem).
@@ -23,7 +23,7 @@ For the goal of maximizing capabilities, a 'main' backend needed to be chosen to
- It is highly performant and compatible. - It is highly performant and compatible.
- The code inside is extremely clean and well written. - The code inside is extremely clean and well written.
- It provides bonus features that other UIs can't match (ie: the workflow node editor). - It provides bonus features that other UIs can't match (ie: the workflow node editor).
- The lead developer of Comfy was hired to Stability, and was able to directly help in ensuring the StableSwarmUI-ComfyUI integration works as best it can. - The lead developer of Comfy was hired to Stability, and was able to directly help in ensuring the SwarmUI-ComfyUI integration works as best it can.
## Web Frontend ## Web Frontend

View File

@@ -1,4 +1,4 @@
# StableSwarmUI Documentation # SwarmUI Documentation
- [Basic Usage](/docs/Basic%20Usage.md) to learn how to get started. - [Basic Usage](/docs/Basic%20Usage.md) to learn how to get started.
- [Why Use Swarm](/docs/Why%20Use%20Swarm.md) to see what advanced Swarm offers you - [Why Use Swarm](/docs/Why%20Use%20Swarm.md) to see what advanced Swarm offers you

View File

@@ -1,4 +1,4 @@
# User Settings in StableSwarmUI # User Settings in SwarmUI
(TODO: general info about settings) (TODO: general info about settings)

View File

@@ -1,4 +1,4 @@
# Using More GPUs in StableSwarmUI # Using More GPUs in SwarmUI
There are two primary ways to use more GPUs: There are two primary ways to use more GPUs:
- More GPUs in your machine - More GPUs in your machine
@@ -13,7 +13,7 @@ To use more GPUs in your machine, simply add more self-start backends (interface
- If you have more machines in your home: - If you have more machines in your home:
- Pick one machine as your "main" machine, and install SwarmUI on that. You can (but don't have to) use a local backend on that machine if it has a GPU. - Pick one machine as your "main" machine, and install SwarmUI on that. You can (but don't have to) use a local backend on that machine if it has a GPU.
- Boot up backends on the other machines. - Boot up backends on the other machines.
- The easiest and best option is to run StableSwarmUI on the other machine, set its host setting to `0.0.0.0`, and then add it as a `Swarm-API-Backend`. - The easiest and best option is to run SwarmUI on the other machine, set its host setting to `0.0.0.0`, and then add it as a `Swarm-API-Backend`.
- (Not recommended:) or, you can run an instance ComfyUI or Auto WebUI with `--listen` - (Not recommended:) or, you can run an instance ComfyUI or Auto WebUI with `--listen`
- Make sure to allow the program through the firewall (on Windows it should just prompt and ask) - Make sure to allow the program through the firewall (on Windows it should just prompt and ask)
- On your main machine, try to open the remote backend via LAN address. - On your main machine, try to open the remote backend via LAN address.
@@ -21,7 +21,7 @@ To use more GPUs in your machine, simply add more self-start backends (interface
- Make sure you can open it in a web browser on the main machine before continuing (to separate network diagnostic issues from SwarmUI-specific issues) - Make sure you can open it in a web browser on the main machine before continuing (to separate network diagnostic issues from SwarmUI-specific issues)
- In the SwarmUI interface (`Server` -> `Backends`), add an "API By URL" backend, such as `Swarm-API-Backend` or `ComfyUI API By URL` - In the SwarmUI interface (`Server` -> `Backends`), add an "API By URL" backend, such as `Swarm-API-Backend` or `ComfyUI API By URL`
- Set the address to the same LAN address you used in your web browser - Set the address to the same LAN address you used in your web browser
- Note that using the `Swarm-API-Backend` is highly recommended, if you use `ComfyUI API By URL` please make sure you know what you're doing and properly load in the [Swarm custom node set](https://github.com/Stability-AI/StableSwarmUI/tree/master/src/BuiltinExtensions/ComfyUIBackend/ExtraNodes) and all. - Note that using the `Swarm-API-Backend` is highly recommended, if you use `ComfyUI API By URL` please make sure you know what you're doing and properly load in the [Swarm custom node set](https://github.com/mcmonkeyprojects/SwarmUI/tree/master/src/BuiltinExtensions/ComfyUIBackend/ExtraNodes) and all.
- Generate! - Generate!
- If you are using Google Colab, Runpod, or other rented servers: - If you are using Google Colab, Runpod, or other rented servers:
- Same as in-home, but use the public address of the server if possible, or the share address if not (eg a trycloudflare or ngrok URL) - Same as in-home, but use the public address of the server if possible, or the share address if not (eg a trycloudflare or ngrok URL)
@@ -59,18 +59,18 @@ Before we begin, let's plan how we're going to set things up.
#### Step 2: Install On The Main Machine #### Step 2: Install On The Main Machine
- Naturally, you're going to have to install StableSwarmUI on your main machine. The information on how to do this is in [the README, here](https://github.com/Stability-AI/StableSwarmUI#installing-on-windows). - Naturally, you're going to have to install SwarmUI on your main machine. The information on how to do this is in [the README, here](https://github.com/mcmonkeyprojects/SwarmUI#installing-on-windows).
- Just follow the instructions, you can install this however is appropriate for your usage, for the 'main machine' there is nothing special/different yet. We will make changes later after it's installed. - Just follow the instructions, you can install this however is appropriate for your usage, for the 'main machine' there is nothing special/different yet. We will make changes later after it's installed.
- I recommend at this stage you also configure any models/etc. you desire, and test Swarm on the machine - generate locally at will. - I recommend at this stage you also configure any models/etc. you desire, and test Swarm on the machine - generate locally at will.
- If you have multiple GPUs in the machine, set them up per [the instructions above](#more-gpus-in-your-machine). - If you have multiple GPUs in the machine, set them up per [the instructions above](#more-gpus-in-your-machine).
![img](/.github/images/stableswarmui.jpg) ![img](/.github/images/swarmui.jpg)
#### Step 3: Install on Other Machines #### Step 3: Install on Other Machines
- Repeat the following steps on every "Other Machine", that is EVERY MACHINE you're using EXCEPT the "Main Machine": - Repeat the following steps on every "Other Machine", that is EVERY MACHINE you're using EXCEPT the "Main Machine":
- Install StableSwarmUI on the Other Machine, again per [the README, here](https://github.com/Stability-AI/StableSwarmUI#installing-on-windows), with one specific change: - Install SwarmUI on the Other Machine, again per [the README, here](https://github.com/mcmonkeyprojects/SwarmUI#installing-on-windows), with one specific change:
- During the Installer UI that appears on first boot, you will get an option asking `Who is this StableSwarmUI installation going to be used by?` - make sure to Select the `Just Yourself, with LAN access` option. This is essential to allow the Main Machine to connect remotely in to your Other Machine. - During the Installer UI that appears on first boot, you will get an option asking `Who is this SwarmUI installation going to be used by?` - make sure to Select the `Just Yourself, with LAN access` option. This is essential to allow the Main Machine to connect remotely in to your Other Machine.
- ![img](/docs/images/lan-access.png) - ![img](/docs/images/lan-access.png)
- After it is installed, also configure any models/etc as desired. - After it is installed, also configure any models/etc as desired.
- Importantly, make sure any models you have on the Main Machine, you also copy to this Other Machine. These models must have the exact same filename and folder path. - Importantly, make sure any models you have on the Main Machine, you also copy to this Other Machine. These models must have the exact same filename and folder path.

View File

@@ -5,18 +5,18 @@ SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
cd $SCRIPT_DIR cd $SCRIPT_DIR
# Accidental run prevention # Accidental run prevention
if [ -d "StableSwarmUI" ]; then if [ -d "SwarmUI" ]; then
echo "StableSwarmUI already exists in this directory. Please remove it before installing." echo "SwarmUI already exists in this directory. Please remove it before installing."
exit 1 exit 1
fi fi
if [ -f "StableSwarmUI.sln" ]; then if [ -f "SwarmUI.sln" ]; then
echo "StableSwarmUI already exists in this directory. Please remove it before installing." echo "SwarmUI already exists in this directory. Please remove it before installing."
exit 1 exit 1
fi fi
# Download swarm # Download swarm
git clone https://github.com/Stability-AI/StableSwarmUI git clone https://github.com/mcmonkeyprojects/SwarmUI
cd StableSwarmUI cd SwarmUI
# install dotnet # install dotnet
cd launchtools cd launchtools

View File

@@ -2,14 +2,14 @@
cd /d "%~dp0" cd /d "%~dp0"
if exist StableSwarmUI ( if exist SwarmUI (
echo StableSwarmUI is already installed in this folder. If this is incorrect, delete the 'StableSwarmUI' folder and try again. echo SwarmUI is already installed in this folder. If this is incorrect, delete the 'SwarmUI' folder and try again.
pause pause
exit exit
) )
if exist StableSwarmUI.sln ( if exist SwarmUI.sln (
echo StableSwarmUI is already installed in this folder. If this is incorrect, delete 'StableSwarmUI.sln' and try again. echo SwarmUI is already installed in this folder. If this is incorrect, delete 'SwarmUI.sln' and try again.
pause pause
exit exit
) )
@@ -17,8 +17,8 @@ if exist StableSwarmUI.sln (
winget install Microsoft.DotNet.SDK.8 --accept-source-agreements --accept-package-agreements winget install Microsoft.DotNet.SDK.8 --accept-source-agreements --accept-package-agreements
winget install --id Git.Git -e --source winget --accept-source-agreements --accept-package-agreements winget install --id Git.Git -e --source winget --accept-source-agreements --accept-package-agreements
git clone https://github.com/Stability-AI/StableSwarmUI git clone https://github.com/mcmonkeyprojects/SwarmUI
cd StableSwarmUI cd SwarmUI
call .\make-shortcut.bat call .\make-shortcut.bat

View File

@@ -1,12 +1,12 @@
#!/usr/bin/env bash #!/usr/bin/env bash
docker build -t stableswarmui . docker build -t swarmui .
# add "--network=host" if you want to access other services on the host network (eg a separated comfy instance) # add "--network=host" if you want to access other services on the host network (eg a separated comfy instance)
docker run -it \ docker run -it \
--name stableswarmui \ --name swarmui \
--mount source=swarmdata,target=/Data \ --mount source=swarmdata,target=/Data \
--mount source=swarmbackend,target=/dlbackend \ --mount source=swarmbackend,target=/dlbackend \
-v ./Models:/Models \ -v ./Models:/Models \
-v ./Output:/Output \ -v ./Output:/Output \
--gpus=all -p 7801:7801 stableswarmui --gpus=all -p 7801:7801 swarmui

View File

@@ -31,8 +31,8 @@ else
fi fi
# Build the program if it isn't already built # Build the program if it isn't already built
if [ ! -f src/bin/live_release/StableSwarmUI.dll ]; then if [ ! -f src/bin/live_release/SwarmUI.dll ]; then
dotnet build src/StableSwarmUI.csproj --configuration Release -o ./src/bin/live_release dotnet build src/SwarmUI.csproj --configuration Release -o ./src/bin/live_release
cur_head=`git rev-parse HEAD` cur_head=`git rev-parse HEAD`
echo $cur_head > src/bin/last_build echo $cur_head > src/bin/last_build
fi fi
@@ -41,7 +41,7 @@ fi
export ASPNETCORE_ENVIRONMENT="Production" export ASPNETCORE_ENVIRONMENT="Production"
export ASPNETCORE_URLS="http://*:7801" export ASPNETCORE_URLS="http://*:7801"
# Actual runner. # Actual runner.
dotnet src/bin/live_release/StableSwarmUI.dll $@ dotnet src/bin/live_release/SwarmUI.dll $@
# Exit code 42 means restart, anything else = don't. # Exit code 42 means restart, anything else = don't.
if [ $? == 42 ]; then if [ $? == 42 ]; then

View File

@@ -5,7 +5,7 @@ SCRIPT_DIR=$( cd -- "$( dirname -- "${BASH_SOURCE[0]}" )" &> /dev/null && pwd )
cd $SCRIPT_DIR cd $SCRIPT_DIR
# Building first is more reliable than running directly from src # Building first is more reliable than running directly from src
dotnet build src/StableSwarmUI.csproj --configuration Release -o ./src/bin/live_release dotnet build src/SwarmUI.csproj --configuration Release -o ./src/bin/live_release
# Default env configuration, gets overwritten by the C# code's settings handler # Default env configuration, gets overwritten by the C# code's settings handler
ASPNETCORE_ENVIRONMENT="Production" ASPNETCORE_ENVIRONMENT="Production"
ASPNETCORE_URLS="http://*:7801" ASPNETCORE_URLS="http://*:7801"
@@ -14,4 +14,4 @@ ASPNETCORE_URLS="http://*:7801"
export PYTORCH_ENABLE_MPS_FALLBACK=1 export PYTORCH_ENABLE_MPS_FALLBACK=1
# Actual runner. # Actual runner.
dotnet src/bin/live_release/StableSwarmUI.dll $@ dotnet src/bin/live_release/SwarmUI.dll $@

View File

@@ -12,11 +12,11 @@ Remove-Item 'src/bin/' -Recurse
Remove-Item 'src/obj/' -Recurse Remove-Item 'src/obj/' -Recurse
# Building first is more reliable than running directly from src # Building first is more reliable than running directly from src
dotnet build src/StableSwarmUI.csproj --configuration Debug -o src/bin/live_release dotnet build src/SwarmUI.csproj --configuration Debug -o src/bin/live_release
# Default env configuration, gets overwritten by the C# code's settings handler # Default env configuration, gets overwritten by the C# code's settings handler
$Env:ASPNETCORE_ENVIRONMENT = "Production" $Env:ASPNETCORE_ENVIRONMENT = "Production"
$Env:ASPNETCORE_URLS = "http://*:7801" $Env:ASPNETCORE_URLS = "http://*:7801"
# Actual runner. # Actual runner.
dotnet src\bin\live_release\StableSwarmUI.dll --environment dev @args dotnet src\bin\live_release\SwarmUI.dll --environment dev @args

View File

@@ -35,11 +35,11 @@ if exist .\src\bin\must_rebuild (
) )
rem Build the program if it isn't already built rem Build the program if it isn't already built
if not exist src\bin\live_release\StableSwarmUI.dll ( if not exist src\bin\live_release\SwarmUI.dll (
rem For some reason Microsoft's nonsense is missing the official nuget source? So forcibly add that to be safe. rem For some reason Microsoft's nonsense is missing the official nuget source? So forcibly add that to be safe.
dotnet nuget add source https://api.nuget.org/v3/index.json --name "NuGet official package source" dotnet nuget add source https://api.nuget.org/v3/index.json --name "NuGet official package source"
dotnet build src/StableSwarmUI.csproj --configuration Release -o src/bin/live_release dotnet build src/SwarmUI.csproj --configuration Release -o src/bin/live_release
for /f "delims=" %%i in ('git rev-parse HEAD') do set CUR_HEAD2=%%i for /f "delims=" %%i in ('git rev-parse HEAD') do set CUR_HEAD2=%%i
echo !CUR_HEAD2!> src/bin/last_build echo !CUR_HEAD2!> src/bin/last_build
) )
@@ -48,7 +48,7 @@ rem Default env configuration, gets overwritten by the C# code's settings handle
set ASPNETCORE_ENVIRONMENT="Production" set ASPNETCORE_ENVIRONMENT="Production"
set ASPNETCORE_URLS="http://*:7801" set ASPNETCORE_URLS="http://*:7801"
dotnet src\bin\live_release\StableSwarmUI.dll %* dotnet src\bin\live_release\SwarmUI.dll %*
rem Exit code 42 means restart, anything else = don't. rem Exit code 42 means restart, anything else = don't.
if %ERRORLEVEL% EQU 42 ( if %ERRORLEVEL% EQU 42 (

View File

@@ -1,6 +1,6 @@
@echo off @echo off
set SHORTCUTPATH="%userprofile%\Desktop\StableSwarmUI.url" set SHORTCUTPATH="%userprofile%\Desktop\SwarmUI.url"
echo [InternetShortcut] >> "%SHORTCUTPATH%" echo [InternetShortcut] >> "%SHORTCUTPATH%"
echo URL="%CD%\launch-windows.bat" >> "%SHORTCUTPATH%" echo URL="%CD%\launch-windows.bat" >> "%SHORTCUTPATH%"
echo IconFile="%CD%\src\wwwroot\favicon.ico" >> "%SHORTCUTPATH%" echo IconFile="%CD%\src\wwwroot\favicon.ico" >> "%SHORTCUTPATH%"

View File

@@ -1,7 +0,0 @@
@echo off
git remote set-url origin https://github.com/mcmonkeyprojects/SwarmUI
echo Migrated to the mcmonkeyprojects SwarmUI version of this project
timeout 3

View File

@@ -88,7 +88,7 @@ public class Program
{ {
SpecialTools.Internationalize(); // Fix for MS's broken localization SpecialTools.Internationalize(); // Fix for MS's broken localization
BsonMapper.Global.EmptyStringToNull = false; // Fix for LiteDB's broken handling of empty strings BsonMapper.Global.EmptyStringToNull = false; // Fix for LiteDB's broken handling of empty strings
Logs.Init($"=== StableSwarmUI v{Utilities.Version} Starting at {DateTimeOffset.Now:yyyy-MM-dd HH:mm:ss} ==="); Logs.Init($"=== SwarmUI v{Utilities.Version} Starting at {DateTimeOffset.Now:yyyy-MM-dd HH:mm:ss} ===");
Utilities.LoadTimer timer = new(); Utilities.LoadTimer timer = new();
AssemblyLoadContext.Default.Unloading += (_) => Shutdown(); AssemblyLoadContext.Default.Unloading += (_) => Shutdown();
AppDomain.CurrentDomain.ProcessExit += (_, _) => Shutdown(); AppDomain.CurrentDomain.ProcessExit += (_, _) => Shutdown();
@@ -139,7 +139,7 @@ public class Program
Logs.Debug($"Local version is {local}, remote version is {remote}, relative is {local.CompareTo(remote)}"); Logs.Debug($"Local version is {local}, remote version is {remote}, relative is {local.CompareTo(remote)}");
if (remote > local) if (remote > local)
{ {
Logs.Warning($"A new version of StableSwarmUI is available: {versId}! You are running version {Utilities.Version}. Has message: {message}"); Logs.Warning($"A new version of SwarmUI is available: {versId}! You are running version {Utilities.Version}. Has message: {message}");
VersionUpdateMessage = $"Update available: {versId} (you are running {Utilities.Version}):\n{message}"; VersionUpdateMessage = $"Update available: {versId} (you are running {Utilities.Version}):\n{message}";
} }
else else

View File

@@ -244,7 +244,7 @@ public class Settings : AutoConfiguration
[ConfigComment("Whether your files save to server data drive or not.")] [ConfigComment("Whether your files save to server data drive or not.")]
public bool SaveFiles = true; public bool SaveFiles = true;
[ConfigComment("If true, folders will be discard from starred image paths.")] [ConfigComment("If true, folders will be discarded from starred image paths.")]
public bool StarNoFolders = false; public bool StarNoFolders = false;
public class ThemesImpl : SettingsOptionsAttribute.AbstractImpl public class ThemesImpl : SettingsOptionsAttribute.AbstractImpl

View File

@@ -2,7 +2,7 @@
<PropertyGroup> <PropertyGroup>
<TargetFramework>net8.0</TargetFramework> <TargetFramework>net8.0</TargetFramework>
<Version>0.6.4.1</Version> <Version>0.9.0.0</Version>
<NoWarn>CS1998</NoWarn> <NoWarn>CS1998</NoWarn>
</PropertyGroup> </PropertyGroup>

View File

@@ -1601,7 +1601,7 @@ function updateAllModels(models) {
pickle2safetensor_load(); pickle2safetensor_load();
} }
let shutdownConfirmationText = translatable("Are you sure you want to shut StableSwarmUI down?"); let shutdownConfirmationText = translatable("Are you sure you want to shut SwarmUI down?");
function shutdown_server() { function shutdown_server() {
if (confirm(shutdownConfirmationText.get())) { if (confirm(shutdownConfirmationText.get())) {
@@ -1611,7 +1611,7 @@ function shutdown_server() {
} }
} }
let restartConfirmationText = translatable("Are you sure you want to update and restart StableSwarmUI?"); let restartConfirmationText = translatable("Are you sure you want to update and restart SwarmUI?");
let checkingForUpdatesText = translatable("Checking for updates..."); let checkingForUpdatesText = translatable("Checking for updates...");
function update_and_restart_server() { function update_and_restart_server() {

View File

@@ -38,8 +38,7 @@ function automaticWelcomeMessage(override = null) {
let messages = [ let messages = [
/* Generic welcome messages, order-sensitive, keep at top */ /* Generic welcome messages, order-sensitive, keep at top */
`Type your prompt below and hit Generate!`, `Type your prompt below and hit Generate!`,
`<h2>Important Migration Notice</h2><br>StableSwarmUI will no longer be maintained under Stability AI.<br>To migrate to new independent repository, see <a href="https://github.com/mcmonkeyprojects/SwarmUI/discussions/2">the migration guide here</a>`, `Join the SwarmUI <a href="https://discord.gg/q2y38cqjNw">official Discord!</a>`,
`Join the StableSwarmUI <a href="https://discord.gg/q2y38cqjNw">official Discord!</a>`,
/* "Did you know" facts - interesting things you can do in swarm */ /* "Did you know" facts - interesting things you can do in swarm */
`Did you know:\nyou can drag and drop images onto the prompt box to use them as an image-prompt.`, `Did you know:\nyou can drag and drop images onto the prompt box to use them as an image-prompt.`,
`Did you know:\nyou can create multiple variations of one image by locking in your seed, then enabling the <b>Variation Seed</b> parameter.`, `Did you know:\nyou can create multiple variations of one image by locking in your seed, then enabling the <b>Variation Seed</b> parameter.`,
@@ -47,7 +46,7 @@ function automaticWelcomeMessage(override = null) {
`Did you know:\nWant to compare how different values of a parameter affect your generations?\nHead to the <b>Tools</b> tab below and select the <b>Grid Generator</b> tool.`, `Did you know:\nWant to compare how different values of a parameter affect your generations?\nHead to the <b>Tools</b> tab below and select the <b>Grid Generator</b> tool.`,
`Did you know:\nYou can create a <b>Preset</b> and name it exactly <b>Default</b>\nand that preset will automatically be used to load your default params when you launch Swarm.`, `Did you know:\nYou can create a <b>Preset</b> and name it exactly <b>Default</b>\nand that preset will automatically be used to load your default params when you launch Swarm.`,
`Did you know:\nSomething going wrong?\nCheck the <b>Server</b> tab for debug logs, system resource usage, etc.`, `Did you know:\nSomething going wrong?\nCheck the <b>Server</b> tab for debug logs, system resource usage, etc.`,
`Did you know:\nWant to try some fancy prompting?\nJust type a '&lt;' symbol and watch the suggestions for prompt-syntax tools appear! Give the syntax features a try! <a href="https://github.com/Stability-AI/StableSwarmUI/blob/master/docs/Features/Prompt%20Syntax.md">(Documentation Here)</a>`, `Did you know:\nWant to try some fancy prompting?\nJust type a '&lt;' symbol and watch the suggestions for prompt-syntax tools appear! Give the syntax features a try! <a href="https://github.com/mcmonkeyprojects/SwarmUI/blob/master/docs/Features/Prompt%20Syntax.md">(Documentation Here)</a>`,
/* Recent feature updates */ /* Recent feature updates */
`New feature (2024-03-10): Comfy Workflow Browser\nAn easy browser for Comfy workflows in the Comfy tab. <a href="https://github.com/Stability-AI/StableSwarmUI/discussions/11#discussioncomment-8736304">(Feature Announcement Link)</a>`, `New feature (2024-03-10): Comfy Workflow Browser\nAn easy browser for Comfy workflows in the Comfy tab. <a href="https://github.com/Stability-AI/StableSwarmUI/discussions/11#discussioncomment-8736304">(Feature Announcement Link)</a>`,
`New feature (2024-04-18): Modern Dark and Light themes!\nBuilt by an actual designer this time! <a href="https://github.com/Stability-AI/StableSwarmUI/discussions/11#discussioncomment-9153506">(Feature Announcement Link)</a>\n<button class="btn btn-secondary" onclick="aggressivelySetTheme('modern_dark')">Click here to try Modern Dark</button>\n(go to User Settings to change back)`, `New feature (2024-04-18): Modern Dark and Light themes!\nBuilt by an actual designer this time! <a href="https://github.com/Stability-AI/StableSwarmUI/discussions/11#discussioncomment-9153506">(Feature Announcement Link)</a>\n<button class="btn btn-secondary" onclick="aggressivelySetTheme('modern_dark')">Click here to try Modern Dark</button>\n(go to User Settings to change back)`,

View File

@@ -17,4 +17,4 @@ if [ -d ./src/bin/live_release ]; then
fi fi
# Now build the new copy # Now build the new copy
dotnet build src/StableSwarmUI.csproj --configuration Release -o ./src/bin/live_release dotnet build src/SwarmUI.csproj --configuration Release -o ./src/bin/live_release

View File

@@ -19,6 +19,6 @@ if exist src\bin\live_release\ (
) )
rem Now build the new copy rem Now build the new copy
dotnet build src/StableSwarmUI.csproj --configuration Release -o src/bin/live_release dotnet build src/SwarmUI.csproj --configuration Release -o src/bin/live_release
timeout 3 timeout 3