zero01101 / openOutpaint

local offline javascript and html canvas outpainting gizmo for stable diffusion webUI API 🐠
MIT License
504 stars 44 forks source link

hello there 🐠

openOutpaint creating some undersea... well, stuff

silly demo example current as of 9b174d6 / v0.0.8 / 2022-12-03 //TODO UPDATE SRSLY

this is a completely vanilla javascript and html canvas outpainting convenience doodad built for the API optionally exposed by AUTOMATIC1111's stable diffusion webUI, operating similarly to a few others that are probably more well-known. this simply offers an alternative for my following vain desires:

features

operation

NOTE: PLEASE SEE DOCUMENTATION REGARDING NEW HRfix FEATURES IMPLEMENTED AS OF webUI COMMIT ef27a18

prerequisities

you'll obviously need A1111's webUI installed before you can use this, thus you're presumed to have an operational python install up and running to boot.

A1111 webUI must be launched with the --api flag enabled, and the --cors-allow-origins= flag set with the host where openOutpaint will be running.

_NOTE: the commandline flag --gradio-debug disables custom API routes and completely breaks openOutpaint. please remove it from your COMMANDLINEARGS before running openOutpaint.

surprising incompatibilities

_COLAB USERS: you may experience issues installing openOutpaint (and other webUI extensions) - there is a workaround that has been discovered and tested against TheLastBen's fast-stable-diffusion. Please see this discussion containing the workaround, which requires adding a command into the final cell of the colab, as well as setting Enable_API to True._

If anything goes wrong with openOutpaint, try running it on another browser and disable all extensions and try again. If a new incompatible extension is found, please open an issue so we can notify other users of extension incompatibilities.

quickstart speedrun

  1. edit your cors-allow-origins to include https://zero01101.github.io and run webUI
  2. go to https://zero01101.github.io/openOutpaint/ and fill in the host value with your webUI API address
  3. click things and do stuff

step-by-step actually useful instructions

please see the quickstart wiki article and comprehensive manual.

pull requests/bug reports

please do! see contributing for details!

warranty

lmao