commit 44b915f5055e11e317e54c097e05e8fc3a81141e
Author: root <root@hub.scroll.pub> Date: 2025-01-06 02:51:20 +0000 Subject: Initial commit diff --git a/body.html b/body.html new file mode 100644 index 0000000..f59e5bf --- /dev/null +++ b/body.html @@ -0,0 +1,19 @@ +<main class="container"> + <section class="greeting"> + <h1 class="title">Hello World</h1> + <div class="floating-elements"> + <span class="element">🌈</span> + <span class="element">✨</span> + <span class="element">🎨</span> + <span class="element">🎯</span> + </div> + </section> + <div class="color-balls"> + <div class="ball"></div> + <div class="ball"></div> + <div class="ball"></div> + </div> +</main> +<footer> + <p>Made with creativity and joy</p> +</footer> \ No newline at end of file diff --git a/index.scroll b/index.scroll new file mode 100644 index 0000000..35bfc40 --- /dev/null +++ b/index.scroll @@ -0,0 +1,8 @@ +buildHtml +baseUrl https://hellocolor.scroll.pub +metaTags +editButton /edit.html +title Colorful Hello World +style.css +body.html +script.js \ No newline at end of file diff --git a/prompt.json b/prompt.json new file mode 100644 index 0000000..3f33a28 --- /dev/null +++ b/prompt.json @@ -0,0 +1,20 @@ +{ + "id": "msg_012gNEwunQxCqidH4ySbfTqj", + "type": "message", + "role": "assistant", + "model": "claude-3-5-sonnet-20241022", + "content": [ + { + "type": "text", + "text": "Let me create a vibrant, creative \"Hello World\" website with animated elements and an engaging design.\n\n---domain---\nhellocolor.scroll.pub\n---index.scroll---\nbuildHtml\nbaseUrl https://hellocolor.scroll.pub\nmetaTags\neditButton /edit.html\ntitle Colorful Hello World\nstyle.css\nbody.html\nscript.js\n---body.html---\n<main class=\"container\">\n <section class=\"greeting\">\n <h1 class=\"title\">Hello World</h1>\n <div class=\"floating-elements\">\n <span class=\"element\">🌈</span>\n <span class=\"element\">✨</span>\n <span class=\"element\">🎨</span>\n <span class=\"element\">🎯</span>\n </div>\n </section>\n <div class=\"color-balls\">\n <div class=\"ball\"></div>\n <div class=\"ball\"></div>\n <div class=\"ball\"></div>\n </div>\n</main>\n<footer>\n <p>Made with creativity and joy</p>\n</footer>\n---style.css---\n:root {\n --primary: #ff6b6b;\n --secondary: #4ecdc4;\n --accent: #ffe66d;\n --dark: #2c3e50;\n --light: #f7f9f9;\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\nbody {\n font-family: system-ui, -apple-system, sans-serif;\n background: linear-gradient(135deg, var(--light), var(--secondary));\n min-height: 100vh;\n display: flex;\n flex-direction: column;\n overflow-x: hidden;\n}\n\n.container {\n flex: 1;\n display: flex;\n justify-content: center;\n align-items: center;\n padding: 2rem;\n}\n\n.greeting {\n text-align: center;\n position: relative;\n}\n\n.title {\n font-size: clamp(3rem, 10vw, 8rem);\n color: var(--dark);\n text-shadow: 3px 3px 0 var(--primary);\n animation: bounce 2s ease-in-out infinite;\n}\n\n.floating-elements {\n position: absolute;\n width: 100%;\n height: 100%;\n top: 0;\n left: 0;\n}\n\n.element {\n position: absolute;\n font-size: 2rem;\n animation: float 3s ease-in-out infinite;\n}\n\n.element:nth-child(1) { top: -50%; left: 20%; animation-delay: 0s; }\n.element:nth-child(2) { top: 20%; right: -20%; animation-delay: 0.5s; }\n.element:nth-child(3) { bottom: -30%; left: 10%; animation-delay: 1s; }\n.element:nth-child(4) { bottom: 20%; right: 10%; animation-delay: 1.5s; }\n\n.color-balls {\n position: fixed;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: -1;\n}\n\n.ball {\n position: absolute;\n border-radius: 50%;\n filter: blur(40px);\n opacity: 0.6;\n}\n\n.ball:nth-child(1) {\n background: var(--primary);\n width: 200px;\n height: 200px;\n top: 20%;\n left: 10%;\n animation: moveBall 20s linear infinite;\n}\n\n.ball:nth-child(2) {\n background: var(--secondary);\n width: 300px;\n height: 300px;\n top: 50%;\n right: 15%;\n animation: moveBall 25s linear infinite reverse;\n}\n\n.ball:nth-child(3) {\n background: var(--accent);\n width: 250px;\n height: 250px;\n bottom: 10%;\n left: 30%;\n animation: moveBall 22s linear infinite;\n}\n\nfooter {\n text-align: center;\n padding: 1rem;\n color: var(--dark);\n font-size: 0.9rem;\n}\n\n@keyframes bounce {\n 0%, 100% { transform: translateY(0); }\n 50% { transform: translateY(-20px); }\n}\n\n@keyframes float {\n 0%, 100% { transform: translate(0, 0); }\n 50% { transform: translate(10px, -10px); }\n}\n\n@keyframes moveBall {\n 0% { transform: rotate(0deg) translateX(50px) rotate(0deg); }\n 100% { transform: rotate(360deg) translateX(50px) rotate(-360deg); }\n}\n\n@media (max-width: 768px) {\n .ball {\n transform: scale(0.7);\n }\n \n .element {\n font-size: 1.5rem;\n }\n}\n---script.js---\ndocument.addEventListener('DOMContentLoaded', () => {\n const title = document.querySelector('.title');\n \n // Add rainbow effect on hover\n title.addEventListener('mouseover', () => {\n const colors = ['#ff6b6b', '#4ecdc4', '#ffe66d', '#2c3e50'];\n let i = 0;\n \n const interval = setInterval(() => {\n title.style.color = colors[i];\n i = (i + 1) % colors.length;\n }, 200);\n \n title.addEventListener('mouseout', () => {\n clearInterval(interval);\n title.style.color = '#2c3e50';\n }, { once: true });\n });\n \n // Add particles on click\n document.addEventListener('click', (e) => {\n const particle = document.createElement('span');\n particle.className = 'element';\n particle.style.left = e.pageX + 'px';\n particle.style.top = e.pageY + 'px';\n particle.textContent = '✨';\n document.body.appendChild(particle);\n \n setTimeout(() => particle.remove(), 1000);\n });\n});\n---end---\n\nThis creates a vibrant, interactive webpage with:\n- Floating emoji elements\n- Animated color balls in the background\n- Bouncing title text\n- Rainbow hover effect on the title\n- Click anywhere to create sparkle particles\n- Smooth gradients and animations\n- Fully responsive design\n- Modern color scheme\n- Accessible contrast ratios\n- Clean semantic HTML\n- Performance-optimized animations\n\nThe design is playful yet professional, with smooth animations and interactive elements that make it engaging without being overwhelming." + } + ], + "stop_reason": "end_turn", + "stop_sequence": null, + "usage": { + "input_tokens": 286, + "cache_creation_input_tokens": 0, + "cache_read_input_tokens": 0, + "output_tokens": 1718 + } +} \ No newline at end of file diff --git a/readme.scroll b/readme.scroll new file mode 100644 index 0000000..171a1b0 --- /dev/null +++ b/readme.scroll @@ -0,0 +1,2 @@ +# hellocolor.scroll.pub +Website generated by Claude from prompt: I want a webpage which will print "hello world", be colorful and creative \ No newline at end of file diff --git a/script.js b/script.js new file mode 100644 index 0000000..cdc070c --- /dev/null +++ b/script.js @@ -0,0 +1,31 @@ +document.addEventListener('DOMContentLoaded', () => { + const title = document.querySelector('.title'); + + // Add rainbow effect on hover + title.addEventListener('mouseover', () => { + const colors = ['#ff6b6b', '#4ecdc4', '#ffe66d', '#2c3e50']; + let i = 0; + + const interval = setInterval(() => { + title.style.color = colors[i]; + i = (i + 1) % colors.length; + }, 200); + + title.addEventListener('mouseout', () => { + clearInterval(interval); + title.style.color = '#2c3e50'; + }, { once: true }); + }); + + // Add particles on click + document.addEventListener('click', (e) => { + const particle = document.createElement('span'); + particle.className = 'element'; + particle.style.left = e.pageX + 'px'; + particle.style.top = e.pageY + 'px'; + particle.textContent = '✨'; + document.body.appendChild(particle); + + setTimeout(() => particle.remove(), 1000); + }); +}); \ No newline at end of file diff --git a/style.css b/style.css new file mode 100644 index 0000000..270fec6 --- /dev/null +++ b/style.css @@ -0,0 +1,135 @@ +:root { + --primary: #ff6b6b; + --secondary: #4ecdc4; + --accent: #ffe66d; + --dark: #2c3e50; + --light: #f7f9f9; +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: system-ui, -apple-system, sans-serif; + background: linear-gradient(135deg, var(--light), var(--secondary)); + min-height: 100vh; + display: flex; + flex-direction: column; + overflow-x: hidden; +} + +.container { + flex: 1; + display: flex; + justify-content: center; + align-items: center; + padding: 2rem; +} + +.greeting { + text-align: center; + position: relative; +} + +.title { + font-size: clamp(3rem, 10vw, 8rem); + color: var(--dark); + text-shadow: 3px 3px 0 var(--primary); + animation: bounce 2s ease-in-out infinite; +} + +.floating-elements { + position: absolute; + width: 100%; + height: 100%; + top: 0; + left: 0; +} + +.element { + position: absolute; + font-size: 2rem; + animation: float 3s ease-in-out infinite; +} + +.element:nth-child(1) { top: -50%; left: 20%; animation-delay: 0s; } +.element:nth-child(2) { top: 20%; right: -20%; animation-delay: 0.5s; } +.element:nth-child(3) { bottom: -30%; left: 10%; animation-delay: 1s; } +.element:nth-child(4) { bottom: 20%; right: 10%; animation-delay: 1.5s; } + +.color-balls { + position: fixed; + width: 100%; + height: 100%; + pointer-events: none; + z-index: -1; +} + +.ball { + position: absolute; + border-radius: 50%; + filter: blur(40px); + opacity: 0.6; +} + +.ball:nth-child(1) { + background: var(--primary); + width: 200px; + height: 200px; + top: 20%; + left: 10%; + animation: moveBall 20s linear infinite; +} + +.ball:nth-child(2) { + background: var(--secondary); + width: 300px; + height: 300px; + top: 50%; + right: 15%; + animation: moveBall 25s linear infinite reverse; +} + +.ball:nth-child(3) { + background: var(--accent); + width: 250px; + height: 250px; + bottom: 10%; + left: 30%; + animation: moveBall 22s linear infinite; +} + +footer { + text-align: center; + padding: 1rem; + color: var(--dark); + font-size: 0.9rem; +} + +@keyframes bounce { + 0%, 100% { transform: translateY(0); } + 50% { transform: translateY(-20px); } +} + +@keyframes float { + 0%, 100% { transform: translate(0, 0); } + 50% { transform: translate(10px, -10px); } +} + +@keyframes moveBall { + 0% { transform: rotate(0deg) translateX(50px) rotate(0deg); } + 100% { transform: rotate(360deg) translateX(50px) rotate(-360deg); } +} + +@media (max-width: 768px) { + .ball { + transform: scale(0.7); + } + + .element { + font-size: 1.5rem; + } +} \ No newline at end of file