Spaces:
Running
Running
Add 3 files
Browse files- README.md +6 -4
- index.html +800 -19
- prompts.txt +3 -0
README.md
CHANGED
|
@@ -1,10 +1,12 @@
|
|
| 1 |
---
|
| 2 |
-
title:
|
| 3 |
-
emoji:
|
| 4 |
colorFrom: purple
|
| 5 |
-
colorTo:
|
| 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: random-classics
|
| 3 |
+
emoji: 🐳
|
| 4 |
colorFrom: purple
|
| 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,800 @@
|
|
| 1 |
-
<!
|
| 2 |
-
<html>
|
| 3 |
-
|
| 4 |
-
|
| 5 |
-
|
| 6 |
-
|
| 7 |
-
|
| 8 |
-
|
| 9 |
-
|
| 10 |
-
|
| 11 |
-
|
| 12 |
-
|
| 13 |
-
|
| 14 |
-
|
| 15 |
-
|
| 16 |
-
|
| 17 |
-
|
| 18 |
-
|
| 19 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 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>Epic Vintage Cinema - Classic Films from the Golden Age</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 |
+
@import url('https://fonts.googleapis.com/css2?family=Cinzel:wght@400;700&family=Montserrat:wght@300;400;600&display=swap');
|
| 11 |
+
|
| 12 |
+
:root {
|
| 13 |
+
--gold: #FFD700;
|
| 14 |
+
--dark: #0a0a12;
|
| 15 |
+
--maroon: #800020;
|
| 16 |
+
}
|
| 17 |
+
|
| 18 |
+
body {
|
| 19 |
+
font-family: 'Montserrat', sans-serif;
|
| 20 |
+
background-color: var(--dark);
|
| 21 |
+
color: #f8f8f8;
|
| 22 |
+
overflow-x: hidden;
|
| 23 |
+
}
|
| 24 |
+
|
| 25 |
+
.hero {
|
| 26 |
+
height: 100vh;
|
| 27 |
+
background: linear-gradient(rgba(10, 10, 18, 0.7), rgba(10, 10, 18, 0.9)),
|
| 28 |
+
url('https://images.unsplash.com/photo-1517604931442-7e0c8ed2963c?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=2070&q=80') no-repeat center center/cover;
|
| 29 |
+
position: relative;
|
| 30 |
+
overflow: hidden;
|
| 31 |
+
}
|
| 32 |
+
|
| 33 |
+
.film-grain {
|
| 34 |
+
position: absolute;
|
| 35 |
+
top: 0;
|
| 36 |
+
left: 0;
|
| 37 |
+
width: 100%;
|
| 38 |
+
height: 100%;
|
| 39 |
+
background: url('https://grainy-gradients.vercel.app/noise.svg');
|
| 40 |
+
opacity: 0.08;
|
| 41 |
+
pointer-events: none;
|
| 42 |
+
}
|
| 43 |
+
|
| 44 |
+
.title {
|
| 45 |
+
font-family: 'Cinzel', serif;
|
| 46 |
+
text-shadow: 0 0 10px rgba(255, 215, 0, 0.5);
|
| 47 |
+
letter-spacing: 2px;
|
| 48 |
+
}
|
| 49 |
+
|
| 50 |
+
.sparkle {
|
| 51 |
+
position: absolute;
|
| 52 |
+
width: 5px;
|
| 53 |
+
height: 5px;
|
| 54 |
+
background-color: white;
|
| 55 |
+
border-radius: 50%;
|
| 56 |
+
box-shadow: 0 0 10px 2px white;
|
| 57 |
+
animation: sparkle 2s infinite alternate;
|
| 58 |
+
}
|
| 59 |
+
|
| 60 |
+
@keyframes sparkle {
|
| 61 |
+
0% { opacity: 0.3; transform: scale(0.8); }
|
| 62 |
+
100% { opacity: 1; transform: scale(1.2); }
|
| 63 |
+
}
|
| 64 |
+
|
| 65 |
+
.theater-screen {
|
| 66 |
+
width: 90%;
|
| 67 |
+
max-width: 1200px;
|
| 68 |
+
height: 0;
|
| 69 |
+
padding-bottom: 45%;
|
| 70 |
+
background: #111;
|
| 71 |
+
position: relative;
|
| 72 |
+
margin: 0 auto;
|
| 73 |
+
border-radius: 8px 8px 0 0;
|
| 74 |
+
box-shadow: 0 0 60px rgba(0, 0, 0, 0.8);
|
| 75 |
+
border: 12px solid var(--maroon);
|
| 76 |
+
border-bottom: none;
|
| 77 |
+
}
|
| 78 |
+
|
| 79 |
+
.theater-screen:before {
|
| 80 |
+
content: '';
|
| 81 |
+
position: absolute;
|
| 82 |
+
top: -20px;
|
| 83 |
+
left: -20px;
|
| 84 |
+
right: -20px;
|
| 85 |
+
height: 40px;
|
| 86 |
+
background: linear-gradient(90deg,
|
| 87 |
+
var(--gold) 0%,
|
| 88 |
+
#111 10%,
|
| 89 |
+
#111 90%,
|
| 90 |
+
var(--gold) 100%);
|
| 91 |
+
z-index: -1;
|
| 92 |
+
}
|
| 93 |
+
|
| 94 |
+
.theater-screen:after {
|
| 95 |
+
content: '';
|
| 96 |
+
position: absolute;
|
| 97 |
+
bottom: -40px;
|
| 98 |
+
left: -20px;
|
| 99 |
+
right: -20px;
|
| 100 |
+
height: 40px;
|
| 101 |
+
background: linear-gradient(90deg,
|
| 102 |
+
var(--gold) 0%,
|
| 103 |
+
#111 10%,
|
| 104 |
+
#111 90%,
|
| 105 |
+
var(--gold) 100%);
|
| 106 |
+
z-index: -1;
|
| 107 |
+
}
|
| 108 |
+
|
| 109 |
+
.screen-content {
|
| 110 |
+
position: absolute;
|
| 111 |
+
top: 0;
|
| 112 |
+
left: 0;
|
| 113 |
+
width: 100%;
|
| 114 |
+
height: 100%;
|
| 115 |
+
background: #000;
|
| 116 |
+
display: flex;
|
| 117 |
+
align-items: center;
|
| 118 |
+
justify-content: center;
|
| 119 |
+
overflow: hidden;
|
| 120 |
+
}
|
| 121 |
+
|
| 122 |
+
.screen-curtains {
|
| 123 |
+
position: absolute;
|
| 124 |
+
top: 0;
|
| 125 |
+
left: 0;
|
| 126 |
+
width: 100%;
|
| 127 |
+
height: 100%;
|
| 128 |
+
background: linear-gradient(90deg,
|
| 129 |
+
rgba(139, 0, 0, 0.7) 0%,
|
| 130 |
+
rgba(139, 0, 0, 0.5) 50%,
|
| 131 |
+
rgba(139, 0, 0, 0.7) 100%);
|
| 132 |
+
z-index: 2;
|
| 133 |
+
display: flex;
|
| 134 |
+
justify-content: space-between;
|
| 135 |
+
}
|
| 136 |
+
|
| 137 |
+
.curtain {
|
| 138 |
+
width: 25%;
|
| 139 |
+
height: 100%;
|
| 140 |
+
background: var(--maroon);
|
| 141 |
+
position: relative;
|
| 142 |
+
transition: transform 1.5s ease-out;
|
| 143 |
+
}
|
| 144 |
+
|
| 145 |
+
.curtain-left {
|
| 146 |
+
transform-origin: right center;
|
| 147 |
+
}
|
| 148 |
+
|
| 149 |
+
.curtain-right {
|
| 150 |
+
transform-origin: left center;
|
| 151 |
+
}
|
| 152 |
+
|
| 153 |
+
.screen-open .curtain-left {
|
| 154 |
+
transform: perspective(800px) rotateY(-60deg);
|
| 155 |
+
}
|
| 156 |
+
|
| 157 |
+
.screen-open .curtain-right {
|
| 158 |
+
transform: perspective(800px) rotateY(60deg);
|
| 159 |
+
}
|
| 160 |
+
|
| 161 |
+
.film-strip {
|
| 162 |
+
position: absolute;
|
| 163 |
+
width: 100%;
|
| 164 |
+
height: 20px;
|
| 165 |
+
background: repeating-linear-gradient(
|
| 166 |
+
90deg,
|
| 167 |
+
#000,
|
| 168 |
+
#000 10px,
|
| 169 |
+
#fff 10px,
|
| 170 |
+
#fff 20px
|
| 171 |
+
);
|
| 172 |
+
opacity: 0.3;
|
| 173 |
+
}
|
| 174 |
+
|
| 175 |
+
.film-strip.top {
|
| 176 |
+
top: 0;
|
| 177 |
+
}
|
| 178 |
+
|
| 179 |
+
.film-strip.bottom {
|
| 180 |
+
bottom: 0;
|
| 181 |
+
}
|
| 182 |
+
|
| 183 |
+
.movie-card {
|
| 184 |
+
background: rgba(0, 0, 0, 0.7);
|
| 185 |
+
border: 1px solid var(--gold);
|
| 186 |
+
transition: all 0.3s ease;
|
| 187 |
+
cursor: pointer;
|
| 188 |
+
}
|
| 189 |
+
|
| 190 |
+
.movie-card:hover {
|
| 191 |
+
transform: translateY(-10px);
|
| 192 |
+
box-shadow: 0 20px 30px rgba(0, 0, 0, 0.5);
|
| 193 |
+
border-color: #fff;
|
| 194 |
+
}
|
| 195 |
+
|
| 196 |
+
.movie-card.active {
|
| 197 |
+
border: 3px solid var(--gold);
|
| 198 |
+
box-shadow: 0 0 30px var(--gold);
|
| 199 |
+
}
|
| 200 |
+
|
| 201 |
+
.floating-particles {
|
| 202 |
+
position: absolute;
|
| 203 |
+
width: 100%;
|
| 204 |
+
height: 100%;
|
| 205 |
+
top: 0;
|
| 206 |
+
left: 0;
|
| 207 |
+
pointer-events: none;
|
| 208 |
+
}
|
| 209 |
+
|
| 210 |
+
.particle {
|
| 211 |
+
position: absolute;
|
| 212 |
+
background: linear-gradient(to right, var(--gold), #fff);
|
| 213 |
+
border-radius: 50%;
|
| 214 |
+
opacity: 0.6;
|
| 215 |
+
animation: float-up 15s linear infinite;
|
| 216 |
+
}
|
| 217 |
+
|
| 218 |
+
@keyframes float-up {
|
| 219 |
+
0% {
|
| 220 |
+
transform: translateY(100vh) rotate(0deg);
|
| 221 |
+
opacity: 0;
|
| 222 |
+
}
|
| 223 |
+
10% {
|
| 224 |
+
opacity: 0.6;
|
| 225 |
+
}
|
| 226 |
+
90% {
|
| 227 |
+
opacity: 0.6;
|
| 228 |
+
}
|
| 229 |
+
100% {
|
| 230 |
+
transform: translateY(-100px) rotate(360deg);
|
| 231 |
+
opacity: 0;
|
| 232 |
+
}
|
| 233 |
+
}
|
| 234 |
+
|
| 235 |
+
.marquee {
|
| 236 |
+
width: 100%;
|
| 237 |
+
overflow: hidden;
|
| 238 |
+
white-space: nowrap;
|
| 239 |
+
box-sizing: border-box;
|
| 240 |
+
background: rgba(0, 0, 0, 0.5);
|
| 241 |
+
border-top: 2px solid var(--gold);
|
| 242 |
+
border-bottom: 2px solid var(--gold);
|
| 243 |
+
}
|
| 244 |
+
|
| 245 |
+
.marquee-content {
|
| 246 |
+
display: inline-block;
|
| 247 |
+
padding-left: 100%;
|
| 248 |
+
animation: marquee 20s linear infinite;
|
| 249 |
+
}
|
| 250 |
+
|
| 251 |
+
@keyframes marquee {
|
| 252 |
+
0% { transform: translateX(0); }
|
| 253 |
+
100% { transform: translateX(-100%); }
|
| 254 |
+
}
|
| 255 |
+
|
| 256 |
+
.projector-light {
|
| 257 |
+
position: absolute;
|
| 258 |
+
width: 100%;
|
| 259 |
+
height: 100%;
|
| 260 |
+
background: radial-gradient(
|
| 261 |
+
ellipse at center,
|
| 262 |
+
rgba(255, 215, 0, 0.2) 0%,
|
| 263 |
+
rgba(255, 215, 0, 0.1) 40%,
|
| 264 |
+
rgba(255, 215, 0, 0) 70%
|
| 265 |
+
);
|
| 266 |
+
pointer-events: none;
|
| 267 |
+
z-index: 1;
|
| 268 |
+
opacity: 0;
|
| 269 |
+
transition: opacity 0.5s ease;
|
| 270 |
+
}
|
| 271 |
+
|
| 272 |
+
.screen-open .projector-light {
|
| 273 |
+
opacity: 1;
|
| 274 |
+
}
|
| 275 |
+
|
| 276 |
+
.scroll-down {
|
| 277 |
+
position: absolute;
|
| 278 |
+
bottom: 30px;
|
| 279 |
+
left: 50%;
|
| 280 |
+
transform: translateX(-50%);
|
| 281 |
+
animation: bounce 2s infinite;
|
| 282 |
+
}
|
| 283 |
+
|
| 284 |
+
@keyframes bounce {
|
| 285 |
+
0%, 20%, 50%, 80%, 100% {
|
| 286 |
+
transform: translateY(0) translateX(-50%);
|
| 287 |
+
}
|
| 288 |
+
40% {
|
| 289 |
+
transform: translateY(-20px) translateX(-50%);
|
| 290 |
+
}
|
| 291 |
+
60% {
|
| 292 |
+
transform: translateY(-10px) translateX(-50%);
|
| 293 |
+
}
|
| 294 |
+
}
|
| 295 |
+
|
| 296 |
+
/* Theater seats styling */
|
| 297 |
+
.theater-seats {
|
| 298 |
+
perspective: 1000px;
|
| 299 |
+
margin-top: 50px;
|
| 300 |
+
}
|
| 301 |
+
|
| 302 |
+
.seat-row {
|
| 303 |
+
display: flex;
|
| 304 |
+
justify-content: center;
|
| 305 |
+
margin-bottom: 15px;
|
| 306 |
+
}
|
| 307 |
+
|
| 308 |
+
.seat {
|
| 309 |
+
width: 30px;
|
| 310 |
+
height: 30px;
|
| 311 |
+
margin: 0 5px;
|
| 312 |
+
background: #333;
|
| 313 |
+
border-radius: 5px 5px 0 0;
|
| 314 |
+
position: relative;
|
| 315 |
+
transition: all 0.3s ease;
|
| 316 |
+
}
|
| 317 |
+
|
| 318 |
+
.seat:before {
|
| 319 |
+
content: '';
|
| 320 |
+
position: absolute;
|
| 321 |
+
top: -5px;
|
| 322 |
+
left: 5px;
|
| 323 |
+
right: 5px;
|
| 324 |
+
height: 5px;
|
| 325 |
+
background: #555;
|
| 326 |
+
border-radius: 3px 3px 0 0;
|
| 327 |
+
}
|
| 328 |
+
|
| 329 |
+
.seat:hover {
|
| 330 |
+
background: #555;
|
| 331 |
+
transform: translateY(-5px);
|
| 332 |
+
}
|
| 333 |
+
|
| 334 |
+
.seat.selected {
|
| 335 |
+
background: var(--gold);
|
| 336 |
+
}
|
| 337 |
+
|
| 338 |
+
.aisle {
|
| 339 |
+
width: 40px;
|
| 340 |
+
}
|
| 341 |
+
|
| 342 |
+
/* Loading animation */
|
| 343 |
+
.film-reel {
|
| 344 |
+
width: 60px;
|
| 345 |
+
height: 60px;
|
| 346 |
+
border: 3px solid var(--gold);
|
| 347 |
+
border-radius: 50%;
|
| 348 |
+
position: relative;
|
| 349 |
+
animation: spin 2s linear infinite;
|
| 350 |
+
}
|
| 351 |
+
|
| 352 |
+
.film-reel:before {
|
| 353 |
+
content: '';
|
| 354 |
+
position: absolute;
|
| 355 |
+
top: 5px;
|
| 356 |
+
left: 5px;
|
| 357 |
+
right: 5px;
|
| 358 |
+
bottom: 5px;
|
| 359 |
+
border: 3px solid var(--gold);
|
| 360 |
+
border-radius: 50%;
|
| 361 |
+
}
|
| 362 |
+
|
| 363 |
+
.film-reel:after {
|
| 364 |
+
content: '';
|
| 365 |
+
position: absolute;
|
| 366 |
+
top: 15px;
|
| 367 |
+
left: 15px;
|
| 368 |
+
right: 15px;
|
| 369 |
+
bottom: 15px;
|
| 370 |
+
border: 3px solid var(--gold);
|
| 371 |
+
border-radius: 50%;
|
| 372 |
+
}
|
| 373 |
+
|
| 374 |
+
@keyframes spin {
|
| 375 |
+
0% { transform: rotate(0deg); }
|
| 376 |
+
100% { transform: rotate(360deg); }
|
| 377 |
+
}
|
| 378 |
+
</style>
|
| 379 |
+
</head>
|
| 380 |
+
<body>
|
| 381 |
+
<!-- Hero Section -->
|
| 382 |
+
<section class="hero flex items-center justify-center text-center relative">
|
| 383 |
+
<div class="film-grain"></div>
|
| 384 |
+
<div class="floating-particles" id="particles"></div>
|
| 385 |
+
|
| 386 |
+
<div class="z-10 px-6">
|
| 387 |
+
<h1 class="title text-6xl md:text-8xl font-bold mb-6">
|
| 388 |
+
<span class="text-transparent bg-clip-text bg-gradient-to-r from-amber-200 to-white">Epic Vintage</span>
|
| 389 |
+
<span class="block text-5xl md:text-7xl mt-4">Cinema</span>
|
| 390 |
+
</h1>
|
| 391 |
+
<p class="text-xl md:text-2xl mb-8 max-w-2xl mx-auto tracking-wider">Classic films from the Golden Age of Hollywood</p>
|
| 392 |
+
<div class="flex flex-col sm:flex-row justify-center space-y-4 sm:space-y-0 sm:space-x-4">
|
| 393 |
+
<button id="featuredBtn" class="px-8 py-3 bg-gradient-to-r from-amber-500 to-amber-700 rounded-full font-semibold hover:scale-105 transition-transform duration-300 shadow-lg hover:shadow-xl">
|
| 394 |
+
Featured Films
|
| 395 |
+
</button>
|
| 396 |
+
<button id="randomBtn" class="px-8 py-3 border-2 border-white rounded-full font-semibold hover:bg-white hover:text-black transition-colors duration-300">
|
| 397 |
+
Random Classic
|
| 398 |
+
</button>
|
| 399 |
+
</div>
|
| 400 |
+
</div>
|
| 401 |
+
|
| 402 |
+
<div class="scroll-down">
|
| 403 |
+
<i class="fas fa-chevron-down text-2xl text-white"></i>
|
| 404 |
+
</div>
|
| 405 |
+
|
| 406 |
+
<!-- Create random sparkles -->
|
| 407 |
+
<div id="sparkles"></div>
|
| 408 |
+
</section>
|
| 409 |
+
|
| 410 |
+
<!-- Main Theater Section -->
|
| 411 |
+
<section class="py-20 px-4">
|
| 412 |
+
<div class="text-center mb-16">
|
| 413 |
+
<h2 class="title text-4xl md:text-5xl font-bold mb-4">The Grand Theater</h2>
|
| 414 |
+
<div class="w-24 h-1 bg-gradient-to-r from-amber-400 to-amber-600 mx-auto"></div>
|
| 415 |
+
</div>
|
| 416 |
+
|
| 417 |
+
<!-- Theater Screen -->
|
| 418 |
+
<div class="theater-screen">
|
| 419 |
+
<div class="screen-curtains">
|
| 420 |
+
<div class="curtain curtain-left"></div>
|
| 421 |
+
<div class="curtain curtain-right"></div>
|
| 422 |
+
</div>
|
| 423 |
+
<div class="projector-light"></div>
|
| 424 |
+
<div class="screen-content">
|
| 425 |
+
<div class="film-strip top"></div>
|
| 426 |
+
<div class="film-strip bottom"></div>
|
| 427 |
+
<div id="playerContainer" class="w-full h-full flex items-center justify-center">
|
| 428 |
+
<div class="text-center">
|
| 429 |
+
<div class="film-reel mx-auto mb-4"></div>
|
| 430 |
+
<p class="text-xl">Select a film from our collection</p>
|
| 431 |
+
</div>
|
| 432 |
+
</div>
|
| 433 |
+
</div>
|
| 434 |
+
</div>
|
| 435 |
+
|
| 436 |
+
<!-- Theater Controls -->
|
| 437 |
+
<div class="max-w-4xl mx-auto mt-8 flex justify-center space-x-4">
|
| 438 |
+
<button id="openCurtainsBtn" class="px-6 py-2 bg-amber-600 rounded font-semibold hover:bg-amber-700 transition-colors duration-300 flex items-center">
|
| 439 |
+
<i class="fas fa-theater-masks mr-2"></i> Open Curtains
|
| 440 |
+
</button>
|
| 441 |
+
<button id="fullscreenBtn" class="px-6 py-2 bg-gray-700 rounded font-semibold hover:bg-gray-600 transition-colors duration-300 flex items-center">
|
| 442 |
+
<i class="fas fa-expand mr-2"></i> Full Screen
|
| 443 |
+
</button>
|
| 444 |
+
<button id="volumeBtn" class="px-6 py-2 bg-gray-700 rounded font-semibold hover:bg-gray-600 transition-colors duration-300 flex items-center">
|
| 445 |
+
<i class="fas fa-volume-up mr-2"></i> Volume
|
| 446 |
+
</button>
|
| 447 |
+
</div>
|
| 448 |
+
|
| 449 |
+
<!-- Theater Seats (for decoration) -->
|
| 450 |
+
<div class="theater-seats mt-12">
|
| 451 |
+
<div class="seat-row">
|
| 452 |
+
<div class="seat"></div>
|
| 453 |
+
<div class="seat"></div>
|
| 454 |
+
<div class="seat"></div>
|
| 455 |
+
<div class="seat selected"></div>
|
| 456 |
+
<div class="seat selected"></div>
|
| 457 |
+
<div class="aisle"></div>
|
| 458 |
+
<div class="seat selected"></div>
|
| 459 |
+
<div class="seat selected"></div>
|
| 460 |
+
<div class="seat"></div>
|
| 461 |
+
<div class="seat"></div>
|
| 462 |
+
</div>
|
| 463 |
+
<div class="seat-row">
|
| 464 |
+
<div class="seat"></div>
|
| 465 |
+
<div class="seat"></div>
|
| 466 |
+
<div class="seat selected"></div>
|
| 467 |
+
<div class="seat selected"></div>
|
| 468 |
+
<div class="seat selected"></div>
|
| 469 |
+
<div class="aisle"></div>
|
| 470 |
+
<div class="seat selected"></div>
|
| 471 |
+
<div class="seat selected"></div>
|
| 472 |
+
<div class="seat selected"></div>
|
| 473 |
+
<div class="seat"></div>
|
| 474 |
+
</div>
|
| 475 |
+
<div class="seat-row">
|
| 476 |
+
<div class="seat"></div>
|
| 477 |
+
<div class="seat selected"></div>
|
| 478 |
+
<div class="seat selected"></div>
|
| 479 |
+
<div class="seat selected"></div>
|
| 480 |
+
<div class="seat selected"></div>
|
| 481 |
+
<div class="aisle"></div>
|
| 482 |
+
<div class="seat selected"></div>
|
| 483 |
+
<div class="seat selected"></div>
|
| 484 |
+
<div class="seat selected"></div>
|
| 485 |
+
<div class="seat selected"></div>
|
| 486 |
+
</div>
|
| 487 |
+
</div>
|
| 488 |
+
</section>
|
| 489 |
+
|
| 490 |
+
<!-- Movie Collection Section -->
|
| 491 |
+
<section class="py-20 px-6 bg-black bg-opacity-70">
|
| 492 |
+
<div class="max-w-6xl mx-auto">
|
| 493 |
+
<div class="text-center mb-16">
|
| 494 |
+
<h2 class="title text-4xl md:text-5xl font-bold mb-4">Classic Film Collection</h2>
|
| 495 |
+
<div class="w-24 h-1 bg-gradient-to-r from-amber-400 to-amber-600 mx-auto"></div>
|
| 496 |
+
<p class="mt-6 max-w-2xl mx-auto">Browse our curated selection of timeless classics from the Internet Archive</p>
|
| 497 |
+
</div>
|
| 498 |
+
|
| 499 |
+
<div class="marquee mb-8">
|
| 500 |
+
<div class="marquee-content">
|
| 501 |
+
NOW PLAYING: THE GENERAL (1926) • METROPOLIS (1927) • CITY LIGHTS (1931) • GONE WITH THE WIND (1939) • CASABLANCA (1942) • CITIZEN KANE (1941) • SINGIN' IN THE RAIN (1952) • SOME LIKE IT HOT (1959) •
|
| 502 |
+
</div>
|
| 503 |
+
</div>
|
| 504 |
+
|
| 505 |
+
<div class="grid grid-cols-1 sm:grid-cols-2 lg:grid-cols-3 gap-8" id="movieGrid">
|
| 506 |
+
<!-- Movies will be loaded here -->
|
| 507 |
+
</div>
|
| 508 |
+
</div>
|
| 509 |
+
</section>
|
| 510 |
+
|
| 511 |
+
<!-- About Section -->
|
| 512 |
+
<section class="py-20 px-6">
|
| 513 |
+
<div class="max-w-4xl mx-auto">
|
| 514 |
+
<div class="text-center mb-16">
|
| 515 |
+
<h2 class="title text-4xl md:text-5xl font-bold mb-4">About Epic Vintage Cinema</h2>
|
| 516 |
+
<div class="w-24 h-1 bg-gradient-to-r from-amber-400 to-amber-600 mx-auto"></div>
|
| 517 |
+
</div>
|
| 518 |
+
|
| 519 |
+
<div class="grid md:grid-cols-2 gap-12 items-center">
|
| 520 |
+
<div class="relative">
|
| 521 |
+
<img src="https://images.unsplash.com/photo-1517604931442-7e0c8ed2963c?ixlib=rb-4.0.3&ixid=M3wxMjA3fDB8MHxwaG90by1wYWdlfHx8fGVufDB8fHx8fA%3D%3D&auto=format&fit=crop&w=2070&q=80"
|
| 522 |
+
alt="Old movie theater"
|
| 523 |
+
class="rounded-lg shadow-2xl transform hover:scale-105 transition-transform duration-500">
|
| 524 |
+
<div class="absolute -inset-4 border-2 border-amber-400 rounded-lg opacity-0 hover:opacity-100 transition-opacity duration-300 pointer-events-none"></div>
|
| 525 |
+
</div>
|
| 526 |
+
<div>
|
| 527 |
+
<h3 class="text-3xl font-semibold mb-6">Preserving Film History</h3>
|
| 528 |
+
<p class="text-lg leading-relaxed mb-6">Epic Vintage Cinema is dedicated to preserving and showcasing classic films from the golden age of Hollywood and beyond. Our collection features rare and public domain films from the Internet Archive, carefully curated for film enthusiasts.</p>
|
| 529 |
+
<p class="text-lg leading-relaxed">Experience cinema as it was meant to be seen - on our virtual grand theater screen with authentic vintage atmosphere. From silent films to noir classics, we bring history to life.</p>
|
| 530 |
+
</div>
|
| 531 |
+
</div>
|
| 532 |
+
</div>
|
| 533 |
+
</section>
|
| 534 |
+
|
| 535 |
+
<!-- Footer -->
|
| 536 |
+
<footer class="py-12 px-6 bg-black bg-opacity-80 text-center">
|
| 537 |
+
<div class="max-w-4xl mx-auto">
|
| 538 |
+
<h3 class="title text-2xl font-semibold mb-6">Epic Vintage Cinema</h3>
|
| 539 |
+
<div class="flex justify-center space-x-6 mb-8">
|
| 540 |
+
<a href="#" class="text-2xl hover:text-amber-400 transition-colors duration-300"><i class="fab fa-twitter"></i></a>
|
| 541 |
+
<a href="#" class="text-2xl hover:text-amber-400 transition-colors duration-300"><i class="fab fa-facebook"></i></a>
|
| 542 |
+
<a href="#" class="text-2xl hover:text-amber-400 transition-colors duration-300"><i class="fab fa-instagram"></i></a>
|
| 543 |
+
<a href="https://archive.org/" target="_blank" class="text-2xl hover:text-amber-400 transition-colors duration-300"><i class="fas fa-archive"></i></a>
|
| 544 |
+
</div>
|
| 545 |
+
<p class="text-sm opacity-70 mb-2">All films are provided by the Internet Archive and are in the public domain.</p>
|
| 546 |
+
<p class="text-xs opacity-50">This site is for educational purposes only. No copyright infringement intended.</p>
|
| 547 |
+
</div>
|
| 548 |
+
</footer>
|
| 549 |
+
|
| 550 |
+
<script>
|
| 551 |
+
// Sample movie data (in a real app, this would come from RSS feed)
|
| 552 |
+
const movies = [
|
| 553 |
+
{
|
| 554 |
+
title: "The General (1926)",
|
| 555 |
+
description: "Buster Keaton's classic silent comedy about a train engineer pursuing his beloved locomotive.",
|
| 556 |
+
thumbnail: "https://archive.org/download/the-general-1926_202111/The%20General%20%281926%29.thumbs/The%20General%20%281926%29_000057.jpg",
|
| 557 |
+
archiveUrl: "https://archive.org/embed/the-general-1926_202111",
|
| 558 |
+
year: "1926",
|
| 559 |
+
director: "Buster Keaton, Clyde Bruckman",
|
| 560 |
+
runtime: "1h 47m"
|
| 561 |
+
},
|
| 562 |
+
{
|
| 563 |
+
title: "Metropolis (1927)",
|
| 564 |
+
description: "Fritz Lang's groundbreaking sci-fi silent film about class struggle in a futuristic city.",
|
| 565 |
+
thumbnail: "https://archive.org/download/metropolis-1927_202110/Metropolis%20%281927%29.thumbs/Metropolis%20%281927%29_000270.jpg",
|
| 566 |
+
archiveUrl: "https://archive.org/embed/metropolis-1927_202110",
|
| 567 |
+
year: "1927",
|
| 568 |
+
director: "Fritz Lang",
|
| 569 |
+
runtime: "2h 33m"
|
| 570 |
+
},
|
| 571 |
+
{
|
| 572 |
+
title: "City Lights (1931)",
|
| 573 |
+
description: "Charlie Chaplin's masterpiece about the Tramp who falls in love with a blind flower girl.",
|
| 574 |
+
thumbnail: "https://archive.org/download/city-lights-1931_202110/City%20Lights%20%281931%29.thumbs/City%20Lights%20%281931%29_000270.jpg",
|
| 575 |
+
archiveUrl: "https://archive.org/embed/city-lights-1931_202110",
|
| 576 |
+
year: "1931",
|
| 577 |
+
director: "Charlie Chaplin",
|
| 578 |
+
runtime: "1h 27m"
|
| 579 |
+
},
|
| 580 |
+
{
|
| 581 |
+
title: "Casablanca (1942)",
|
| 582 |
+
description: "Humphrey Bogart and Ingrid Bergman star in this timeless wartime romance.",
|
| 583 |
+
thumbnail: "https://archive.org/download/casablanca_202108/Casablanca.thumbs/Casablanca_000270.jpg",
|
| 584 |
+
archiveUrl: "https://archive.org/embed/casablanca_202108",
|
| 585 |
+
year: "1942",
|
| 586 |
+
director: "Michael Curtiz",
|
| 587 |
+
runtime: "1h 42m"
|
| 588 |
+
},
|
| 589 |
+
{
|
| 590 |
+
title: "Citizen Kane (1941)",
|
| 591 |
+
description: "Orson Welles' revolutionary drama about the life of a newspaper tycoon.",
|
| 592 |
+
thumbnail: "https://archive.org/download/citizen-kane_202108/Citizen%20Kane.thumbs/Citizen%20Kane_000270.jpg",
|
| 593 |
+
archiveUrl: "https://archive.org/embed/citizen-kane_202108",
|
| 594 |
+
year: "1941",
|
| 595 |
+
director: "Orson Welles",
|
| 596 |
+
runtime: "1h 59m"
|
| 597 |
+
},
|
| 598 |
+
{
|
| 599 |
+
title: "Nosferatu (1922)",
|
| 600 |
+
description: "F.W. Murnau's unauthorized Dracula adaptation that became a horror classic.",
|
| 601 |
+
thumbnail: "https://archive.org/download/nosferatu-1922_202110/Nosferatu%20%281922%29.thumbs/Nosferatu%20%281922%29_000270.jpg",
|
| 602 |
+
archiveUrl: "https://archive.org/embed/nosferatu-1922_202110",
|
| 603 |
+
year: "1922",
|
| 604 |
+
director: "F.W. Murnau",
|
| 605 |
+
runtime: "1h 34m"
|
| 606 |
+
}
|
| 607 |
+
];
|
| 608 |
+
|
| 609 |
+
// Create floating particles
|
| 610 |
+
function createParticles() {
|
| 611 |
+
const container = document.getElementById('particles');
|
| 612 |
+
const particleCount = 30;
|
| 613 |
+
|
| 614 |
+
for (let i = 0; i < particleCount; i++) {
|
| 615 |
+
const particle = document.createElement('div');
|
| 616 |
+
particle.className = 'particle';
|
| 617 |
+
|
| 618 |
+
// Random size
|
| 619 |
+
const size = Math.random() * 5 + 2;
|
| 620 |
+
particle.style.width = `${size}px`;
|
| 621 |
+
particle.style.height = `${size}px`;
|
| 622 |
+
|
| 623 |
+
// Random position
|
| 624 |
+
particle.style.left = Math.random() * 100 + 'vw';
|
| 625 |
+
|
| 626 |
+
// Random animation duration
|
| 627 |
+
particle.style.animationDuration = 5 + Math.random() * 20 + 's';
|
| 628 |
+
particle.style.animationDelay = Math.random() * 5 + 's';
|
| 629 |
+
|
| 630 |
+
container.appendChild(particle);
|
| 631 |
+
}
|
| 632 |
+
}
|
| 633 |
+
|
| 634 |
+
// Create sparkles
|
| 635 |
+
function createSparkles() {
|
| 636 |
+
const container = document.getElementById('sparkles');
|
| 637 |
+
const sparkleCount = 20;
|
| 638 |
+
|
| 639 |
+
for (let i = 0; i < sparkleCount; i++) {
|
| 640 |
+
const sparkle = document.createElement('div');
|
| 641 |
+
sparkle.className = 'sparkle';
|
| 642 |
+
|
| 643 |
+
// Random position
|
| 644 |
+
sparkle.style.left = Math.random() * 100 + 'vw';
|
| 645 |
+
sparkle.style.top = Math.random() * 100 + 'vh';
|
| 646 |
+
|
| 647 |
+
// Random animation delay
|
| 648 |
+
sparkle.style.animationDelay = Math.random() * 3 + 's';
|
| 649 |
+
|
| 650 |
+
container.appendChild(sparkle);
|
| 651 |
+
}
|
| 652 |
+
}
|
| 653 |
+
|
| 654 |
+
// Load movies into grid
|
| 655 |
+
function loadMovies() {
|
| 656 |
+
const movieGrid = document.getElementById('movieGrid');
|
| 657 |
+
movieGrid.innerHTML = '';
|
| 658 |
+
|
| 659 |
+
movies.forEach((movie, index) => {
|
| 660 |
+
const movieCard = document.createElement('div');
|
| 661 |
+
movieCard.className = 'movie-card rounded-lg overflow-hidden relative group';
|
| 662 |
+
movieCard.innerHTML = `
|
| 663 |
+
<img src="${movie.thumbnail}" alt="${movie.title}" class="w-full h-64 object-cover">
|
| 664 |
+
<div class="p-4">
|
| 665 |
+
<h3 class="text-xl font-bold mb-2">${movie.title}</h3>
|
| 666 |
+
<p class="text-gray-300 text-sm mb-3">${movie.year} • ${movie.runtime}</p>
|
| 667 |
+
<p class="text-gray-400 mb-4">${movie.description}</p>
|
| 668 |
+
<button class="play-btn px-4 py-2 bg-amber-600 rounded text-sm font-semibold hover:bg-amber-700 transition-colors duration-300" data-index="${index}">
|
| 669 |
+
<i class="fas fa-play mr-1"></i> Play Film
|
| 670 |
+
</button>
|
| 671 |
+
</div>
|
| 672 |
+
`;
|
| 673 |
+
movieGrid.appendChild(movieCard);
|
| 674 |
+
});
|
| 675 |
+
}
|
| 676 |
+
|
| 677 |
+
// Play selected movie
|
| 678 |
+
function playMovie(movieIndex) {
|
| 679 |
+
const movie = movies[movieIndex];
|
| 680 |
+
const playerContainer = document.getElementById('playerContainer');
|
| 681 |
+
|
| 682 |
+
// Open curtains
|
| 683 |
+
document.querySelector('.theater-screen').classList.add('screen-open');
|
| 684 |
+
|
| 685 |
+
// Load player
|
| 686 |
+
playerContainer.innerHTML = `
|
| 687 |
+
<iframe src="${movie.archiveUrl}"
|
| 688 |
+
width="100%"
|
| 689 |
+
height="100%"
|
| 690 |
+
frameborder="0"
|
| 691 |
+
webkitallowfullscreen="true"
|
| 692 |
+
mozallowfullscreen="true"
|
| 693 |
+
allowfullscreen
|
| 694 |
+
id="moviePlayer">
|
| 695 |
+
</iframe>
|
| 696 |
+
`;
|
| 697 |
+
|
| 698 |
+
// Update marquee
|
| 699 |
+
document.querySelector('.marquee-content').textContent = `NOW PLAYING: ${movie.title.toUpperCase()} • DIRECTED BY ${movie.director.toUpperCase()} • ${movie.year}`;
|
| 700 |
+
|
| 701 |
+
// Highlight selected movie card
|
| 702 |
+
document.querySelectorAll('.movie-card').forEach(card => card.classList.remove('active'));
|
| 703 |
+
document.querySelectorAll('.movie-card')[movieIndex].classList.add('active');
|
| 704 |
+
|
| 705 |
+
// Scroll to theater
|
| 706 |
+
document.querySelector('.theater-screen').scrollIntoView({ behavior: 'smooth' });
|
| 707 |
+
}
|
| 708 |
+
|
| 709 |
+
// Toggle fullscreen
|
| 710 |
+
function toggleFullscreen() {
|
| 711 |
+
const player = document.getElementById('moviePlayer');
|
| 712 |
+
if (!player) return;
|
| 713 |
+
|
| 714 |
+
if (player.requestFullscreen) {
|
| 715 |
+
player.requestFullscreen();
|
| 716 |
+
} else if (player.webkitRequestFullscreen) { /* Safari */
|
| 717 |
+
player.webkitRequestFullscreen();
|
| 718 |
+
} else if (player.msRequestFullscreen) { /* IE11 */
|
| 719 |
+
player.msRequestFullscreen();
|
| 720 |
+
}
|
| 721 |
+
}
|
| 722 |
+
|
| 723 |
+
// Toggle curtains
|
| 724 |
+
function toggleCurtains() {
|
| 725 |
+
const screen = document.querySelector('.theater-screen');
|
| 726 |
+
if (screen.classList.contains('screen-open')) {
|
| 727 |
+
screen.classList.remove('screen-open');
|
| 728 |
+
document.getElementById('playerContainer').innerHTML = `
|
| 729 |
+
<div class="text-center">
|
| 730 |
+
<div class="film-reel mx-auto mb-4"></div>
|
| 731 |
+
<p class="text-xl">Select a film from our collection</p>
|
| 732 |
+
</div>
|
| 733 |
+
`;
|
| 734 |
+
} else {
|
| 735 |
+
screen.classList.add('screen-open');
|
| 736 |
+
}
|
| 737 |
+
}
|
| 738 |
+
|
| 739 |
+
// Initialize
|
| 740 |
+
document.addEventListener('DOMContentLoaded', () => {
|
| 741 |
+
createParticles();
|
| 742 |
+
createSparkles();
|
| 743 |
+
loadMovies();
|
| 744 |
+
|
| 745 |
+
// Play movie when button clicked
|
| 746 |
+
document.addEventListener('click', (e) => {
|
| 747 |
+
if (e.target.classList.contains('play-btn')) {
|
| 748 |
+
const movieIndex = e.target.getAttribute('data-index');
|
| 749 |
+
playMovie(movieIndex);
|
| 750 |
+
}
|
| 751 |
+
|
| 752 |
+
// Fullscreen button
|
| 753 |
+
if (e.target.id === 'fullscreenBtn' || e.target.closest('#fullscreenBtn')) {
|
| 754 |
+
toggleFullscreen();
|
| 755 |
+
}
|
| 756 |
+
|
| 757 |
+
// Curtains button
|
| 758 |
+
if (e.target.id === 'openCurtainsBtn' || e.target.closest('#openCurtainsBtn')) {
|
| 759 |
+
toggleCurtains();
|
| 760 |
+
}
|
| 761 |
+
|
| 762 |
+
// Featured films button
|
| 763 |
+
if (e.target.id === 'featuredBtn' || e.target.closest('#featuredBtn')) {
|
| 764 |
+
document.getElementById('movieGrid').scrollIntoView({ behavior: 'smooth' });
|
| 765 |
+
}
|
| 766 |
+
|
| 767 |
+
// Random film button
|
| 768 |
+
if (e.target.id === 'randomBtn' || e.target.closest('#randomBtn')) {
|
| 769 |
+
const randomIndex = Math.floor(Math.random() * movies.length);
|
| 770 |
+
playMovie(randomIndex);
|
| 771 |
+
}
|
| 772 |
+
});
|
| 773 |
+
|
| 774 |
+
// Create more sparkles on mousemove
|
| 775 |
+
document.addEventListener('mousemove', (e) => {
|
| 776 |
+
const sparkle = document.createElement('div');
|
| 777 |
+
sparkle.className = 'sparkle';
|
| 778 |
+
sparkle.style.left = `${e.clientX}px`;
|
| 779 |
+
sparkle.style.top = `${e.clientY}px`;
|
| 780 |
+
document.body.appendChild(sparkle);
|
| 781 |
+
|
| 782 |
+
// Remove after animation completes
|
| 783 |
+
setTimeout(() => {
|
| 784 |
+
sparkle.remove();
|
| 785 |
+
}, 2000);
|
| 786 |
+
});
|
| 787 |
+
|
| 788 |
+
// Smooth scroll for anchor links
|
| 789 |
+
document.querySelectorAll('a[href^="#"]').forEach(anchor => {
|
| 790 |
+
anchor.addEventListener('click', function(e) {
|
| 791 |
+
e.preventDefault();
|
| 792 |
+
document.querySelector(this.getAttribute('href')).scrollIntoView({
|
| 793 |
+
behavior: 'smooth'
|
| 794 |
+
});
|
| 795 |
+
});
|
| 796 |
+
});
|
| 797 |
+
});
|
| 798 |
+
</script>
|
| 799 |
+
<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=MarcRyan/random-classics" style="color: #fff;text-decoration: underline;" target="_blank" >Remix</a></p></body>
|
| 800 |
+
</html>
|
prompts.txt
ADDED
|
@@ -0,0 +1,3 @@
|
|
|
|
|
|
|
|
|
|
|
|
|
| 1 |
+
create epic cinematic engagement
|
| 2 |
+
create epic cinema
|
| 3 |
+
turn this into a website that uses this style and effect to playback classic movies from the internet archives that are movie choices populated via rss feed are picked and played on a giant screen wide xxxxl card that looks like a movie theater screen from the 1920's
|