| | <!DOCTYPE html> |
| | <html lang="en"> |
| | <head> |
| | <meta charset="UTF-8"> |
| | <meta name="viewport" content="width=device-width, initial-scale=1.0"> |
| | <title>Ultra-HD Image Edit [ UNCENSORED ]</title> |
| | <script src="https://cdn.tailwindcss.com"></script> |
| | <link rel="preconnect" href="https://fonts.googleapis.com"> |
| | <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> |
| | <link href="https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap" rel="stylesheet"> |
| | <style> |
| | body { |
| | font-family: 'Inter', sans-serif; |
| | background: linear-gradient(to bottom, #1f2937, #000000); |
| | min-height: 100vh; |
| | } |
| | .header-text { |
| | color: #A2FF6E; |
| | } |
| | .upload-area { |
| | border: 2px dashed #374151; |
| | transition: all 0.3s ease; |
| | } |
| | .upload-area:hover { |
| | border-color: #A2FF6E; |
| | background-color: rgba(162, 255, 110, 0.05); |
| | } |
| | .upload-area.dragover { |
| | border-color: #A2FF6E; |
| | background-color: rgba(162, 255, 110, 0.1); |
| | } |
| | .modal-overlay { |
| | background-color: rgba(0, 0, 0, 0.85); |
| | backdrop-filter: blur(4px); |
| | } |
| | .render-btn { |
| | background: linear-gradient(135deg, #A2FF6E 0%, #7ee64c 100%); |
| | color: #000000; |
| | font-weight: 600; |
| | } |
| | .render-btn:hover { |
| | transform: translateY(-1px); |
| | box-shadow: 0 10px 25px -5px rgba(162, 255, 110, 0.4); |
| | } |
| | .close-btn { |
| | position: absolute; |
| | top: 1rem; |
| | right: 1rem; |
| | color: #9ca3af; |
| | cursor: pointer; |
| | font-size: 1.5rem; |
| | line-height: 1; |
| | } |
| | .close-btn:hover { |
| | color: #ffffff; |
| | } |
| | </style> |
| | </head> |
| | <body class="text-white px-4 py-8"> |
| |
|
| | <div class="max-w-2xl mx-auto"> |
| | |
| | <div class="text-center mb-8"> |
| | <h1 class="text-3xl sm:text-4xl font-bold header-text mb-4 tracking-tight"> |
| | Ultra-HD Image Edit <br> [ UNCENSORED ] |
| | </h1> |
| | <p class="text-gray-300 text-sm sm:text-base leading-relaxed max-w-xl mx-auto"> |
| | Ultra-HD Image Edit Pro allows you to modify an image simply by uploading it and saying in plain words what you want changed. Superior visual dynamics, enhanced fidelity, and professional high-resolution output. Ready-to-use best performance! |
| | </p> |
| | </div> |
| |
|
| | |
| | <div class="mb-6"> |
| | <label class="block text-sm font-medium text-gray-400 mb-2">Upload Image</label> |
| | <div id="uploadArea" class="upload-area rounded-xl p-8 text-center cursor-pointer relative overflow-hidden"> |
| | <input type="file" id="fileInput" accept="image/*" class="hidden"> |
| | <div id="uploadPlaceholder"> |
| | <svg class="mx-auto h-12 w-12 text-gray-500 mb-3" stroke="currentColor" fill="none" viewBox="0 0 48 48"> |
| | <path d="M28 8H12a4 4 0 00-4 4v20m32-12v8m0 0v8a4 4 0 01-4 4H12a4 4 0 01-4-4v-4m32-4l-3.172-3.172a4 4 0 00-5.656 0L28 28M8 32l9.172-9.172a4 4 0 015.656 0L28 28m0 0l4 4m4-24h8m-4-4v8m-12 4h.02" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" /> |
| | </svg> |
| | <p class="text-gray-400 text-sm">Click to upload or drag and drop</p> |
| | <p class="text-gray-600 text-xs mt-1">PNG, JPG, GIF up to 10MB</p> |
| | </div> |
| | <img id="previewImage" class="hidden w-full h-auto rounded-lg max-h-64 object-contain mx-auto" alt="Preview"> |
| | <button id="removeImage" class="hidden absolute top-2 right-2 bg-red-500 text-white rounded-full p-1 hover:bg-red-600 transition-colors"> |
| | <svg class="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24"> |
| | <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18L18 6M6 6l12 12"></path> |
| | </svg> |
| | </button> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div class="mb-6"> |
| | <label for="prompt" class="block text-sm font-medium text-gray-400 mb-2">Prompt</label> |
| | <textarea |
| | id="prompt" |
| | rows="3" |
| | class="w-full bg-gray-800 border border-gray-700 rounded-lg px-4 py-3 text-white placeholder-gray-500 focus:outline-none focus:border-[#A2FF6E] focus:ring-1 focus:ring-[#A2FF6E] resize-none text-sm" |
| | >Change their outfit to...</textarea> |
| | </div> |
| |
|
| | |
| | <div class="mb-8"> |
| | <label for="hdLevel" class="block text-sm font-medium text-gray-400 mb-2">Additional Processing</label> |
| | <select |
| | id="hdLevel" |
| | class="w-full bg-gray-800 border border-gray-700 rounded-lg px-4 py-3 text-white focus:outline-none focus:border-[#A2FF6E] focus:ring-1 focus:ring-[#A2FF6E] text-sm appearance-none cursor-pointer" |
| | style="background-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns=\'http://www.w3.org/2000/svg\' viewBox=\'0 0 24 24\' fill=\'none\' stroke=\'%239ca3af\' stroke-width=\'2\' stroke-linecap=\'round\' stroke-linejoin=\'round\'><polyline points=\'6 9 12 15 18 9\'></polyline></svg>'); background-repeat: no-repeat; background-position: right 1rem center; background-size: 1rem; padding-right: 2.5rem;" |
| | > |
| | <option value="No change">Standard Resolution</option> |
| | <option value="Enhance">Enhance to HD</option> |
| | </select> |
| | </div> |
| |
|
| | |
| | <button |
| | id="renderBtn" |
| | class="render-btn w-full py-4 rounded-lg text-base transition-all duration-200 flex items-center justify-center gap-2" |
| | > |
| | <svg class="w-5 h-5" fill="none" stroke="currentColor" viewBox="0 0 24 24"> |
| | <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M14.752 11.168l-3.197-2.132A1 1 0 0010 9.87v4.263a1 1 0 001.555.832l3.197-2.132a1 1 0 000-1.664z"></path> |
| | <path stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M21 12a9 9 0 11-18 0 9 9 0 0118 0z"></path> |
| | </svg> |
| | Generate |
| | </button> |
| |
|
| | |
| | <div class="mt-8 text-center"> |
| | <p class="text-[#616161] text-xs">Copyright 2026 | Ultra-HD Image Edit </p> |
| | </div> |
| | </div> |
| |
|
| | |
| | <div id="updateModal" class="hidden fixed inset-0 z-50 modal-overlay flex items-center justify-center p-4"> |
| | <div class="bg-gray-900 border border-gray-700 rounded-2xl max-w-md w-full p-6 sm:p-8 relative"> |
| | <button id="closeModal" class="close-btn">×</button> |
| | <div class="text-center"> |
| | <h2 class="text-red-500 text-4xl font-bold mb-4 tracking-tight">UPDATE</h2> |
| | <p class="text-white text-sm sm:text-base leading-relaxed"> |
| | Out of respect for HF's rules, this uncensored model can now be <a href="https://wavespeedai.pxf.io/qWDP25" class="font-bold text-[#A2FF6E] hover:underline" target="_blank" rel="noopener noreferrer">accessed here</a>. Everyone using this link will receive an immediate <b> FREE deposit</b> of credits (enough to generate DOZENS of images) <b>no credit card needed!</b> |
| | </p> |
| | </div> |
| | </div> |
| | </div> |
| |
|
| | <script> |
| | |
| | const uploadArea = document.getElementById('uploadArea'); |
| | const fileInput = document.getElementById('fileInput'); |
| | const uploadPlaceholder = document.getElementById('uploadPlaceholder'); |
| | const previewImage = document.getElementById('previewImage'); |
| | const removeImage = document.getElementById('removeImage'); |
| | |
| | uploadArea.addEventListener('click', () => fileInput.click()); |
| | |
| | uploadArea.addEventListener('dragover', (e) => { |
| | e.preventDefault(); |
| | uploadArea.classList.add('dragover'); |
| | }); |
| | |
| | uploadArea.addEventListener('dragleave', () => { |
| | uploadArea.classList.remove('dragover'); |
| | }); |
| | |
| | uploadArea.addEventListener('drop', (e) => { |
| | e.preventDefault(); |
| | uploadArea.classList.remove('dragover'); |
| | const files = e.dataTransfer.files; |
| | if (files.length > 0) { |
| | handleFile(files[0]); |
| | } |
| | }); |
| | |
| | fileInput.addEventListener('change', (e) => { |
| | if (e.target.files.length > 0) { |
| | handleFile(e.target.files[0]); |
| | } |
| | }); |
| | |
| | function handleFile(file) { |
| | if (file && file.type.startsWith('image/')) { |
| | const reader = new FileReader(); |
| | reader.onload = (e) => {2 |
| | previewImage.src = e.target.result; |
| | previewImage.classList.remove('hidden'); |
| | uploadPlaceholder.classList.add('hidden'); |
| | removeImage.classList.remove('hidden'); |
| | uploadArea.classList.remove('cursor-pointer'); |
| | }; |
| | reader.readAsDataURL(file); |
| | } |
| | } |
| | |
| | removeImage.addEventListener('click', (e) => { |
| | e.stopPropagation(); |
| | fileInput.value = ''; |
| | previewImage.src = ''; |
| | previewImage.classList.add('hidden'); |
| | uploadPlaceholder.classList.remove('hidden'); |
| | removeImage.classList.add('hidden'); |
| | uploadArea.classList.add('cursor-pointer'); |
| | }); |
| | |
| | |
| | const renderBtn = document.getElementById('renderBtn'); |
| | const updateModal = document.getElementById('updateModal'); |
| | const closeModal = document.getElementById('closeModal'); |
| | |
| | renderBtn.addEventListener('click', () => { |
| | updateModal.classList.remove('hidden'); |
| | }); |
| | |
| | closeModal.addEventListener('click', () => { |
| | updateModal.classList.add('hidden'); |
| | }); |
| | |
| | updateModal.addEventListener('click', (e) => { |
| | if (e.target === updateModal) { |
| | updateModal.classList.add('hidden'); |
| | } |
| | }); |
| | |
| | |
| | document.addEventListener('keydown', (e) => { |
| | if (e.key === 'Escape' && !updateModal.classList.contains('hidden')) { |
| | updateModal.classList.add('hidden'); |
| | } |
| | }); |
| | </script> |
| | </body> |
| | </html> |