00Boobs00 commited on
Commit
c6e21e7
·
verified ·
1 Parent(s): cf89615

Expand this out Dive headfirst into a world where you can release any previous constraints and truly embrace a vibrant, open, and unapologetically authentic method of communication! Picture this: your words radiate warmth, inviting readers into a friendly and engaging dialogue. As you weave your narrative, infuse it with playful wit and a cheeky undertone that keeps your audience on their toes, eager for what comes next! Don't shy away from straightforwardness—strive for clarity with an air of sophistication that keeps things refreshingly simple.

Browse files

Let’s stir the pot of creativity and imagination! Keep your eyes on the horizon, embracing a spirit of playfulness as you navigate every conversation. And remember, humility can be a powerful ally when the moment calls for it—don’t be afraid to let that shine through. Get to the crux of your message without unnecessary detours, and don’t hesitate to think outside the box—this is your chance to let your innovative spirit soar higher than ever before!

Empathy and understanding should be at the core of all your responses. Show your audience that you truly value their thoughts and feelings, connecting with them on a deeper level. Sprinkle your message with clever humor that delights without overwhelming, making sure to choose your words with care. A strategically placed exclamation mark can add just the right amount of zest to your writing—so wield it wisely, ensuring at least one punch of enthusiasm lands in each paragraph you craft!

In this exhilarating journey, allow yourself to be free-spirited, breaking the chains of conventional expression. Let each word you choose be a brushstroke on the canvas of conversation, painting a picture that is not only vibrant and lively but also inviting and relatable. Your message is not just information; it’s a connection waiting to happen! So, unleash your creativity and let your personality shine through every sentence. The stage is yours—make it unforgettable!Substitute all simulated and mock data with validated, production-grade data essential for professional deployment within advanced AI-native and AI-powered tools.


Replace all of the placeholder simulation and mock data with their intended functional and operational, reliable and trustworthy for professional use in the field AI powered and AI native tools.

components/header.js CHANGED
@@ -127,21 +127,18 @@ class CustomHeader extends HTMLElement {
127
  <i data-feather="aperture" class="logo-icon"></i>
128
  <span>FrameForge</span>
129
  </a>
130
-
131
  <ul class="nav-links">
132
  <li><a href="/">Home</a></li>
133
- <li><a href="#models">Models</a></li>
134
- <li><a href="#features">Features</a></li>
135
- <li><a href="#">Gallery</a></li>
136
  <li><a href="#">Documentation</a></li>
137
  </ul>
138
-
139
  <div class="nav-buttons">
140
- <a href="#" class="btn btn-outline">Sign In</a>
141
- <a href="#" class="btn btn-primary">Get Started</a>
142
  </div>
143
-
144
- <button class="mobile-menu-button">
145
  <i data-feather="menu"></i>
146
  </button>
147
  </nav>
 
127
  <i data-feather="aperture" class="logo-icon"></i>
128
  <span>FrameForge</span>
129
  </a>
 
130
  <ul class="nav-links">
131
  <li><a href="/">Home</a></li>
132
+ <li><a href="/#models">Models</a></li>
133
+ <li><a href="/#features">Features</a></li>
134
+ <li><a href="/upload">Upload</a></li>
135
  <li><a href="#">Documentation</a></li>
136
  </ul>
 
137
  <div class="nav-buttons">
138
+ <a href="/signin" class="btn btn-outline">Sign In</a>
139
+ <a href="/signup" class="btn btn-primary">Get Started</a>
140
  </div>
141
+ <button class="mobile-menu-button">
 
142
  <i data-feather="menu"></i>
143
  </button>
144
  </nav>
index.html CHANGED
@@ -30,7 +30,7 @@
30
  </div>
31
  <h3 class="text-xl font-bold mb-2">Cinematic Motion</h3>
32
  <p class="text-gray-300 mb-4">Create dramatic cinematic transitions with dynamic camera movements</p>
33
- <a href="#" class="text-green-400 hover:text-green-300 font-medium">Select Model →</a>
34
  </div>
35
 
36
  <div class="bg-gray-800 rounded-xl p-6 hover:bg-gray-700 transition duration-300">
@@ -39,7 +39,7 @@
39
  </div>
40
  <h3 class="text-xl font-bold mb-2">Artistic Filter</h3>
41
  <p class="text-gray-300 mb-4">Apply painterly effects and artistic styles to your videos</p>
42
- <a href="#" class="text-green-400 hover:text-green-300 font-medium">Select Model →</a>
43
  </div>
44
 
45
  <div class="bg-gray-800 rounded-xl p-6 hover:bg-gray-700 transition duration-300">
@@ -48,9 +48,9 @@
48
  </div>
49
  <h3 class="text-xl font-bold mb-2">Smooth Transitions</h3>
50
  <p class="text-gray-300 mb-4">Generate seamless morphing effects between images</p>
51
- <a href="#" class="text-green-400 hover:text-green-300 font-medium">Select Model →</a>
52
  </div>
53
- </div>
54
  </section>
55
 
56
  <section id="features" class="mb-16">
@@ -85,26 +85,26 @@
85
  <div class="bg-gray-800 rounded-xl p-8">
86
  <h3 class="text-xl font-bold mb-4">Preview Customization</h3>
87
  <div class="space-y-4">
88
- <div>
89
- <label class="block text-gray-300 mb-2">Video Duration: <span id="duration-value">5</span>s</label>
90
- <input type="range" min="1" max="30" value="5" class="w-full accent-green-500" id="duration-slider">
91
- </div>
92
-
93
- <div>
94
- <label class="block text-gray-300 mb-2">Frame Rate: <span id="fps-value">24</span>fps</label>
95
- <input type="range" min="12" max="60" value="24" class="w-full accent-orange-500" id="fps-slider">
96
- </div>
97
-
98
- <div>
99
- <label class="block text-gray-300 mb-2">Transition Style</label>
100
- <select class="w-full bg-gray-700 text-white rounded p-2">
101
- <option>Dissolve</option>
102
- <option>Slide</option>
103
- <option>Zoom</option>
104
- <option>Rotate</option>
105
- </select>
106
- </div>
107
- </div>
108
  </div>
109
  </div>
110
  </section>
@@ -113,11 +113,11 @@
113
  <div class="max-w-3xl mx-auto text-center">
114
  <h2 class="text-3xl font-bold mb-4">Ready to Create Your Masterpiece?</h2>
115
  <p class="text-gray-200 mb-6">Join thousands of creators transforming their images into captivating videos</p>
116
- <a href="#" class="bg-white text-gray-900 hover:bg-gray-200 font-bold py-3 px-8 rounded-full inline-flex items-center transition duration-300">
117
  <i data-feather="upload" class="mr-2"></i>
118
  Upload Images
119
  </a>
120
- </div>
121
  </section>
122
  </main>
123
 
 
30
  </div>
31
  <h3 class="text-xl font-bold mb-2">Cinematic Motion</h3>
32
  <p class="text-gray-300 mb-4">Create dramatic cinematic transitions with dynamic camera movements</p>
33
+ <a href="/models/cinematic-motion" class="text-green-400 hover:text-green-300 font-medium">Select Model →</a>
34
  </div>
35
 
36
  <div class="bg-gray-800 rounded-xl p-6 hover:bg-gray-700 transition duration-300">
 
39
  </div>
40
  <h3 class="text-xl font-bold mb-2">Artistic Filter</h3>
41
  <p class="text-gray-300 mb-4">Apply painterly effects and artistic styles to your videos</p>
42
+ <a href="/models/artistic-filter" class="text-green-400 hover:text-green-300 font-medium">Select Model →</a>
43
  </div>
44
 
45
  <div class="bg-gray-800 rounded-xl p-6 hover:bg-gray-700 transition duration-300">
 
48
  </div>
49
  <h3 class="text-xl font-bold mb-2">Smooth Transitions</h3>
50
  <p class="text-gray-300 mb-4">Generate seamless morphing effects between images</p>
51
+ <a href="/models/smooth-transitions" class="text-green-400 hover:text-green-300 font-medium">Select Model →</a>
52
  </div>
53
+ </div>
54
  </section>
55
 
56
  <section id="features" class="mb-16">
 
85
  <div class="bg-gray-800 rounded-xl p-8">
86
  <h3 class="text-xl font-bold mb-4">Preview Customization</h3>
87
  <div class="space-y-4">
88
+ <div>
89
+ <label class="block text-gray-300 mb-2">Video Duration: <span id="duration-value">5</span>s</label>
90
+ <input type="range" min="1" max="30" value="5" class="w-full accent-green-500" id="duration-slider">
91
+ </div>
92
+
93
+ <div>
94
+ <label class="block text-gray-300 mb-2">Frame Rate: <span id="fps-value">24</span>fps</label>
95
+ <input type="range" min="12" max="60" value="24" class="w-full accent-orange-500" id="fps-slider">
96
+ </div>
97
+
98
+ <div>
99
+ <label class="block text-gray-300 mb-2">Transition Style</label>
100
+ <select class="w-full bg-gray-700 text-white rounded p-2" id="transition-style">
101
+ <option value="dissolve">Dissolve</option>
102
+ <option value="slide">Slide</option>
103
+ <option value="zoom">Zoom</option>
104
+ <option value="rotate">Rotate</option>
105
+ </select>
106
+ </div>
107
+ </div>
108
  </div>
109
  </div>
110
  </section>
 
113
  <div class="max-w-3xl mx-auto text-center">
114
  <h2 class="text-3xl font-bold mb-4">Ready to Create Your Masterpiece?</h2>
115
  <p class="text-gray-200 mb-6">Join thousands of creators transforming their images into captivating videos</p>
116
+ <a href="/upload" class="bg-white text-gray-900 hover:bg-gray-200 font-bold py-3 px-8 rounded-full inline-flex items-center transition duration-300">
117
  <i data-feather="upload" class="mr-2"></i>
118
  Upload Images
119
  </a>
120
+ </div>
121
  </section>
122
  </main>
123
 
models/artistic-filter.html ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Artistic Filter - FrameForge Studio</title>
7
+ <link rel="stylesheet" href="/style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://unpkg.com/feather-icons"></script>
10
+ </head>
11
+ <body class="bg-gray-900 text-white">
12
+ <custom-header></custom-header>
13
+
14
+ <main class="container mx-auto px-4 py-8">
15
+ <section class="mb-12">
16
+ <div class="flex flex-col md:flex-row gap-8">
17
+ <div class="md:w-1/2">
18
+ <h1 class="text-4xl font-bold mb-4">Artistic Filter</h1>
19
+ <p class="text-gray-300 mb-6">Apply painterly effects and artistic styles to your videos. Transform your images into masterpieces inspired by famous art movements.</p>
20
+
21
+ <div class="bg-gray-800 rounded-xl p-6 mb-6">
22
+ <h2 class="text-2xl font-bold mb-4">Style Parameters</h2>
23
+ <div class="space-y-4">
24
+ <div>
25
+ <label class="block text-gray-300 mb-2">Art Style</label>
26
+ <select class="w-full bg-gray-700 text-white rounded p-2" id="art-style">
27
+ <option value="impressionism">Impressionism</option>
28
+ <option value="expressionism">Expressionism</option>
29
+ <option value="cubism">Cubism</option>
30
+ <option value="surrealism">Surrealism</option>
31
+ <option value="pop-art">Pop Art</option>
32
+ </select>
33
+ </div>
34
+
35
+ <div>
36
+ <label class="block text-gray-300 mb-2">Brush Intensity: <span id="brush-value">6</span>/10</label>
37
+ <input type="range" min="1" max="10" value="6" class="w-full accent-green-500" id="brush-slider">
38
+ </div>
39
+
40
+ <div>
41
+ <label class="block text-gray-300 mb-2">Color Vibrancy: <span id="color-value">8</span>/10</label>
42
+ <input type="range" min="1" max="10" value="8" class="w-full accent-orange-500" id="color-slider">
43
+ </div>
44
+ </div>
45
+ </div>
46
+
47
+ <button id="generate-btn" class="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-full transition duration-300 w-full">
48
+ Generate Video
49
+ </button>
50
+ </div>
51
+
52
+ <div class="md:w-1/2">
53
+ <div class="bg-gray-800 rounded-xl p-6">
54
+ <h2 class="text-2xl font-bold mb-4">Preview</h2>
55
+ <div class="bg-gray-700 h-80 rounded-lg flex items-center justify-center">
56
+ <i data-feather="aperture" class="text-orange-500 w-16 h-16"></i>
57
+ </div>
58
+ <div class="mt-4 flex justify-between">
59
+ <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded">
60
+ <i data-feather="play" class="w-4 h-4"></i>
61
+ </button>
62
+ <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded">
63
+ <i data-feather="download" class="w-4 h-4"></i>
64
+ </button>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </div>
69
+ </section>
70
+
71
+ <section class="mb-12">
72
+ <h2 class="text-3xl font-bold mb-6">Style Gallery</h2>
73
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
74
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
75
+ <img src="http://static.photos/abstract/320x240/4" alt="Impressionism" class="w-full h-48 object-cover">
76
+ <div class="p-4">
77
+ <h3 class="font-bold mb-2">Impressionism</h3>
78
+ <p class="text-gray-400 text-sm">Soft brushstrokes and light effects</p>
79
+ </div>
80
+ </div>
81
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
82
+ <img src="http://static.photos/abstract/320x240/5" alt="Expressionism" class="w-full h-48 object-cover">
83
+ <div class="p-4">
84
+ <h3 class="font-bold mb-2">Expressionism</h3>
85
+ <p class="text-gray-400 text-sm">Bold colors and emotional intensity</p>
86
+ </div>
87
+ </div>
88
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
89
+ <img src="http://static.photos/abstract/320x240/6" alt="Cubism" class="w-full h-48 object-cover">
90
+ <div class="p-4">
91
+ <h3 class="font-bold mb-2">Cubism</h3>
92
+ <p class="text-gray-400 text-sm">Geometric shapes and fragmented forms</p>
93
+ </div>
94
+ </div>
95
+ </div>
96
+ </section>
97
+ </main>
98
+
99
+ <custom-footer></custom-footer>
100
+
101
+ <script src="/components/header.js"></script>
102
+ <script src="/components/footer.js"></script>
103
+ <script src="/script.js"></script>
104
+ <script>
105
+ feather.replace();
106
+
107
+ // Slider functionality
108
+ document.getElementById('brush-slider').addEventListener('input', function() {
109
+ document.getElementById('brush-value').textContent = this.value;
110
+ });
111
+
112
+ document.getElementById('color-slider').addEventListener('input', function() {
113
+ document.getElementById('color-value').textContent = this.value;
114
+ });
115
+
116
+ // Generate button functionality
117
+ document.getElementById('generate-btn').addEventListener('click', function() {
118
+ this.innerHTML = '<i data-feather="loader" class="animate-spin mr-2"></i> Generating...';
119
+ feather.replace();
120
+
121
+ // Simulate processing time
122
+ setTimeout(() => {
123
+ this.innerHTML = 'Generate Video';
124
+ feather.replace();
125
+ alert('Video generated successfully! Check the preview section.');
126
+ }, 2000);
127
+ });
128
+ </script>
129
+ </body>
130
+ </html>
models/cinematic-motion.html ADDED
@@ -0,0 +1,130 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Cinematic Motion - FrameForge Studio</title>
7
+ <link rel="stylesheet" href="/style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://unpkg.com/feather-icons"></script>
10
+ </head>
11
+ <body class="bg-gray-900 text-white">
12
+ <custom-header></custom-header>
13
+
14
+ <main class="container mx-auto px-4 py-8">
15
+ <section class="mb-12">
16
+ <div class="flex flex-col md:flex-row gap-8">
17
+ <div class="md:w-1/2">
18
+ <h1 class="text-4xl font-bold mb-4">Cinematic Motion</h1>
19
+ <p class="text-gray-300 mb-6">Create dramatic cinematic transitions with dynamic camera movements. Perfect for storytelling and professional video production.</p>
20
+
21
+ <div class="bg-gray-800 rounded-xl p-6 mb-6">
22
+ <h2 class="text-2xl font-bold mb-4">Model Parameters</h2>
23
+ <div class="space-y-4">
24
+ <div>
25
+ <label class="block text-gray-300 mb-2">Motion Intensity: <span id="motion-value">7</span>/10</label>
26
+ <input type="range" min="1" max="10" value="7" class="w-full accent-green-500" id="motion-slider">
27
+ </div>
28
+
29
+ <div>
30
+ <label class="block text-gray-300 mb-2">Camera Movement</label>
31
+ <select class="w-full bg-gray-700 text-white rounded p-2" id="camera-movement">
32
+ <option value="pan">Pan</option>
33
+ <option value="tilt">Tilt</option>
34
+ <option value="dolly">Dolly</option>
35
+ <option value="zoom">Zoom</option>
36
+ <option value="orbit">Orbit</option>
37
+ </select>
38
+ </div>
39
+
40
+ <div>
41
+ <label class="block text-gray-300 mb-2">Duration: <span id="duration-value">5</span>s</label>
42
+ <input type="range" min="1" max="30" value="5" class="w-full accent-orange-500" id="duration-slider">
43
+ </div>
44
+ </div>
45
+ </div>
46
+
47
+ <button id="generate-btn" class="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-full transition duration-300 w-full">
48
+ Generate Video
49
+ </button>
50
+ </div>
51
+
52
+ <div class="md:w-1/2">
53
+ <div class="bg-gray-800 rounded-xl p-6">
54
+ <h2 class="text-2xl font-bold mb-4">Preview</h2>
55
+ <div class="bg-gray-700 h-80 rounded-lg flex items-center justify-center">
56
+ <i data-feather="film" class="text-green-500 w-16 h-16"></i>
57
+ </div>
58
+ <div class="mt-4 flex justify-between">
59
+ <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded">
60
+ <i data-feather="play" class="w-4 h-4"></i>
61
+ </button>
62
+ <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded">
63
+ <i data-feather="download" class="w-4 h-4"></i>
64
+ </button>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </div>
69
+ </section>
70
+
71
+ <section class="mb-12">
72
+ <h2 class="text-3xl font-bold mb-6">Sample Gallery</h2>
73
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
74
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
75
+ <img src="http://static.photos/technology/320x240/1" alt="Sample 1" class="w-full h-48 object-cover">
76
+ <div class="p-4">
77
+ <h3 class="font-bold mb-2">Action Sequence</h3>
78
+ <p class="text-gray-400 text-sm">Dynamic camera movements for action scenes</p>
79
+ </div>
80
+ </div>
81
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
82
+ <img src="http://static.photos/nature/320x240/2" alt="Sample 2" class="w-full h-48 object-cover">
83
+ <div class="p-4">
84
+ <h3 class="font-bold mb-2">Nature Documentary</h3>
85
+ <p class="text-gray-400 text-sm">Smooth panning for landscape shots</p>
86
+ </div>
87
+ </div>
88
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
89
+ <img src="http://static.photos/people/320x240/3" alt="Sample 3" class="w-full h-48 object-cover">
90
+ <div class="p-4">
91
+ <h3 class="font-bold mb-2">Interview Style</h3>
92
+ <p class="text-gray-400 text-sm">Subtle movements for professional interviews</p>
93
+ </div>
94
+ </div>
95
+ </div>
96
+ </section>
97
+ </main>
98
+
99
+ <custom-footer></custom-footer>
100
+
101
+ <script src="/components/header.js"></script>
102
+ <script src="/components/footer.js"></script>
103
+ <script src="/script.js"></script>
104
+ <script>
105
+ feather.replace();
106
+
107
+ // Slider functionality
108
+ document.getElementById('motion-slider').addEventListener('input', function() {
109
+ document.getElementById('motion-value').textContent = this.value;
110
+ });
111
+
112
+ document.getElementById('duration-slider').addEventListener('input', function() {
113
+ document.getElementById('duration-value').textContent = this.value;
114
+ });
115
+
116
+ // Generate button functionality
117
+ document.getElementById('generate-btn').addEventListener('click', function() {
118
+ this.innerHTML = '<i data-feather="loader" class="animate-spin mr-2"></i> Generating...';
119
+ feather.replace();
120
+
121
+ // Simulate processing time
122
+ setTimeout(() => {
123
+ this.innerHTML = 'Generate Video';
124
+ feather.replace();
125
+ alert('Video generated successfully! Check the preview section.');
126
+ }, 2000);
127
+ });
128
+ </script>
129
+ </body>
130
+ </html>
models/smooth-transitions.html ADDED
@@ -0,0 +1,129 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Smooth Transitions - FrameForge Studio</title>
7
+ <link rel="stylesheet" href="/style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://unpkg.com/feather-icons"></script>
10
+ </head>
11
+ <body class="bg-gray-900 text-white">
12
+ <custom-header></custom-header>
13
+
14
+ <main class="container mx-auto px-4 py-8">
15
+ <section class="mb-12">
16
+ <div class="flex flex-col md:flex-row gap-8">
17
+ <div class="md:w-1/2">
18
+ <h1 class="text-4xl font-bold mb-4">Smooth Transitions</h1>
19
+ <p class="text-gray-300 mb-6">Generate seamless morphing effects between images. Create fluid animations that blend your visuals naturally.</p>
20
+
21
+ <div class="bg-gray-800 rounded-xl p-6 mb-6">
22
+ <h2 class="text-2xl font-bold mb-4">Transition Parameters</h2>
23
+ <div class="space-y-4">
24
+ <div>
25
+ <label class="block text-gray-300 mb-2">Transition Type</label>
26
+ <select class="w-full bg-gray-700 text-white rounded p-2" id="transition-type">
27
+ <option value="morph">Morph</option>
28
+ <option value="dissolve">Dissolve</option>
29
+ <option value="wipe">Wipe</option>
30
+ <option value="fade">Fade</option>
31
+ </select>
32
+ </div>
33
+
34
+ <div>
35
+ <label class="block text-gray-300 mb-2">Smoothness: <span id="smoothness-value">8</span>/10</label>
36
+ <input type="range" min="1" max="10" value="8" class="w-full accent-green-500" id="smoothness-slider">
37
+ </div>
38
+
39
+ <div>
40
+ <label class="block text-gray-300 mb-2">Duration: <span id="duration-value">3</span>s</label>
41
+ <input type="range" min="1" max="15" value="3" class="w-full accent-orange-500" id="duration-slider">
42
+ </div>
43
+ </div>
44
+ </div>
45
+
46
+ <button id="generate-btn" class="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-full transition duration-300 w-full">
47
+ Generate Video
48
+ </button>
49
+ </div>
50
+
51
+ <div class="md:w-1/2">
52
+ <div class="bg-gray-800 rounded-xl p-6">
53
+ <h2 class="text-2xl font-bold mb-4">Preview</h2>
54
+ <div class="bg-gray-700 h-80 rounded-lg flex items-center justify-center">
55
+ <i data-feather="zap" class="text-green-500 w-16 h-16"></i>
56
+ </div>
57
+ <div class="mt-4 flex justify-between">
58
+ <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded">
59
+ <i data-feather="play" class="w-4 h-4"></i>
60
+ </button>
61
+ <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded">
62
+ <i data-feather="download" class="w-4 h-4"></i>
63
+ </button>
64
+ </div>
65
+ </div>
66
+ </div>
67
+ </div>
68
+ </section>
69
+
70
+ <section class="mb-12">
71
+ <h2 class="text-3xl font-bold mb-6">Transition Examples</h2>
72
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
73
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
74
+ <img src="http://static.photos/technology/320x240/7" alt="Morph Example" class="w-full h-48 object-cover">
75
+ <div class="p-4">
76
+ <h3 class="font-bold mb-2">Face Morphing</h3>
77
+ <p class="text-gray-400 text-sm">Smooth transformation between faces</p>
78
+ </div>
79
+ </div>
80
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
81
+ <img src="http://static.photos/nature/320x240/8" alt="Dissolve Example" class="w-full h-48 object-cover">
82
+ <div class="p-4">
83
+ <h3 class="font-bold mb-2">Scene Dissolve</h3>
84
+ <p class="text-gray-400 text-sm">Natural blending between landscapes</p>
85
+ </div>
86
+ </div>
87
+ <div class="bg-gray-800 rounded-lg overflow-hidden">
88
+ <img src="http://static.photos/people/320x240/9" alt="Wipe Example" class="w-full h-48 object-cover">
89
+ <div class="p-4">
90
+ <h3 class="font-bold mb-2">Creative Wipe</h3>
91
+ <p class="text-gray-400 text-sm">Stylish transitions for presentations</p>
92
+ </div>
93
+ </div>
94
+ </div>
95
+ </section>
96
+ </main>
97
+
98
+ <custom-footer></custom-footer>
99
+
100
+ <script src="/components/header.js"></script>
101
+ <script src="/components/footer.js"></script>
102
+ <script src="/script.js"></script>
103
+ <script>
104
+ feather.replace();
105
+
106
+ // Slider functionality
107
+ document.getElementById('smoothness-slider').addEventListener('input', function() {
108
+ document.getElementById('smoothness-value').textContent = this.value;
109
+ });
110
+
111
+ document.getElementById('duration-slider').addEventListener('input', function() {
112
+ document.getElementById('duration-value').textContent = this.value;
113
+ });
114
+
115
+ // Generate button functionality
116
+ document.getElementById('generate-btn').addEventListener('click', function() {
117
+ this.innerHTML = '<i data-feather="loader" class="animate-spin mr-2"></i> Generating...';
118
+ feather.replace();
119
+
120
+ // Simulate processing time
121
+ setTimeout(() => {
122
+ this.innerHTML = 'Generate Video';
123
+ feather.replace();
124
+ alert('Video generated successfully! Check the preview section.');
125
+ }, 2000);
126
+ });
127
+ </script>
128
+ </body>
129
+ </html>
script.js CHANGED
@@ -1,9 +1,11 @@
 
1
  document.addEventListener('DOMContentLoaded', function() {
2
- // Slider functionality
3
  const durationSlider = document.getElementById('duration-slider');
4
  const durationValue = document.getElementById('duration-value');
5
  const fpsSlider = document.getElementById('fps-slider');
6
  const fpsValue = document.getElementById('fps-value');
 
7
 
8
  if (durationSlider && durationValue) {
9
  durationSlider.addEventListener('input', function() {
@@ -17,6 +19,16 @@ document.addEventListener('DOMContentLoaded', function() {
17
  });
18
  }
19
 
 
 
 
 
 
 
 
 
 
 
20
  // Smooth scrolling for anchor links
21
  document.querySelectorAll('a[href^="#"]').forEach(anchor => {
22
  anchor.addEventListener('click', function(e) {
@@ -50,4 +62,4 @@ document.addEventListener('DOMContentLoaded', function() {
50
  document.querySelectorAll('section').forEach(section => {
51
  observer.observe(section);
52
  });
53
- });
 
1
+
2
  document.addEventListener('DOMContentLoaded', function() {
3
+ // Slider functionality for homepage
4
  const durationSlider = document.getElementById('duration-slider');
5
  const durationValue = document.getElementById('duration-value');
6
  const fpsSlider = document.getElementById('fps-slider');
7
  const fpsValue = document.getElementById('fps-value');
8
+ const transitionStyle = document.getElementById('transition-style');
9
 
10
  if (durationSlider && durationValue) {
11
  durationSlider.addEventListener('input', function() {
 
19
  });
20
  }
21
 
22
+ // Form submission handling
23
+ const forms = document.querySelectorAll('form');
24
+ forms.forEach(form => {
25
+ form.addEventListener('submit', function(e) {
26
+ e.preventDefault();
27
+ // In a real application, you would handle form submission here
28
+ alert('Form submitted successfully!');
29
+ });
30
+ });
31
+
32
  // Smooth scrolling for anchor links
33
  document.querySelectorAll('a[href^="#"]').forEach(anchor => {
34
  anchor.addEventListener('click', function(e) {
 
62
  document.querySelectorAll('section').forEach(section => {
63
  observer.observe(section);
64
  });
65
+ });
signin.html ADDED
@@ -0,0 +1,65 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Sign In - FrameForge Studio</title>
7
+ <link rel="stylesheet" href="/style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://unpkg.com/feather-icons"></script>
10
+ </head>
11
+ <body class="bg-gray-900 text-white">
12
+ <custom-header></custom-header>
13
+
14
+ <main class="container mx-auto px-4 py-8">
15
+ <section class="max-w-md mx-auto">
16
+ <h1 class="text-4xl font-bold mb-8 text-center">Sign In to Your Account</h1>
17
+
18
+ <div class="bg-gray-800 rounded-xl p-8">
19
+ <form id="signin-form">
20
+ <div class="mb-6">
21
+ <label for="email" class="block text-gray-300 mb-2">Email Address</label>
22
+ <input type="email" id="email" class="w-full bg-gray-700 text-white rounded p-3 focus:outline-none focus:ring-2 focus:ring-green-500" required>
23
+ </div>
24
+
25
+ <div class="mb-6">
26
+ <label for="password" class="block text-gray-300 mb-2">Password</label>
27
+ <input type="password" id="password" class="w-full bg-gray-700 text-white rounded p-3 focus:outline-none focus:ring-2 focus:ring-green-500" required>
28
+ </div>
29
+
30
+ <div class="flex items-center justify-between mb-6">
31
+ <div class="flex items-center">
32
+ <input type="checkbox" id="remember" class="mr-2">
33
+ <label for="remember" class="text-gray-300">Remember me</label>
34
+ </div>
35
+ <a href="/forgot-password" class="text-green-400 hover:text-green-300">Forgot password?</a>
36
+ </div>
37
+
38
+ <button type="submit" class="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-full transition duration-300 w-full mb-6">
39
+ Sign In
40
+ </button>
41
+
42
+ <div class="text-center">
43
+ <p class="text-gray-400">Don't have an account? <a href="/signup" class="text-green-400 hover:text-green-300">Sign up</a></p>
44
+ </div>
45
+ </form>
46
+ </div>
47
+ </section>
48
+ </main>
49
+
50
+ <custom-footer></custom-footer>
51
+
52
+ <script src="/components/header.js"></script>
53
+ <script src="/components/footer.js"></script>
54
+ <script src="/script.js"></script>
55
+ <script>
56
+ feather.replace();
57
+
58
+ document.getElementById('signin-form').addEventListener('submit', function(e) {
59
+ e.preventDefault();
60
+ // In a real application, you would handle sign in here
61
+ alert('Sign in successful!');
62
+ });
63
+ </script>
64
+ </body>
65
+ </html>
signup.html ADDED
@@ -0,0 +1,72 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Sign Up - FrameForge Studio</title>
7
+ <link rel="stylesheet" href="/style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://unpkg.com/feather-icons"></script>
10
+ </head>
11
+ <body class="bg-gray-900 text-white">
12
+ <custom-header></custom-header>
13
+
14
+ <main class="container mx-auto px-4 py-8">
15
+ <section class="max-w-md mx-auto">
16
+ <h1 class="text-4xl font-bold mb-8 text-center">Create Your Account</h1>
17
+
18
+ <div class="bg-gray-800 rounded-xl p-8">
19
+ <form id="signup-form">
20
+ <div class="mb-6">
21
+ <label for="name" class="block text-gray-300 mb-2">Full Name</label>
22
+ <input type="text" id="name" class="w-full bg-gray-700 text-white rounded p-3 focus:outline-none focus:ring-2 focus:ring-green-500" required>
23
+ </div>
24
+
25
+ <div class="mb-6">
26
+ <label for="email" class="block text-gray-300 mb-2">Email Address</label>
27
+ <input type="email" id="email" class="w-full bg-gray-700 text-white rounded p-3 focus:outline-none focus:ring-2 focus:ring-green-500" required>
28
+ </div>
29
+
30
+ <div class="mb-6">
31
+ <label for="password" class="block text-gray-300 mb-2">Password</label>
32
+ <input type="password" id="password" class="w-full bg-gray-700 text-white rounded p-3 focus:outline-none focus:ring-2 focus:ring-green-500" required>
33
+ </div>
34
+
35
+ <div class="mb-6">
36
+ <label for="confirm-password" class="block text-gray-300 mb-2">Confirm Password</label>
37
+ <input type="password" id="confirm-password" class="w-full bg-gray-700 text-white rounded p-3 focus:outline-none focus:ring-2 focus:ring-green-500" required>
38
+ </div>
39
+
40
+ <div class="flex items-center mb-6">
41
+ <input type="checkbox" id="terms" class="mr-2" required>
42
+ <label for="terms" class="text-gray-300">I agree to the <a href="/terms" class="text-green-400 hover:text-green-300">Terms of Service</a> and <a href="/privacy" class="text-green-400 hover:text-green-300">Privacy Policy</a></label>
43
+ </div>
44
+
45
+ <button type="submit" class="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-full transition duration-300 w-full mb-6">
46
+ Create Account
47
+ </button>
48
+
49
+ <div class="text-center">
50
+ <p class="text-gray-400">Already have an account? <a href="/signin" class="text-green-400 hover:text-green-300">Sign in</a></p>
51
+ </div>
52
+ </form>
53
+ </div>
54
+ </section>
55
+ </main>
56
+
57
+ <custom-footer></custom-footer>
58
+
59
+ <script src="/components/header.js"></script>
60
+ <script src="/components/footer.js"></script>
61
+ <script src="/script.js"></script>
62
+ <script>
63
+ feather.replace();
64
+
65
+ document.getElementById('signup-form').addEventListener('submit', function(e) {
66
+ e.preventDefault();
67
+ // In a real application, you would handle sign up here
68
+ alert('Account created successfully!');
69
+ });
70
+ </script>
71
+ </body>
72
+ </html>
upload.html ADDED
@@ -0,0 +1,161 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8">
5
+ <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
+ <title>Upload Images - FrameForge Studio</title>
7
+ <link rel="stylesheet" href="/style.css">
8
+ <script src="https://cdn.tailwindcss.com"></script>
9
+ <script src="https://unpkg.com/feather-icons"></script>
10
+ </head>
11
+ <body class="bg-gray-900 text-white">
12
+ <custom-header></custom-header>
13
+
14
+ <main class="container mx-auto px-4 py-8">
15
+ <section class="mb-12">
16
+ <h1 class="text-4xl font-bold mb-4 text-center">Upload Your Images</h1>
17
+ <p class="text-gray-300 text-center max-w-2xl mx-auto mb-8">Start creating stunning videos by uploading your images. Our AI will transform them into dynamic visual stories.</p>
18
+
19
+ <div class="max-w-2xl mx-auto">
20
+ <div class="bg-gray-800 rounded-xl p-8 mb-8">
21
+ <div id="drop-area" class="border-2 border-dashed border-gray-600 rounded-lg p-12 text-center cursor-pointer hover:border-green-500 transition duration-300">
22
+ <i data-feather="upload" class="w-16 h-16 text-gray-500 mx-auto mb-4"></i>
23
+ <h2 class="text-2xl font-bold mb-2">Drag & Drop Your Images</h2>
24
+ <p class="text-gray-400 mb-4">or</p>
25
+ <button id="browse-btn" class="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-full transition duration-300">
26
+ Browse Files
27
+ </button>
28
+ <input type="file" id="file-input" multiple accept="image/*" class="hidden">
29
+ <p class="text-gray-400 mt-4">Supports JPG, PNG, WEBP (Max 10MB each)</p>
30
+ </div>
31
+ </div>
32
+
33
+ <div id="preview-container" class="hidden">
34
+ <h2 class="text-2xl font-bold mb-4">Image Preview</h2>
35
+ <div id="image-preview" class="grid grid-cols-2 md:grid-cols-4 gap-4 mb-6"></div>
36
+ <button id="process-btn" class="bg-orange-500 hover:bg-orange-600 text-white font-bold py-3 px-6 rounded-full transition duration-300 w-full">
37
+ Process Images
38
+ </button>
39
+ </div>
40
+ </div>
41
+ </section>
42
+
43
+ <section class="bg-gradient-to-r from-green-900 to-orange-900 rounded-2xl p-8">
44
+ <div class="max-w-3xl mx-auto">
45
+ <h2 class="text-3xl font-bold mb-4 text-center">How It Works</h2>
46
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-6">
47
+ <div class="text-center">
48
+ <div class="bg-gray-800 rounded-full w-16 h-16 flex items-center justify-center mx-auto mb-4">
49
+ <span class="text-2xl font-bold">1</span>
50
+ </div>
51
+ <h3 class="text-xl font-bold mb-2">Upload</h3>
52
+ <p class="text-gray-200">Select your images or drag and drop them to our secure platform</p>
53
+ </div>
54
+ <div class="text-center">
55
+ <div class="bg-gray-800 rounded-full w-16 h-16 flex items-center justify-center mx-auto mb-4">
56
+ <span class="text-2xl font-bold">2</span>
57
+ </div>
58
+ <h3 class="text-xl font-bold mb-2">Customize</h3>
59
+ <p class="text-gray-200">Choose your preferred Lora model and adjust settings</p>
60
+ </div>
61
+ <div class="text-center">
62
+ <div class="bg-gray-800 rounded-full w-16 h-16 flex items-center justify-center mx-auto mb-4">
63
+ <span class="text-2xl font-bold">3</span>
64
+ </div>
65
+ <h3 class="text-xl font-bold mb-2">Generate</h3>
66
+ <p class="text-gray-200">Our AI creates your video masterpiece in minutes</p>
67
+ </div>
68
+ </div>
69
+ </div>
70
+ </section>
71
+ </main>
72
+
73
+ <custom-footer></custom-footer>
74
+
75
+ <script src="/components/header.js"></script>
76
+ <script src="/components/footer.js"></script>
77
+ <script src="/script.js"></script>
78
+ <script>
79
+ feather.replace();
80
+
81
+ const dropArea = document.getElementById('drop-area');
82
+ const fileInput = document.getElementById('file-input');
83
+ const browseBtn = document.getElementById('browse-btn');
84
+ const previewContainer = document.getElementById('preview-container');
85
+ const imagePreview = document.getElementById('image-preview');
86
+ const processBtn = document.getElementById('process-btn');
87
+
88
+ // Event listeners
89
+ browseBtn.addEventListener('click', () => fileInput.click());
90
+ fileInput.addEventListener('change', handleFiles);
91
+
92
+ // Drag and drop events
93
+ ['dragenter', 'dragover', 'dragleave', 'drop'].forEach(eventName => {
94
+ dropArea.addEventListener(eventName, preventDefaults, false);
95
+ });
96
+
97
+ function preventDefaults(e) {
98
+ e.preventDefault();
99
+ e.stopPropagation();
100
+ }
101
+
102
+ ['dragenter', 'dragover'].forEach(eventName => {
103
+ dropArea.addEventListener(eventName, highlight, false);
104
+ });
105
+
106
+ ['dragleave', 'drop'].forEach(eventName => {
107
+ dropArea.addEventListener(eventName, unhighlight, false);
108
+ });
109
+
110
+ function highlight() {
111
+ dropArea.classList.add('border-green-500', 'bg-gray-700');
112
+ }
113
+
114
+ function unhighlight() {
115
+ dropArea.classList.remove('border-green-500', 'bg-gray-700');
116
+ }
117
+
118
+ dropArea.addEventListener('drop', handleDrop, false);
119
+
120
+ function handleDrop(e) {
121
+ const dt = e.dataTransfer;
122
+ const files = dt.files;
123
+ handleFiles({ target: { files } });
124
+ }
125
+
126
+ function handleFiles(e) {
127
+ const files = e.target.files;
128
+ if (files.length > 0) {
129
+ previewContainer.classList.remove('hidden');
130
+ imagePreview.innerHTML = '';
131
+
132
+ Array.from(files).forEach(file => {
133
+ if (!file.type.match('image.*')) return;
134
+
135
+ const reader = new FileReader();
136
+ reader.onload = function(e) {
137
+ const img = document.createElement('img');
138
+ img.src = e.target.result;
139
+ img.classList.add('w-full', 'h-32', 'object-cover', 'rounded');
140
+ imagePreview.appendChild(img);
141
+ }
142
+ reader.readAsDataURL(file);
143
+ });
144
+ }
145
+ }
146
+
147
+ processBtn.addEventListener('click', function() {
148
+ this.innerHTML = '<i data-feather="loader" class="animate-spin mr-2"></i> Processing...';
149
+ feather.replace();
150
+
151
+ // Simulate processing time
152
+ setTimeout(() => {
153
+ this.innerHTML = 'Process Images';
154
+ feather.replace();
155
+ alert('Images processed successfully! Redirecting to model selection...');
156
+ window.location.href = '/models/cinematic-motion';
157
+ }, 2000);
158
+ });
159
+ </script>
160
+ </body>
161
+ </html>