This page lists files in the current directory. You can view content, get download/execute commands for Wget, Curl, or PowerShell, or filter the list using wildcards (e.g., `*.sh`).
wget 'https://lists2.roe3.org/mdrone/jack-o-lantern_generator/index.html'
<!DOCTYPE html>
<html lang="en" >
<head>
<title>Jack O'Lantern Generator</title>
<meta charset="UTF-8">
<link rel='stylesheet' href='https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css'>
<link rel="stylesheet" href="./style.css">
</head>
<body>
<div class="header-container">
<img src="jackogenerator.png" alt="Jack O'Lantern Generator" class="header-image" />
</div>
<!-- Generator Inputs -->
<div class="container">
<div class="generator">
<!-- Eyes Selection -->
<div class="input-group">
<label for="eyes"><i class="fas fa-eye"></i> Eyes</label>
<select id="eyes">
<option value="triangle">Triangle</option>
<option value="round">Round</option>
<option value="slanted">Slanted</option>
<option value="star-shaped">Star-shaped</option>
<option value="crescent">Crescent</option>
<option value="heart-shaped">Heart-shaped</option>
<option value="diamond">Diamond</option>
<option value="spiral">Spiral</option>
</select>
</div>
<!-- Nose Selection -->
<div class="input-group">
<label for="nose"><i class="fas fa-play" style="transform: rotate(32deg);"></i> Nose</label>
<select id="nose">
<option value="triangle">Triangle</option>
<option value="round">Round</option>
<option value="heart-shaped">Heart-shaped</option>
<option value="none">No nose</option>
<option value="square">Square</option>
<option value="star-shaped">Star-shaped</option>
<option value="crescent">Crescent</option>
</select>
</div>
<!-- Mouth Selection -->
<div class="input-group">
<label for="mouth"><i class="fas fa-smile"></i> Mouth</label>
<select id="mouth">
<option value="grin">Grin</option>
<option value="frown">Frown</option>
<option value="square">Square</option>
<option value="jagged">Jagged</option>
<option value="curved">Curved</option>
<option value="stitched">Stitched</option>
<option value="fanged">Fanged</option>
<option value="surprised">Surprised</option>
<option value="smirk">Smirk</option>
</select>
</div>
<!-- Accessories Selection -->
<div class="input-group">
<label for="accessories"><i class="fas fa-hat-wizard"></i> Accessories</label>
<select id="accessories">
<option value="none">None</option>
<option value="witch hat">Witch Hat</option>
<option value="scarf">Scarf</option>
<option value="glasses">Glasses</option>
<option value="sunglasses">Sunglasses</option>
<option value="beanie">Beanie</option>
<option value="bow tie">Bow Tie</option>
<option value="earrings">Earrings</option>
<option value="mustache">Mustache</option>
<option value="pipe">Pipe</option>
<option value="monocle">Monocle</option>
<option value="crown">Crown</option>
<option value="glasses and scarf">Glasses and Scarf</option>
<option value="beanie and scarf">Beanie and Scarf</option>
<option value="witch hat and glasses">Witch Hat and Glasses</option>
<option value="sunglasses and bow tie">Sunglasses and Bow Tie</option>
<option value="sunglasses and scarf">Sunglasses and Scarf</option>
<option value="sunglasses and beanie">Sunglasses and Beanie</option>
</select>
</div>
<!-- Background Selection -->
<div class="input-group">
<label for="background"><i class="fas fa-tree"></i> Background</label>
<select id="background">
<option value="spooky forest">Spooky Forest</option>
<option value="haunted house">Haunted House</option>
<option value="graveyard">Graveyard</option>
<option value="misty night">Misty Night</option>
<option value="full moon">Full Moon</option>
<option value="pumpkin patch">Pumpkin Patch</option>
<option value="witch's cauldron">Witch's Cauldron</option>
<option value="abandoned castle">Abandoned Castle</option>
</select>
</div>
<!-- Art Style Selection -->
<div class="input-group">
<label for="style"><i class="fas fa-palette"></i> Art Style</label>
<select id="style">
<option value="realistic">Realistic</option>
<option value="cartoon">Cartoon</option>
<option value="watercolor">Watercolor</option>
<option value="oil painting">Oil Painting</option>
<option value="digital art">Digital Art</option>
<option value="sketchy">Sketchy</option>
<option value="pixel art">Pixel Art</option>
<option value="gothic">Gothic</option>
<option value="pop art">Pop Art</option>
<option value="abstract">Abstract</option>
<option value="line drawing">Line Drawing</option>
<option value="comic book">Comic Book</option>
</select>
</div>
<!-- Generate Button -->
<button id="generate">
<i class="fas fa-magic"></i> Conjure Your Jack O'Lantern
</button>
</div>
<!-- Output Section -->
<div class="output">
<div id="message"></div>
<div id="loading-spinner" class="loader"></div>
<div id="image-container">
<img src="yourcreationhere.png" alt="Placeholder for Jack o'Lantern" />
</div>
<div id="utilities">
<a id="dlLink" href="#" target="_blank" style="display: none;">
<i class="fas fa-ghost"></i> Unleash Your Creation
</a>
</div>
</div>
</div>
<script src="./script.js"></script>
</body>
</html>
wget 'https://lists2.roe3.org/mdrone/jack-o-lantern_generator/jackogenerator.png'
wget 'https://lists2.roe3.org/mdrone/jack-o-lantern_generator/script.js'
document.addEventListener("DOMContentLoaded", function () {
const generateButton = document.getElementById("generate");
const eyesInput = document.getElementById("eyes");
const noseInput = document.getElementById("nose");
const mouthInput = document.getElementById("mouth");
const accessoriesInput = document.getElementById("accessories");
const backgroundInput = document.getElementById("background");
const styleInput = document.getElementById("style");
const imageContainer = document.getElementById("image-container");
const loadingSpinner = document.getElementById("loading-spinner");
const dlLink = document.getElementById("dlLink");
const message = document.getElementById("message");
dlLink.style.display = "none";
generateButton.addEventListener("click", function () {
const description = encodeURIComponent(createDescription());
const imageUrl = `https://image.pollinations.ai/prompt/${description}?nologo=1&seed=${generateRandomSeed()}&height=512&width=512`;
displayLoadingState(true);
// Use a CORS proxy
const proxyUrl = "https://corsproxy.io/?";
const proxiedImageUrl = proxyUrl + encodeURIComponent(imageUrl);
fetch(proxiedImageUrl)
.then((response) => response.blob())
.then((blob) => {
const img = new Image();
img.onload = function () {
displayGeneratedImage(this);
updateDownloadLink(imageUrl); // Use original URL for download
message.textContent = "Your Jack o'Lantern has been generated!";
displayLoadingState(false);
};
img.onerror = function () {
throw new Error("Image failed to load");
};
img.src = URL.createObjectURL(blob);
})
.catch((error) => {
displayLoadingState(false);
message.textContent = "Failed to generate the image. Please try again.";
console.error("Error:", error);
});
});
function createDescription() {
return `Detailed Halloween pumpkin Jack o'Lantern, ${getEyesDescription(
eyesInput.value
)}, ${getNoseDescription(noseInput.value)}, ${getMouthDescription(mouthInput.value)}, ${getAccessoriesDescription(accessoriesInput.value)} in a ${getBackgroundDescription(backgroundInput.value)}, ${getStyleDescription(styleInput.value)} style, spooky, highly detailed`;
}
function generateRandomSeed() {
return Math.floor(Math.random() * 1e9);
}
function displayLoadingState(isLoading) {
loadingSpinner.style.display = isLoading ? "block" : "none";
generateButton.disabled = isLoading;
if (isLoading) {
imageContainer.innerHTML = "";
dlLink.style.display = "none";
message.textContent = "Conjuring your Jack O'Lantern...";
}
}
function displayGeneratedImage(img) {
imageContainer.innerHTML = "";
imageContainer.appendChild(img);
}
function updateDownloadLink(imageUrl) {
dlLink.style.display = "inline-block";
dlLink.href = imageUrl;
}
function getEyesDescription(eyesType) {
const descriptions = {
triangle: "triangular-shaped glowing eyes",
round: "round glowing eyes",
slanted: "slanted menacing eyes",
"star-shaped": "star-shaped glowing eyes",
crescent: "crescent-shaped glowing eyes",
"heart-shaped": "heart-shaped glowing eyes",
diamond: "diamond-shaped glowing eyes",
spiral: "spiral-shaped glowing eyes"
};
return descriptions[eyesType] || "glowing eyes";
}
function getNoseDescription(noseType) {
const descriptions = {
triangle: "triangular-shaped nose",
round: "round nose",
"heart-shaped": "heart-shaped nose",
none: "no nose",
square: "square-shaped nose",
"star-shaped": "star-shaped nose",
crescent: "crescent-shaped nose"
};
return descriptions[noseType] || "carved nose";
}
function getMouthDescription(mouthType) {
const descriptions = {
grin: "wide grinning mouth with teeth",
frown: "frowning mouth",
square: "square-shaped mouth",
jagged: "jagged, zigzag mouth",
curved: "curved smiling mouth",
stitched: "stitched mouth",
fanged: "fanged grinning mouth",
surprised: "surprised O-shaped mouth",
smirk: "a mischievous smirk or smile" // New Smirk option
};
return descriptions[mouthType] || "carved mouth";
}
function getAccessoriesDescription(accessoryType) {
const descriptions = {
none: "",
"witch hat": "wearing a witch hat",
scarf: "wearing a cozy scarf",
glasses: "wearing glasses",
sunglasses: "wearing cool sunglasses",
beanie: "wearing a warm beanie",
"bow tie": "wearing a dapper bow tie",
earrings: "with dangling earrings",
mustache: "with a curly mustache",
pipe: "with a smoking pipe",
monocle: "wearing a monocle",
crown: "wearing a regal crown",
"glasses and scarf": "wearing glasses and a cozy scarf",
"beanie and scarf": "wearing a warm beanie and a cozy scarf",
"witch hat and glasses": "wearing a witch hat and glasses",
"sunglasses and bow tie": "wearing cool sunglasses and a dapper bow tie",
"sunglasses and scarf": "wearing cool sunglasses and a cozy scarf",
"sunglasses and beanie": "wearing cool sunglasses and a warm beanie"
};
return descriptions[accessoryType] || "";
}
function getBackgroundDescription(backgroundType) {
const descriptions = {
"spooky forest": "spooky forest with twisted trees and fog",
"haunted house": "haunted house with eerie windows and a full moon",
graveyard: "misty graveyard with crooked tombstones",
"misty night": "misty night scene with a full moon",
"full moon": "dramatic full moon night sky",
"pumpkin patch": "pumpkin patch with various sized pumpkins",
"witch's cauldron": "bubbling witch's cauldron with green smoke",
"abandoned castle": "looming abandoned castle on a hilltop"
};
return descriptions[backgroundType] || "spooky Halloween scene";
}
function getStyleDescription(styleType) {
const descriptions = {
realistic: "realistic style",
cartoon: "cartoon style",
watercolor: "watercolor painting style",
"oil painting": "oil painting style",
"digital art": "digital art style",
sketchy: "sketchy, hand-drawn style",
"pixel art": "pixel art style",
gothic: "dark, gothic style",
"pop art": "bold, pop art style",
abstract: "abstract art style", // New art styles
"line drawing": "minimalist line drawing style",
"comic book": "comic book style"
};
return descriptions[styleType] || "artistic style";
}
});
wget 'https://lists2.roe3.org/mdrone/jack-o-lantern_generator/style.css'
:root {
}
* {
font-family: "Rubik", sans-serif;
box-sizing: border-box;
}
body {
margin: 0;
padding: 0;
background-color: #121212;
color: #ff6600;
}
.header-container {
width: 95%;
max-width: 1200px;
margin: 2rem auto;
}
.header-image {
width: 100%;
height: 100px;
object-fit: cover;
object-position: center;
}
.container {
width: 95%;
max-width: 1200px;
margin: 0 auto;
background-color: #1e1e1e;
border-radius: 20px;
padding: 2rem;
display: flex;
flex-wrap: wrap;
gap: 2rem;
}
.generator,
.output {
flex: 1;
min-width: 300px;
display: flex;
flex-direction: column;
}
.input-group {
margin-bottom: 1.5rem;
}
label {
display: flex;
align-items: center;
font-size: 1rem;
font-weight: 600;
color: #ffffff;
margin-bottom: 0.5rem;
}
label i {
margin-right: 0.5rem;
font-size: 1.2rem;
color: #ff6600;
}
select {
width: 100%;
padding: 0.75rem;
padding-right: 2.5rem;
border: 2px solid #ff6600;
border-radius: 10px;
background-color: #2a2a2a;
color: #ffffff;
appearance: none;
background-image: url('data:image/svg+xml;utf8,<svg fill="%23ff6600" height="24" viewBox="0 0 24 24" width="24" xmlns="http://www.w3.org/2000/svg"><path d="M7 10l5 5 5-5z"/></svg>');
background-repeat: no-repeat;
background-position: right 0.7rem center;
background-size: 1.5em auto;
}
select:focus {
outline: none;
border-color: #ff9933;
box-shadow: 0 0 10px rgba(255, 153, 51, 0.5);
}
button,
#dlLink {
width: 100%;
background-color: #222325;
color: #ffffff;
padding: 1rem;
border: 2px solid #ffffff;
border-radius: 50px;
font-size: 1.2rem;
font-weight: 600;
cursor: pointer;
transition: all 0.3s ease;
display: flex;
justify-content: center;
align-items: center;
text-decoration: none;
margin-top: auto;
}
button:hover,
#dlLink:hover {
background-color: #ff9933;
}
button i,
#dlLink i {
margin-right: 0.5rem;
}
.output {
text-align: center;
position: relative;
}
#message {
font-size: 1.2rem;
margin-bottom: 1rem;
color: #ffffff;
font-weight: 600;
}
#image-container {
flex-grow: 1;
display: flex;
justify-content: center;
align-items: center;
margin-bottom: 1rem;
}
#image-container img {
max-width: 100%;
height: auto;
border-radius: 10px;
}
.loader {
width: 64px;
height: 220px;
border: 3px solid #ff6600;
border-radius: 0 0 50px 50px;
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
box-shadow: 0px 0px #ff3d00 inset;
background-image: linear-gradient(#ff3d00 100%, transparent 0);
background-position: 0px 220px;
background-size: 64px 220px;
background-repeat: no-repeat;
animation: animloader98 6s linear infinite;
display: none;
}
.loader::after {
content: "";
box-sizing: border-box;
top: -15px;
left: 50%;
transform: translateX(-50%);
position: absolute;
border: 3px solid #ff6600;
border-radius: 50%;
width: 78px;
height: 16px;
}
.loader::before {
content: "";
box-sizing: border-box;
left: 0;
bottom: -11px;
border-radius: 50%;
position: absolute;
width: 10px;
height: 10px;
animation: animloader98s 6s linear infinite;
}
@keyframes animloader98 {
0% {
background-position: 0 220px;
}
100% {
background-position: 0 0;
}
}
@keyframes animloader98s {
0% {
box-shadow: 8px -10px rgba(255, 102, 0, 0), 12px 0px rgba(255, 102, 0, 0),
16px -15px rgba(255, 102, 0, 0), 24px 0px rgba(255, 102, 0, 0);
}
20% {
box-shadow: 8px -40px rgba(255, 102, 0, 0), 12px -20px rgba(255, 102, 0, 0),
16px -60px rgba(255, 102, 0, 0.5), 24px -10px rgba(255, 102, 0, 0);
}
40% {
box-shadow: 4px -80px rgba(255, 102, 0, 0.5),
12px -60px rgba(255, 102, 0, 0.4), 16px -120px rgba(255, 102, 0, 0.5),
24px -30px rgba(255, 102, 0, 0.5);
}
60% {
box-shadow: 8px -120px rgba(255, 102, 0, 0.5),
12px -100px rgba(255, 102, 0, 0.4), 16px -180px rgba(255, 102, 0, 0.5),
24px -50px rgba(255, 102, 0, 0.5);
}
80% {
box-shadow: 4px -160px rgba(255, 102, 0, 0.5),
8px -140px rgba(255, 102, 0, 0.4), 16px -240px rgba(255, 102, 0, 0),
24px -70px rgba(255, 102, 0, 0.5);
}
100% {
box-shadow: 8px -200px rgba(255, 102, 0, 0),
12px -180px rgba(255, 102, 0, 0), 16px -240px rgba(255, 102, 0, 0),
24px -90px rgba(255, 102, 0, 0);
}
}
button {
min-height: 50px; /* Adjust this value as needed */
}
.output {
min-height: 550px; /* Adjust this value based on your layout */
}
@media (max-width: 768px) {
.container {
flex-direction: column;
}
.generator,
.output {
width: 100%;
}
}
wget 'https://lists2.roe3.org/mdrone/jack-o-lantern_generator/yourcreationhere.png'