UFFFD's ShaderToy Buddy

WebExtension for Shadertoy to help you code using GPT and other misc tools.

Features:

  • Ask GPT About Your Code using your api key, model, and system prompt preference
  • Edit Your Code using GPT to generate a new code block
  • Agent Mode (not yet implemented)
  • Shadertoy VectorDB Search (not yet implemented - would require a server to host the vector database, might require payment)

Quick install: Chrome

Manual install:

  1. Download latest zip from Releases
  2. Unzip the zip

Google Chrome

  1. Open Chrome and go to chrome://extensions/.
  2. In the top right corner, enable developer mode.
  3. Drag and drop downloaded file.

Mozilla Firefox

  1. Open Firefox and go to about:debugging.
  2. Click This Firefox.
  3. Click Load Temporary Add-on… and select the manifest.json file in the folder with the unpacked extension.

Microsoft Edge

  1. Open Edge and go to edge://extensions/.
  2. In the top right corner, enable developer mode.
  3. Click Load unpacked and select the folder with the unpacked extension.

To Do:

  • Add default helpful prompts
    • "Fix any errors in the code"
    • "Explain"/"Add comments"
    • "Make verbose / ungolf"
    • "Make concise"
    • "Add a random new feature"
    • [~] Write and test prompts
    • Add UI to trigger prompts
  • Add system to store and reuse prompts
    • customize existing prompts, hide defaults, manage custom prompts
    • add a new tab to the code editor panel? 'prompts'
  • error handling (ie low funds, bad key, failed request)
    • make it pretty
  • disable button if openai key missing, replace input prompt with link to extension window or something along those lines
  • add vision capability
  • handle tabs more betterish
  • [ ]

To Maybe:

  • vectordb with shadertoy public shaders & article/docs knowledgebase?
  • agent mode/prompt looping
  • explore openais new 'assistant' and 'chatgpts' offerings

Author / Contact:

UFFFD

Contributors:

Plugin framework based on Shadertoy unofficial plugin. by PatrykFalba (Patu)