smartestdaddy commited on
Commit
cb3840c
·
verified ·
1 Parent(s): c61df83

make me an automatic video generator AI that automatically generates one video per day with a description, but that doesn’t make AI videos it just gathers videos already made in the past and changes them a bit makes a few tweaks that are maximum 15 seconds long and minimum three seconds long in form of Instagram reels - Initial Deployment

Browse files
Files changed (2) hide show
  1. README.md +7 -5
  2. index.html +390 -19
README.md CHANGED
@@ -1,10 +1,12 @@
1
  ---
2
- title: Generator Web
3
- emoji: 🐢
4
- colorFrom: yellow
5
- colorTo: blue
6
  sdk: static
7
  pinned: false
 
 
8
  ---
9
 
10
- Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
 
1
  ---
2
+ title: generator-web
3
+ emoji: 🐳
4
+ colorFrom: red
5
+ colorTo: purple
6
  sdk: static
7
  pinned: false
8
+ tags:
9
+ - deepsite
10
  ---
11
 
12
+ Check out the configuration reference at https://huggingface.co/docs/hub/spaces-config-reference
index.html CHANGED
@@ -1,19 +1,390 @@
1
- <!doctype html>
2
- <html>
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width" />
6
- <title>My static Space</title>
7
- <link rel="stylesheet" href="style.css" />
8
- </head>
9
- <body>
10
- <div class="card">
11
- <h1>Welcome to your static Space!</h1>
12
- <p>You can modify this app directly by editing <i>index.html</i> in the Files and versions tab.</p>
13
- <p>
14
- Also don't forget to check the
15
- <a href="https://huggingface.co/docs/hub/spaces" target="_blank">Spaces documentation</a>.
16
- </p>
17
- </div>
18
- </body>
19
- </html>
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
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>ReelGen AI - Automatic Short Video Generator</title>
7
+ <script src="https://cdn.tailwindcss.com"></script>
8
+ <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css">
9
+ <style>
10
+ @keyframes pulse {
11
+ 0%, 100% { opacity: 1; }
12
+ 50% { opacity: 0.5; }
13
+ }
14
+ .animate-pulse-custom {
15
+ animation: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
16
+ }
17
+ .video-placeholder {
18
+ background: linear-gradient(45deg, #f3f4f6 25%, #e5e7eb 25%, #e5e7eb 50%, #f3f4f6 50%, #f3f4f6 75%, #e5e7eb 75%, #e5e7eb 100%);
19
+ background-size: 20px 20px;
20
+ }
21
+ .video-container {
22
+ aspect-ratio: 9/16;
23
+ }
24
+ </style>
25
+ </head>
26
+ <body class="bg-gray-50 text-gray-800">
27
+ <div class="min-h-screen flex flex-col">
28
+ <!-- Header -->
29
+ <header class="bg-white shadow-sm">
30
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-4 flex justify-between items-center">
31
+ <div class="flex items-center space-x-2">
32
+ <div class="w-10 h-10 rounded-full bg-gradient-to-r from-purple-500 to-pink-500 flex items-center justify-center text-white font-bold">RG</div>
33
+ <h1 class="text-xl font-bold">ReelGen AI</h1>
34
+ </div>
35
+ <div class="flex items-center space-x-4">
36
+ <button class="p-2 rounded-full hover:bg-gray-100">
37
+ <i class="fas fa-bell text-gray-600"></i>
38
+ </button>
39
+ <div class="w-8 h-8 rounded-full bg-gray-300"></div>
40
+ </div>
41
+ </div>
42
+ </header>
43
+
44
+ <!-- Main Content -->
45
+ <main class="flex-grow">
46
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8 py-8">
47
+ <!-- Dashboard Header -->
48
+ <div class="mb-8">
49
+ <h2 class="text-2xl font-bold mb-2">Daily Reel Generator</h2>
50
+ <p class="text-gray-600">Automatically creates 3-15 second Instagram Reels by remixing existing content</p>
51
+ </div>
52
+
53
+ <!-- Generator Controls -->
54
+ <div class="bg-white rounded-xl shadow-sm p-6 mb-8">
55
+ <div class="flex flex-col md:flex-row md:items-center md:justify-between gap-4">
56
+ <div>
57
+ <h3 class="font-medium text-lg mb-1">Auto-Generation Settings</h3>
58
+ <p class="text-sm text-gray-500">Configure how your daily Reels are created</p>
59
+ </div>
60
+ <div class="flex flex-col sm:flex-row gap-3">
61
+ <button class="px-4 py-2 bg-gradient-to-r from-purple-500 to-pink-500 text-white rounded-lg font-medium hover:opacity-90 transition flex items-center justify-center gap-2">
62
+ <i class="fas fa-cog"></i> Settings
63
+ </button>
64
+ <button class="px-4 py-2 bg-white border border-gray-300 rounded-lg font-medium hover:bg-gray-50 transition flex items-center justify-center gap-2">
65
+ <i class="fas fa-history"></i> Generation History
66
+ </button>
67
+ </div>
68
+ </div>
69
+
70
+ <div class="mt-6 grid grid-cols-1 md:grid-cols-3 gap-4">
71
+ <!-- Source Selection -->
72
+ <div class="border rounded-lg p-4">
73
+ <div class="flex items-center mb-3">
74
+ <div class="w-8 h-8 rounded-full bg-purple-100 flex items-center justify-center text-purple-600 mr-2">
75
+ <i class="fas fa-database"></i>
76
+ </div>
77
+ <h4 class="font-medium">Content Sources</h4>
78
+ </div>
79
+ <div class="space-y-2">
80
+ <div class="flex items-center">
81
+ <input type="checkbox" id="your-archive" class="mr-2" checked>
82
+ <label for="your-archive">Your past Reels</label>
83
+ </div>
84
+ <div class="flex items-center">
85
+ <input type="checkbox" id="saved-content" class="mr-2" checked>
86
+ <label for="saved-content">Saved content</label>
87
+ </div>
88
+ <div class="flex items-center">
89
+ <input type="checkbox" id="trending" class="mr-2">
90
+ <label for="trending">Trending templates</label>
91
+ </div>
92
+ </div>
93
+ </div>
94
+
95
+ <!-- Editing Style -->
96
+ <div class="border rounded-lg p-4">
97
+ <div class="flex items-center mb-3">
98
+ <div class="w-8 h-8 rounded-full bg-blue-100 flex items-center justify-center text-blue-600 mr-2">
99
+ <i class="fas fa-sliders-h"></i>
100
+ </div>
101
+ <h4 class="font-medium">Editing Style</h4>
102
+ </div>
103
+ <select class="w-full p-2 border rounded-md text-sm">
104
+ <option>Subtle remix (minor changes)</option>
105
+ <option>Creative remix (more transformations)</option>
106
+ <option>Trend-focused (add trending elements)</option>
107
+ </select>
108
+ <div class="mt-2 flex items-center text-sm text-gray-500">
109
+ <i class="fas fa-info-circle mr-1"></i>
110
+ <span>Applies filters, cuts, and effects</span>
111
+ </div>
112
+ </div>
113
+
114
+ <!-- Schedule -->
115
+ <div class="border rounded-lg p-4">
116
+ <div class="flex items-center mb-3">
117
+ <div class="w-8 h-8 rounded-full bg-green-100 flex items-center justify-center text-green-600 mr-2">
118
+ <i class="fas fa-clock"></i>
119
+ </div>
120
+ <h4 class="font-medium">Posting Schedule</h4>
121
+ </div>
122
+ <div class="flex items-center">
123
+ <select class="flex-grow p-2 border rounded-md text-sm mr-2">
124
+ <option>Every day</option>
125
+ <option>Weekdays only</option>
126
+ <option>3 times/week</option>
127
+ </select>
128
+ <select class="flex-grow p-2 border rounded-md text-sm">
129
+ <option>9:00 AM</option>
130
+ <option>12:00 PM</option>
131
+ <option>5:00 PM</option>
132
+ <option>8:00 PM</option>
133
+ </select>
134
+ </div>
135
+ <div class="mt-2 text-sm text-gray-500">
136
+ Next generation: Today, 9:00 AM
137
+ </div>
138
+ </div>
139
+ </div>
140
+
141
+ <div class="mt-6 pt-6 border-t flex justify-end">
142
+ <button class="px-6 py-2 bg-gradient-to-r from-purple-500 to-pink-500 text-white rounded-lg font-medium hover:opacity-90 transition flex items-center gap-2">
143
+ <i class="fas fa-magic"></i> Generate Preview Now
144
+ </button>
145
+ </div>
146
+ </div>
147
+
148
+ <!-- Today's Generated Reel -->
149
+ <div class="mb-8">
150
+ <div class="flex items-center justify-between mb-4">
151
+ <h3 class="text-lg font-medium">Today's Generated Reel</h3>
152
+ <div class="text-sm text-gray-500">
153
+ <i class="fas fa-circle text-green-500 mr-1 text-xs"></i> Ready to post
154
+ </div>
155
+ </div>
156
+
157
+ <div class="bg-white rounded-xl shadow-sm overflow-hidden">
158
+ <div class="grid grid-cols-1 md:grid-cols-3 gap-0">
159
+ <!-- Video Preview -->
160
+ <div class="md:col-span-2 p-4">
161
+ <div class="video-container bg-black rounded-lg overflow-hidden relative">
162
+ <div class="absolute inset-0 flex items-center justify-center">
163
+ <div class="video-placeholder w-full h-full flex items-center justify-center">
164
+ <div class="text-center">
165
+ <i class="fas fa-play text-white text-4xl mb-2"></i>
166
+ <p class="text-white font-medium">Generated Reel Preview</p>
167
+ </div>
168
+ </div>
169
+ </div>
170
+ <div class="absolute bottom-4 left-4 text-white">
171
+ <span class="bg-black bg-opacity-50 px-2 py-1 rounded text-xs">0:07</span>
172
+ </div>
173
+ </div>
174
+ </div>
175
+
176
+ <!-- Reel Details -->
177
+ <div class="p-4 border-l md:border-l-0 md:border-t border-gray-200">
178
+ <div class="mb-4">
179
+ <h4 class="font-medium mb-2">Generated Description</h4>
180
+ <div class="bg-gray-50 p-3 rounded-lg">
181
+ <p class="text-sm">"Throwback with a twist! 🔄 We took one of your old clips and gave it fresh energy. The sunset transition at the end is everything! 🌅 #Remix #ThrowbackThursday"</p>
182
+ </div>
183
+ <div class="mt-2 flex justify-end">
184
+ <button class="text-sm text-purple-600 hover:text-purple-800 flex items-center">
185
+ <i class="fas fa-redo mr-1"></i> Regenerate
186
+ </button>
187
+ </div>
188
+ </div>
189
+
190
+ <div class="mb-4">
191
+ <h4 class="font-medium mb-2">Original Source</h4>
192
+ <div class="flex items-center space-x-2 p-2 bg-gray-50 rounded-lg">
193
+ <div class="w-10 h-10 rounded bg-gray-300 flex items-center justify-center">
194
+ <i class="fas fa-video text-gray-500"></i>
195
+ </div>
196
+ <div class="text-sm">
197
+ <p class="font-medium">Beach sunset clip</p>
198
+ <p class="text-gray-500 text-xs">Posted 3 months ago</p>
199
+ </div>
200
+ </div>
201
+ </div>
202
+
203
+ <div class="mb-4">
204
+ <h4 class="font-medium mb-2">Applied Modifications</h4>
205
+ <div class="flex flex-wrap gap-2">
206
+ <span class="px-2 py-1 bg-blue-100 text-blue-800 text-xs rounded-full">Speed change</span>
207
+ <span class="px-2 py-1 bg-green-100 text-green-800 text-xs rounded-full">New transition</span>
208
+ <span class="px-2 py-1 bg-yellow-100 text-yellow-800 text-xs rounded-full">Text overlay</span>
209
+ <span class="px-2 py-1 bg-purple-100 text-purple-800 text-xs rounded-full">Filter applied</span>
210
+ </div>
211
+ </div>
212
+
213
+ <div class="flex flex-col sm:flex-row gap-2 mt-6">
214
+ <button class="flex-grow px-4 py-2 bg-white border border-gray-300 rounded-lg font-medium hover:bg-gray-50 transition flex items-center justify-center gap-2">
215
+ <i class="fas fa-edit"></i> Edit
216
+ </button>
217
+ <button class="flex-grow px-4 py-2 bg-gradient-to-r from-purple-500 to-pink-500 text-white rounded-lg font-medium hover:opacity-90 transition flex items-center justify-center gap-2">
218
+ <i class="fab fa-instagram"></i> Post to Instagram
219
+ </button>
220
+ </div>
221
+ </div>
222
+ </div>
223
+ </div>
224
+ </div>
225
+
226
+ <!-- Upcoming Schedule -->
227
+ <div class="mb-8">
228
+ <h3 class="text-lg font-medium mb-4">Upcoming Schedule</h3>
229
+ <div class="bg-white rounded-xl shadow-sm overflow-hidden">
230
+ <div class="overflow-x-auto">
231
+ <table class="min-w-full divide-y divide-gray-200">
232
+ <thead class="bg-gray-50">
233
+ <tr>
234
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Date</th>
235
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Status</th>
236
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Source Material</th>
237
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Duration</th>
238
+ <th scope="col" class="px-6 py-3 text-left text-xs font-medium text-gray-500 uppercase tracking-wider">Actions</th>
239
+ </tr>
240
+ </thead>
241
+ <tbody class="bg-white divide-y divide-gray-200">
242
+ <tr>
243
+ <td class="px-6 py-4 whitespace-nowrap">
244
+ <div class="text-sm font-medium text-gray-900">Tomorrow</div>
245
+ <div class="text-sm text-gray-500">9:00 AM</div>
246
+ </td>
247
+ <td class="px-6 py-4 whitespace-nowrap">
248
+ <span class="px-2 py-1 text-xs font-semibold rounded-full bg-blue-100 text-blue-800">Pending</span>
249
+ </td>
250
+ <td class="px-6 py-4 whitespace-nowrap">
251
+ <div class="text-sm text-gray-900">Your cooking video (2/15/23)</div>
252
+ </td>
253
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
254
+ <div class="flex items-center">
255
+ <div class="h-2 w-16 bg-gray-200 rounded-full mr-2">
256
+ <div class="h-2 bg-purple-500 rounded-full" style="width: 60%"></div>
257
+ </div>
258
+ <span>~9s</span>
259
+ </div>
260
+ </td>
261
+ <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
262
+ <button class="text-purple-600 hover:text-purple-900 mr-3">Preview</button>
263
+ <button class="text-gray-600 hover:text-gray-900">Skip</button>
264
+ </td>
265
+ </tr>
266
+ <tr>
267
+ <td class="px-6 py-4 whitespace-nowrap">
268
+ <div class="text-sm font-medium text-gray-900">Mar 15, 2023</div>
269
+ <div class="text-sm text-gray-500">9:00 AM</div>
270
+ </td>
271
+ <td class="px-6 py-4 whitespace-nowrap">
272
+ <span class="px-2 py-1 text-xs font-semibold rounded-full bg-yellow-100 text-yellow-800">Processing</span>
273
+ </td>
274
+ <td class="px-6 py-4 whitespace-nowrap">
275
+ <div class="flex items-center">
276
+ <div class="animate-pulse-custom h-4 w-4 bg-yellow-400 rounded-full mr-2"></div>
277
+ <div class="text-sm text-gray-900">Selecting source...</div>
278
+ </div>
279
+ </td>
280
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
281
+ <div class="flex items-center">
282
+ <div class="h-2 w-16 bg-gray-200 rounded-full mr-2">
283
+ <div class="h-2 bg-gray-300 rounded-full animate-pulse-custom" style="width: 30%"></div>
284
+ </div>
285
+ <span>...</span>
286
+ </div>
287
+ </td>
288
+ <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
289
+ <button class="text-gray-400 cursor-not-allowed mr-3">Preview</button>
290
+ </td>
291
+ </tr>
292
+ <tr>
293
+ <td class="px-6 py-4 whitespace-nowrap">
294
+ <div class="text-sm font-medium text-gray-900">Mar 16, 2023</div>
295
+ <div class="text-sm text-gray-500">9:00 AM</div>
296
+ </td>
297
+ <td class="px-6 py-4 whitespace-nowrap">
298
+ <span class="px-2 py-1 text-xs font-semibold rounded-full bg-gray-100 text-gray-800">Scheduled</span>
299
+ </td>
300
+ <td class="px-6 py-4 whitespace-nowrap">
301
+ <div class="text-sm text-gray-500">Not selected yet</div>
302
+ </td>
303
+ <td class="px-6 py-4 whitespace-nowrap text-sm text-gray-500">
304
+ -
305
+ </td>
306
+ <td class="px-6 py-4 whitespace-nowrap text-sm font-medium">
307
+ <button class="text-gray-400 cursor-not-allowed mr-3">Preview</button>
308
+ </td>
309
+ </tr>
310
+ </tbody>
311
+ </table>
312
+ </div>
313
+ </div>
314
+ </div>
315
+ </div>
316
+ </main>
317
+
318
+ <!-- Footer -->
319
+ <footer class="bg-white border-t py-6">
320
+ <div class="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
321
+ <div class="flex flex-col md:flex-row justify-between items-center">
322
+ <div class="flex items-center space-x-2 mb-4 md:mb-0">
323
+ <div class="w-6 h-6 rounded-full bg-gradient-to-r from-purple-500 to-pink-500"></div>
324
+ <span class="font-medium">ReelGen AI</span>
325
+ </div>
326
+ <div class="flex space-x-6">
327
+ <a href="#" class="text-gray-500 hover:text-gray-700">Privacy</a>
328
+ <a href="#" class="text-gray-500 hover:text-gray-700">Terms</a>
329
+ <a href="#" class="text-gray-500 hover:text-gray-700">Help</a>
330
+ </div>
331
+ </div>
332
+ <div class="mt-4 text-center md:text-left text-sm text-gray-500">
333
+ © 2023 ReelGen AI. Automatically remixing your content for daily Reels.
334
+ </div>
335
+ </div>
336
+ </footer>
337
+ </div>
338
+
339
+ <script>
340
+ // Simple script to simulate generation process
341
+ document.addEventListener('DOMContentLoaded', function() {
342
+ // Simulate generating a new description
343
+ const regenerateDescBtn = document.querySelector('button:has(.fa-redo)');
344
+ if (regenerateDescBtn) {
345
+ regenerateDescBtn.addEventListener('click', function() {
346
+ const descriptions = [
347
+ '"New life to an old moment! ✨ We refreshed this clip with smooth transitions and a trendy filter. Which part is your favorite? #ReelRemix"',
348
+ '"You\'ve seen this before... but not like this! 🔄 Our AI gave your old video a fresh makeover. The timing on the beat drop is perfect! 🎶 #RemixMagic"',
349
+ '"Classic clip, new vibes! 🌟 We took your original and added some spice. That zoom effect at 0:05 though! #ReelRefresh"'
350
+ ];
351
+ const randomDesc = descriptions[Math.floor(Math.random() * descriptions.length)];
352
+ document.querySelector('.bg-gray-50 p-3').textContent = randomDesc;
353
+ });
354
+ }
355
+
356
+ // Simulate generating a preview
357
+ const generatePreviewBtn = document.querySelector('button:has(.fa-magic)');
358
+ if (generatePreviewBtn) {
359
+ generatePreviewBtn.addEventListener('click', function() {
360
+ // Show loading state
361
+ generatePreviewBtn.innerHTML = '<i class="fas fa-spinner fa-spin"></i> Generating...';
362
+ generatePreviewBtn.disabled = true;
363
+
364
+ // Simulate API call delay
365
+ setTimeout(() => {
366
+ // Update UI with "new" generated content
367
+ document.querySelector('.video-placeholder').innerHTML = `
368
+ <div class="text-center">
369
+ <i class="fas fa-check-circle text-green-500 text-4xl mb-2"></i>
370
+ <p class="text-white font-medium">New Reel Generated!</p>
371
+ <p class="text-white text-xs mt-1">Duration: 0:06</p>
372
+ </div>
373
+ `;
374
+
375
+ // Update status
376
+ document.querySelector('.text-green-500').nextSibling.textContent = ' Ready to post (new)';
377
+
378
+ // Reset button
379
+ generatePreviewBtn.innerHTML = '<i class="fas fa-magic"></i> Generate Preview Now';
380
+ generatePreviewBtn.disabled = false;
381
+
382
+ // Show notification
383
+ alert('New Reel generated successfully! Check the preview.');
384
+ }, 2000);
385
+ });
386
+ }
387
+ });
388
+ </script>
389
+ <p style="border-radius: 8px; text-align: center; font-size: 12px; color: #fff; margin-top: 16px;position: fixed; left: 8px; bottom: 8px; z-index: 10; background: rgba(0, 0, 0, 0.8); padding: 4px 8px;">Made with <img src="https://enzostvs-deepsite.hf.space/logo.svg" alt="DeepSite Logo" style="width: 16px; height: 16px; vertical-align: middle;display:inline-block;margin-right:3px;filter:brightness(0) invert(1);"><a href="https://enzostvs-deepsite.hf.space" style="color: #fff;text-decoration: underline;" target="_blank" >DeepSite</a> - 🧬 <a href="https://enzostvs-deepsite.hf.space?remix=smartestdaddy/generator-web" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
390
+ </html>