generateHTML = {import:t2i-framework-plugin-v2} // <-- this is a little DIY 'framework' plugin that itself importes the text-to-image plugin and generates the user interface using the settings below

$meta title = AI Image Generator: Create Stunning Images with stable diffusion! 100% Free, No Sign-up Required, No Limits! description = Unleash Your Artistic Vision: Unleash your creativity with our free AI image generator! No sign-up needed. Transform text to image with stable diffusion. // image = https://files.catbox.moe/g35akd.gif

// Feel free to edit the settings below and then save your own copy of this generator! // You'll probably just want to scroll down to the artStyle list and edit those - it's pretty self-explanatory, just follow the format.

settings pageTitle = Ai Image Generator 🏕️🏜️ introMessage = Add a Description, Then Click Generate.

Add this page to your favorites to get back to it later! numImages = [Number(input.numImages)] socialFeatures = button after 1 clicks // or 'button' or 'enabled' or 'disabled'

// note: the t2i-framework-plugin makes all user inputs from the userInputs list accessible by name as [input.theNameOfTheInput], as shown here: imageOptions // <-- options for the text-to-image plugin that generates the images: https://perchance.org/text-to-image-plugin saveTitle = ([input.artStyle.getName]) [input.imagename] // .getName is a built-in Perchance property that gets the name of a given list/sublist/node prompt = [input.artStyle.prompt] negativePrompt = [input.artStyle.negative] resolution = [input.shape] seed = [input.seed] guidanceScale = [input.Gscale] steps = 250

userInputs // you can add more user inputs to this list, and then use them like [input.nameOfInput] in the prompt, negativePrompt, artStyle.prompt, etc.

scratchpad // Note: the 'remember' option storage is 'based on' this 'scratchpad' name, so if you change that name to something else like 'notepad', people will lose all their saved scratchpad text. But it's safe to change the 'label', below.
  label = 📒 Notepad
  tip = Just a little notepad for you - it does not affect your generated images. It 'remembers' the text that you put in it even after you refresh/close this page.\n\nThe text will only be forgotten if you clear your browser's "site data" (cookies, localStorage, etc.) for this particular site.
  type = paragraph
  remember = true // <-- the text that the user inputs will be remembered so it's still there even if they close/refresh the page
  width = min(750px, 100%)
  height = 50vh
  takesUpFullRow = true
  foldToggleState = hidden // or 'shown' if you want it to start shown, or delete this line if you don't want it to be show-able/hide-able
  visible() =>
    return Number(localStorage.generateClickCount) > 1; // so the scratchpad only shows up after they've clicked generate a couple of times (to reduce confusion/clutter for newbies)
  examples
    You can use this text box to store your prompts and other notes. The text you put here will be remembered even after you've closed/refreshed this page so long as you're not in in incognito browsing mode.\n\nHave fun and enjoy! \n\n𝗡𝗼𝘁𝗲: 𝗜𝗳 𝘆𝗼𝘂 𝗰𝗹𝗲𝗮𝗿 𝘆𝗼𝘂𝗿 "𝘀𝗶𝘁𝗲 𝗱𝗮𝘁𝗮"/𝗰𝗼𝗼𝗸𝗶𝗲𝘀 𝗳𝗼𝗿 𝘁𝗵𝗶𝘀 𝘀𝗶𝘁𝗲, 𝘆𝗼𝘂𝗿 𝘀𝗰𝗿𝗮𝘁𝗰𝗵𝗽𝗮𝗱 𝗱𝗮𝘁𝗮 𝘄𝗶𝗹𝗹 𝗯𝗲 𝗹𝗼𝘀𝘁!

description
  label = 📝 𝗗𝗲𝘀𝗰𝗿𝗶𝗽𝘁𝗶𝗼𝗻 𝗣𝗿𝗼𝗺𝗽𝘁 - <i>THIS SITE IS NSFW and for over 18 - you have been warned, have fun - CT </i>
  tip = Tip: If you write something like &lcub;red|white|blue&rcub; as part of your description, then a random one will be chosen for each image.\n\nYou can see the prompt that was used for a particular generated image by hovering your mouse over it, or long-pressing on mobile.\n\nAdd brackets around text (like this) to get the AI to pay more attention to it.
  type = paragraph
  width = min(750px, 100%)
  takesUpFullRow = true
  remember = true
  modifiers = [input.artStyle?.modifiers || null]
  modifierUpdates = event:description.input, event:artStyle.change
  enterKeyTriggersGeneration = true // <-- can still use shift+enter to create a new line
  // we use artstyle-specific random prompts if available, otherwise fall back to randomDescriptions list:
  examples = [input.artStyle?.randomPrompt || randomDescription] // <-- the placeholder examples that rotate in the text box
  random = [input.artStyle?.randomPrompt || randomDescription] // <-- added to the text box when the 'random' button gets clicked

negative
  label = 🚫 𝗔𝗻𝘁𝗶-𝗗𝗲𝘀𝗰𝗿𝗶𝗽𝘁𝗶𝗼𝗻 (𝗢𝗽𝘁𝗶𝗼𝗻𝗮𝗹)
  type = text
  remember = true
  examples
    Things you 𝗗𝗢 𝗡𝗢𝗧 want in the image
    
seed
  label = 🌱 𝐒𝐞𝐞𝐝 (𝗢𝗽𝘁𝗶𝗼𝗻𝗮𝗹)
  type = text
  width = min(250px)
  remember = true
  examples
    Custom Seed Here
    
imagename
  label = <b> 👁️‍🗨️ Title of Image (Optional)</b>
  tip = This will not affect your image, this is what the title of the image will be if it is shared in the public gallery.
  type = text
  remember = true
  examples
    Type a title for your image here.

artStyle
  label = 🎨 𝗔𝗿𝘁 𝗦𝘁𝘆𝗹𝗲 <b>(or Theme)</b)
  type = select
  remember = true // <-- makes it so the selected option will be remembered even if the user refreshes/closes the page
  options
    meta:import
      from = {import:custom-styles} // <-- imports a bunch of 'default' styles (you can delete this, or put it at the end, below 'No style' if you want)

   // 𝙍𝙚𝙖𝙡𝙞𝙨𝙩𝙞𝙘 𝙋𝙤𝙧𝙩𝙧𝙖𝙞𝙩𝙨 // <-- example of a custom prompt parameters - just follow this format and add as many of them as you want to this 'options' list
   //   prompt = [input.description], something, something, something
   //   negative = [input.negative], low-quality, deformed, blurry, bad art, ((text))
   //   meta:position = 1
    𝗡𝗼 𝗦𝘁𝘆𝗹𝗲
      prompt = [input.description]
      negative = [input.negative]
    Pre-historic
      prompt = [input.description], prehistoric, pre history, ancient
      negative = [input.negative], human, tall, attractive
      meta:position = 1
    Sexy
      prompt = [input.description],Natural look, Sensual,sexy,exotic,{oiled|hot},{sweaty|wet}, cannon picture,{standing|lying|sitting|kneeling|running|sleeping}
      negative = [input.negative], deformed
      meta:position = 2        


shape
  label = 🖼️ 𝗦𝗵𝗮𝗽𝗲
  type = select
  remember = true // <-- the selected option will be remembered even if the user refreshes/closes the page
  options
    Portrait = 512x768
    Square = 512x512
    Landscape = 768x512

    
numImages
  label = 🔢 𝗛𝗼𝘄 𝗺𝗮𝗻𝘆?
  type = select
  remember = true // <-- the selected option will be remembered even if the user refreshes/closes the page
  options
    3 = 3
    6 = 6
    9 = 9
    9 = 9
    12 = 12
    15 = 15
    21 = 21
    24 = 24
    27 = 27
    30 = 30
  visible() =>
    return Number(localStorage.generateClickCount) > 0; // so this input only shows up after they've clicked generate a couple of times (to reduce confusion/clutter for newbies)
    
Gscale
  label = 𝐆𝐮𝐢𝐝𝐚𝐧𝐜𝐞
  type = select
  remember = true
  options
    Default (7) = 7
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12

defaultCommentOptions // for comments plugin: https://perchance.org/comments-plugin width = 100% height = 400 commentPlaceholderText = Alright, let's see those fingers dance on the keyboard! submitButtonText = 𝗦𝘂𝗯𝗺𝗶𝘁 𝗖𝗼𝗺𝗺𝗲𝗻𝘁 bannedUsers = [bannedUsersList]

commentChannels general label = 𝐒𝐨𝐜𝐢𝐚𝐥 𝐂𝐡𝐚𝐭 𝐑𝐨𝐨𝐦 adminFlair = 🅰🅳🅼🅸🅽 adminPasswordHash = 5e1c418ff423a741c9cc1e1c06f926d7087db20909f0a5b71ae22ef1d5918148 feedback-and-suggestions label = 𝗙𝗲𝗲𝗱𝗯𝗮𝗰𝗸 𝗮𝗻𝗱 𝗦𝘂𝗴𝗴𝗲𝘀𝘁𝗶𝗼𝗻𝘀 adminFlair = 🅰🅳🅼🅸🅽 adminPasswordHash = 5e1c418ff423a741c9cc1e1c06f926d7087db20909f0a5b71ae22ef1d5918148 prompts label = 𝗣𝗿𝗼𝗺𝗽𝘁𝘀 adminFlair = 🅰🅳🅼🅸🅽 adminPasswordHash = 5e1c418ff423a741c9cc1e1c06f926d7087db20909f0a5b71ae22ef1d5918148 commentPlaceholderText = 𝐒𝐇𝐀𝐑𝐄 𝐀 𝐏𝐑𝐎𝐌𝐏𝐓-𝐒𝐓𝐘𝐋𝐄. 𝐈𝐅 𝐈𝐓'𝐒 𝐆𝐎𝐎𝐃, 𝐈𝐓 𝐌𝐀𝐘 𝐆𝐄𝐓 𝐀𝐃𝐃𝐄𝐃 𝐓𝐎 𝐓𝐇𝐄 𝐀𝐑𝐓 𝐒𝐓𝐘𝐋𝐄 𝐒𝐄𝐋𝐄𝐂𝐓𝐎𝐑! submitButtonText = 𝗦𝗵𝗮𝗿𝗲 𝗣𝗿𝗼𝗺𝗽𝘁

galleryOptions gallery = true sort = recent hideIfScoreIsBelow = -5 adaptiveHeight = true // <-- expand gallery height so it never has its own scrollbar contentFilter = 'PG-13' // <-- or 'none' for no default filter

showFeedback = false // you can temporarily change this to 'true' and then click the feedback button to view feedback

hair_colors blonde brunette blonde and pink highlighted auburn black

camera panoramic close-up portait low angle aerial shot high angle wide angle over-the-shoulder shot telephoto

seasons winter summer autumn spring

person 25 year old man 25 year old woman

mood happy giggling sad angry surprised bored

female_hair_styles pigtails ponytail dutch side braids wavy curly pixie

eye_color brown blue hazel amber gray green

detailed meticulous highly-detailed accurate comprehensive elaborate thorough

eighteenera in the park at the office at their desk on the beach in the supermarket at home in the street in the jungle on a plane in a car

nineteenera standing sitting lying kneeling dancing playing running sleeping, eyes closed

vehicless denim white cotton suit and skirt bikini skirt shorts onesie a dress jeans

randomDescription A [detailed] [camera] of a [mood] [person] with [hair_colors] hair. they are [nineteenera] [eighteenera]. they have beautiful [eye_color] eyes. they are wearing [vehicless]

bannedUsersList

generatorStats = {import:generator-stats-plugin}

Downloads last month

-

Downloads are not tracked for this model. How to track
Inference Providers NEW
This model is not currently available via any of the supported Inference Providers.
The model cannot be deployed to the HF Inference API: The model has no library tag.