Étape 1 : le premier lot d'images analysées - Analyse thématique : La Muse Émeraude Étape 2 : le deuxième lot d'images analysées - Analyse thématique : La Faucheuse Éclipsée Étape 3 : Il est possible d'analyser d'autre lots Étape 4 : Mixage en suivant la logique des 12 catégories de la phrase magique
Quand tu reçois le résultat, n'hésite pas à renommer le label de l' optgroup (par exemple : label="Série Émeraude" ou label="Série Faucheuse").
Pourquoi ? Dans ton menu déroulant, cela te permettra de voir immédiatement d'où vient l'option que tu t'apprêtes à choisir.
Pour l'aléatoire : Le bouton Surprise s'en moque, il piochera indifféremment dans l'un ou l'autre, créant ces fameux "monstres de Frankenstein" visuels absolument géniaux que tu recherches.
Le Mix des 2 images pour les 12 catégories : Etape 5 : on colle les boutons (copy, surprise, ...)
Prompt Positif
Prompt Négatif Expert
Etape 6 : le script avec le prompt négatif, etc etc.. - Ce script gère l'aléatoire, la remise à zéro et la fusion des prompts positif et négatif.
// Le Graal : Le Super Prompt Négatif Expert
const SUPER_NEGATIVE = "deformed iris, deformed pupils, semi-realistic, cgi, 3d, render, sketch, cartoon, drawing, anime:1.4, text, close up, cropped, out of frame, worst quality, low quality, jpeg artifacts, ugly, duplicate, morbid, mutilated, extra fingers, mutated hands, poorly drawn hands, poorly drawn face, mutation, deformed, blurry, dehydrated, bad anatomy, bad proportions, extra limbs, cloned face, disfigured, gross proportions, malformed limbs, missing arms, missing legs, extra arms, extra legs, fused fingers, too many fingers, long neck";
// Afficher le négatif par défaut au chargement
window.onload = () => {
document.getElementById('negative-output').value = SUPER_NEGATIVE;
};
function gen() {
const selects = document.querySelectorAll('.field-box select');
let promptParts = [];
selects.forEach(select => {
if (select.value && select.value !== "custom") {
promptParts.push(select.value);
}
});
document.getElementById('output').value = promptParts.join(", ");
}
function surprise() {
const selects = document.querySelectorAll('.field-box select');
selects.forEach(select => {
const options = Array.from(select.options).filter(opt => opt.value !== "" && opt.value !== "custom");
if (options.length > 0) {
const randomOpt = options[Math.floor(Math.random() * options.length)];
select.value = randomOpt.value;
}
});
gen(); // Met à jour l'affichage immédiatement
}
function resetForm() {
const selects = document.querySelectorAll('.field-box select');
selects.forEach(select => select.selectedIndex = 0);
document.getElementById('output').value = "";
}
function copyPrompt() {
const pos = document.getElementById('output').value;
const neg = SUPER_NEGATIVE;
const fullPrompt = `PROMPT:\n${pos}\n\nNEGATIVE PROMPT:\n${neg}`;
navigator.clipboard.writeText(fullPrompt).then(() => {
alert("Prompt complet copié dans le presse-papier !");
});
}
function exportTxt() {
const pos = document.getElementById('output').value;
const fullContent = `--- NANO BANANA GENERATOR ---\n\nPOSITIVE:\n${pos}\n\nNEGATIVE:\n${SUPER_NEGATIVE}`;
const blob = new Blob([fullContent], { type: "text/plain" });
const link = document.createElement("a");
link.href = URL.createObjectURL(blob);
link.download = "mon_prompt_expert.txt";
link.click();
}
Etape 7 : le Design CSS - pour de beaux boutons
.button-group {
display: flex;
gap: 10px;
flex-wrap: wrap;
margin: 20px 0;
}
button {
padding: 12px 20px;
border: none;
border-radius: 6px;
cursor: pointer;
font-weight: bold;
transition: 0.3s;
}
.btn-primary { background: #007bff; color: white; }
.btn-surprise { background: #6f42c1; color: white; }
.btn-reset { background: #dc3545; color: white; }
.btn-copy { background: #28a745; color: white; }
.btn-export { background: #17a2b8; color: white; }
button:hover { opacity: 0.8; transform: translateY(-2px); }
.output-container textarea {
width: 100%;
height: 100px;
margin-bottom: 15px;
padding: 10px;
background: #f8f9fa;
border: 1px solid #ddd;
border-radius: 4px;
font-family: 'Courier New', monospace;
}
Étape 7 - reconstruction globale des
Construction du Head
Nano Banana - Générateur de Prompts Expert
NANO BANANA GENERATOR
Architecture de Direction Artistique en 14 Points
(
) (...)
Étape 08 - on reconstruit tout :
HTML /
(avec )
BODY / HEADER complet
DIV principal ouverture +
les 14 + DIV principal fermeture
DIV BUTTON + DIV OUTPUT (prompt positif et négatif)
CSS / SCRIPT
voir document 00051 pour le générateur complet