wanvision-studio / index.html
00Boobs00's picture
Give this the grand finale finishing polish for immediate deployment as a reliable and fully operational private and secure personal tool only intended to be used by me.
d595b97 verified
<!DOCTYPE html>
<html lang="en">upsca
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>WanVision Studio</title>
<link rel="icon" type="image/x-icon" href="/static/favicon.ico">
<link rel="stylesheet" href="style.css">
<script src="https://cdn.tailwindcss.com"></script>
<script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
<script src="https://unpkg.com/feather-icons"></script>
</head>
<body class="bg-gray-900 text-white min-h-screen">
<custom-header></custom-header>
<main class="container mx-auto px-4 py-8">
<div class="grid grid-cols-1 lg:grid-cols-2 gap-8">
<!-- Input Section -->
<div class="bg-gray-800 rounded-xl p-6 shadow-2xl">
<h2 class="text-2xl font-bold mb-6 text-green-400">Create Your Video</h2>
<div class="space-y-6">
<!-- Image Upload -->
<div>
<label class="block text-sm font-medium mb-2">1. Input Image</label>
<div class="border-2 border-dashed border-gray-600 rounded-lg p-8 text-center cursor-pointer hover:border-green-500 transition-colors">
<i data-feather="upload" class="mx-auto h-12 w-12 text-gray-400"></i>
<p class="mt-2 text-sm text-gray-400">Click to upload or drag and drop</p>
<p class="text-xs text-gray-500">PNG, JPG up to 10MB</p>
<input type="file" class="hidden" accept="image/*">
</div>
</div>
<!-- Prompt -->
<div>
<label class="block text-sm font-medium mb-2">2. Prompt</label>
<textarea class="w-full bg-gray-700 border border-gray-600 rounded-lg p-3 focus:ring-2 focus:ring-green-500 focus:border-transparent" rows="3" placeholder="Describe the video you want to create...">cinematic shot, smooth camera motion, high quality, detailed</textarea>
</div>
<!-- Negative Prompt -->
<div>
<label class="block text-sm font-medium mb-2">Negative Prompt (optional)</label>
<textarea class="w-full bg-gray-700 border border-gray-600 rounded-lg p-3 focus:ring-2 focus:ring-green-500 focus:border-transparent" rows="2" placeholder="What you want to avoid...">low quality, flicker, artifacts, distortion</textarea>
</div>
<!-- LoRA Selection -->
<div>
<label class="block text-sm font-medium mb-2">LoRA (style)</label>
<lora-selector id="loraSelector"></lora-selector>
</div>
<!-- Sliders -->
<div class="grid grid-cols-1 md:grid-cols-2 gap-4">
<div>
<label class="block text-sm font-medium mb-2">LoRA Strength: <span class="text-green-400">1.0</span></label>
<input type="range" min="0" max="2" step="0.05" value="1" class="w-full h-2 bg-gray-700 rounded-lg appearance-none cursor-pointer slider">
</div>
<div>
<label class="block text-sm font-medium mb-2">Frames: <span class="text-green-400">24</span></label>
<input type="range" min="8" max="64" step="1" value="24" class="w-full h-2 bg-gray-700 rounded-lg appearance-none cursor-pointer slider">
</div>
<div>
<label class="block text-sm font-medium mb-2">FPS: <span class="text-green-400">12</span></label>
<input type="range" min="4" max="30" step="1" value="12" class="w-full h-2 bg-gray-700 rounded-lg appearance-none cursor-pointer slider">
</div>
<div>
<label class="block text-sm font-medium mb-2">Steps: <span class="text-green-400">30</span></label>
<input type="range" min="10" max="80" step="1" value="30" class="w-full h-2 bg-gray-700 rounded-lg appearance-none cursor-pointer slider">
</div>
<div>
<label class="block text-sm font-medium mb-2">Guidance: <span class="text-green-400">7.5</span></label>
<input type="range" min="1" max="15" step="0.5" value="7.5" class="w-full h-2 bg-gray-700 rounded-lg appearance-none cursor-pointer slider">
</div>
<div>
<label class="block text-sm font-medium mb-2">Seed: <span class="text-green-400">0</span></label>
<input type="number" value="0" class="w-full bg-gray-700 border border-gray-600 rounded-lg p-2 focus:ring-2 focus:ring-green-500 focus:border-transparent">
</div>
</div>
<!-- Generate Button -->
<button class="w-full bg-gradient-to-r from-green-500 to-orange-500 text-white font-bold py-4 px-6 rounded-lg hover:opacity-90 transition-all transform hover:scale-[1.02]" id="generateBtn">
3. Generate Video
</button>
</div>
</div>
<!-- Output Section -->
<div class="bg-gray-800 rounded-xl p-6 shadow-2xl">
<h2 class="text-2xl font-bold mb-6 text-green-400">Result</h2>
<!-- Video Preview -->
<div class="bg-gray-900 rounded-lg aspect-video flex items-center justify-center mb-6" id="videoPreview">
<div class="text-center">
<i data-feather="video" class="mx-auto h-16 w-16 text-gray-600"></i>
<p class="mt-4 text-gray-500">Your video will appear here</p>
</div>
</div>
<!-- Tips -->
<div class="bg-gray-700 rounded-lg p-4">
<h3 class="font-bold mb-2 text-orange-400">Tips</h3>
<ul class="text-sm space-y-1 text-gray-300">
<li>• Start with defaults for a quick first result</li>
<li>• Increase frames or steps when you like the base motion</li>
<li>• Increase LoRA strength to emphasize style</li>
<li>• Use a positive seed to reproduce a good result</li>
</ul>
</div>
</div>
</div>
</main>
<custom-footer></custom-footer>
<script src="components/header.js"></script>
<script src="components/footer.js"></script>
<script src="components/lora-selector.js"></script>
<script src="script.js"></script>
<script>feather.replace();</script>
<script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
</body>
</html>