Changes to love.scroll.pub

root
root
6 days ago
Initial commit
index.scroll
Changed around line 1
+ buildHtml
+ baseUrl https://love.scroll.pub
+ metaTags
+ editButton /edit.html
+ title Love Bomb - Send Some Love
+ style.css
+ header
+ class hero
+ div
+ id heart-container
+ class heart-container
+ main
+ section
+ class love-controls
+ button Click to Send Love
+ id sendLove
+ class love-button
+ section
+ class love-messages
+ h1 Share the Love
+ p Click the button to create a beautiful explosion of hearts and spread joy across the screen.
+ footer
+ div
+ class footer-content
+ p Made with ❤️ for spreading joy
+ script.js
prompt.json
Changed around line 1
+ {
+ "id": "msg_01SYhb6QkqVYbsN6123KCvpq",
+ "type": "message",
+ "role": "assistant",
+ "model": "claude-3-5-sonnet-20241022",
+ "content": [
+ {
+ "type": "text",
+ "text": "I'll create a love-themed website that creates a beautiful animated heart effect with particles and interactivity.\n\n---domain---\nlove.scroll.pub\n---index.scroll---\nbuildHtml\nbaseUrl https://love.scroll.pub\nmetaTags\neditButton /edit.html\ntitle Love Bomb - Send Some Love\nstyle.css\nheader\n class hero\n div\n id heart-container\n class heart-container\nmain\n section\n class love-controls\n button Click to Send Love\n id sendLove\n class love-button\n section\n class love-messages\n h1 Share the Love\n p Click the button to create a beautiful explosion of hearts and spread joy across the screen.\nfooter\n div\n class footer-content\n p Made with ❤️ for spreading joy\nscript.js\n---style.css---\n:root {\n --primary-color: #ff4d6d;\n --secondary-color: #ff8fa3;\n --background-color: #ffe5e5;\n --text-color: #4a4a4a;\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\nbody {\n font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;\n background-color: var(--background-color);\n color: var(--text-color);\n min-height: 100vh;\n display: flex;\n flex-direction: column;\n}\n\n.hero {\n height: 60vh;\n position: relative;\n overflow: hidden;\n}\n\n.heart-container {\n width: 100%;\n height: 100%;\n position: relative;\n}\n\n.love-controls {\n text-align: center;\n padding: 2rem;\n}\n\n.love-button {\n background-color: var(--primary-color);\n color: white;\n border: none;\n padding: 1rem 2rem;\n font-size: 1.2rem;\n border-radius: 50px;\n cursor: pointer;\n transition: transform 0.3s ease, box-shadow 0.3s ease;\n box-shadow: 0 4px 15px rgba(255, 77, 109, 0.3);\n}\n\n.love-button:hover {\n transform: translateY(-2px);\n box-shadow: 0 6px 20px rgba(255, 77, 109, 0.4);\n}\n\n.love-messages {\n text-align: center;\n padding: 2rem;\n}\n\n.love-messages h1 {\n color: var(--primary-color);\n margin-bottom: 1rem;\n font-size: 2.5rem;\n}\n\n.love-messages p {\n font-size: 1.2rem;\n line-height: 1.6;\n max-width: 600px;\n margin: 0 auto;\n}\n\n.heart {\n position: absolute;\n pointer-events: none;\n animation: float 4s ease-in-out infinite;\n}\n\n@keyframes float {\n 0% {\n transform: translateY(0) scale(1);\n opacity: 1;\n }\n 100% {\n transform: translateY(-100vh) scale(0);\n opacity: 0;\n }\n}\n\nfooter {\n margin-top: auto;\n padding: 2rem;\n text-align: center;\n background-color: white;\n}\n\n@media (max-width: 768px) {\n .love-messages h1 {\n font-size: 2rem;\n }\n \n .love-messages p {\n font-size: 1rem;\n padding: 0 1rem;\n }\n \n .love-button {\n padding: 0.8rem 1.6rem;\n font-size: 1rem;\n }\n}\n---script.js---\ndocument.addEventListener('DOMContentLoaded', () => {\n const heartContainer = document.getElementById('heart-container');\n const sendLoveButton = document.getElementById('sendLove');\n\n function createHeart() {\n const heart = document.createElement('div');\n heart.classList.add('heart');\n heart.innerHTML = '❤️';\n heart.style.left = Math.random() * 100 + 'vw';\n heart.style.fontSize = (Math.random() * 20 + 20) + 'px';\n heart.style.animationDuration = (Math.random() * 2 + 3) + 's';\n heart.style.opacity = Math.random() * 0.5 + 0.5;\n \n heartContainer.appendChild(heart);\n \n setTimeout(() => {\n heart.remove();\n }, 4000);\n }\n\n function createLoveBomb() {\n for (let i = 0; i < 30; i++) {\n setTimeout(createHeart, i * 100);\n }\n }\n\n sendLoveButton.addEventListener('click', () => {\n createLoveBomb();\n sendLoveButton.style.transform = 'scale(0.95)';\n setTimeout(() => {\n sendLoveButton.style.transform = 'scale(1)';\n }, 100);\n });\n\n // Create occasional ambient hearts\n setInterval(() => {\n if (Math.random() > 0.7) {\n createHeart();\n }\n }, 2000);\n\n // Initial hearts\n for (let i = 0; i < 5; i++) {\n createHeart();\n }\n});\n---end---\n\nThis website creates a beautiful \"love bomb\" effect with floating hearts. When users click the \"Send Love\" button, it creates an explosion of animated hearts that float up and fade away. The design is minimal but engaging, with a soft color palette and smooth animations. The site is fully responsive and accessible, using semantic HTML and proper ARIA attributes where needed.\n\nKey features:\n- Animated floating hearts\n- Interactive \"love bomb\" button\n- Smooth animations and transitions\n- Ambient background hearts\n- Responsive design\n- Soft, love-themed color palette\n- Clean, modern interface\n\nThe site uses pure CSS animations for performance and JavaScript for the interactive elements. The hearts are created dynamically and removed from the DOM after their animation completes to prevent memory issues."
+ }
+ ],
+ "stop_reason": "end_turn",
+ "stop_sequence": null,
+ "usage": {
+ "input_tokens": 819,
+ "cache_creation_input_tokens": 0,
+ "cache_read_input_tokens": 0,
+ "output_tokens": 1579
+ }
+ }
readme.scroll
Changed around line 1
+ # love.scroll.pub
+
+ website generated by Claude from prompt: a love bomb
script.js
Changed around line 1
+ document.addEventListener('DOMContentLoaded', () => {
+ const heartContainer = document.getElementById('heart-container');
+ const sendLoveButton = document.getElementById('sendLove');
+
+ function createHeart() {
+ const heart = document.createElement('div');
+ heart.classList.add('heart');
+ heart.innerHTML = '❤️';
+ heart.style.left = Math.random() * 100 + 'vw';
+ heart.style.fontSize = (Math.random() * 20 + 20) + 'px';
+ heart.style.animationDuration = (Math.random() * 2 + 3) + 's';
+ heart.style.opacity = Math.random() * 0.5 + 0.5;
+
+ heartContainer.appendChild(heart);
+
+ setTimeout(() => {
+ heart.remove();
+ }, 4000);
+ }
+
+ function createLoveBomb() {
+ for (let i = 0; i < 30; i++) {
+ setTimeout(createHeart, i * 100);
+ }
+ }
+
+ sendLoveButton.addEventListener('click', () => {
+ createLoveBomb();
+ sendLoveButton.style.transform = 'scale(0.95)';
+ setTimeout(() => {
+ sendLoveButton.style.transform = 'scale(1)';
+ }, 100);
+ });
+
+ // Create occasional ambient hearts
+ setInterval(() => {
+ if (Math.random() > 0.7) {
+ createHeart();
+ }
+ }, 2000);
+
+ // Initial hearts
+ for (let i = 0; i < 5; i++) {
+ createHeart();
+ }
+ });
style.css
Changed around line 1
+ :root {
+ --primary-color: #ff4d6d;
+ --secondary-color: #ff8fa3;
+ --background-color: #ffe5e5;
+ --text-color: #4a4a4a;
+ }
+
+ * {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+ }
+
+ body {
+ font-family: 'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;
+ background-color: var(--background-color);
+ color: var(--text-color);
+ min-height: 100vh;
+ display: flex;
+ flex-direction: column;
+ }
+
+ .hero {
+ height: 60vh;
+ position: relative;
+ overflow: hidden;
+ }
+
+ .heart-container {
+ width: 100%;
+ height: 100%;
+ position: relative;
+ }
+
+ .love-controls {
+ text-align: center;
+ padding: 2rem;
+ }
+
+ .love-button {
+ background-color: var(--primary-color);
+ color: white;
+ border: none;
+ padding: 1rem 2rem;
+ font-size: 1.2rem;
+ border-radius: 50px;
+ cursor: pointer;
+ transition: transform 0.3s ease, box-shadow 0.3s ease;
+ box-shadow: 0 4px 15px rgba(255, 77, 109, 0.3);
+ }
+
+ .love-button:hover {
+ transform: translateY(-2px);
+ box-shadow: 0 6px 20px rgba(255, 77, 109, 0.4);
+ }
+
+ .love-messages {
+ text-align: center;
+ padding: 2rem;
+ }
+
+ .love-messages h1 {
+ color: var(--primary-color);
+ margin-bottom: 1rem;
+ font-size: 2.5rem;
+ }
+
+ .love-messages p {
+ font-size: 1.2rem;
+ line-height: 1.6;
+ max-width: 600px;
+ margin: 0 auto;
+ }
+
+ .heart {
+ position: absolute;
+ pointer-events: none;
+ animation: float 4s ease-in-out infinite;
+ }
+
+ @keyframes float {
+ 0% {
+ transform: translateY(0) scale(1);
+ opacity: 1;
+ }
+ 100% {
+ transform: translateY(-100vh) scale(0);
+ opacity: 0;
+ }
+ }
+
+ footer {
+ margin-top: auto;
+ padding: 2rem;
+ text-align: center;
+ background-color: white;
+ }
+
+ @media (max-width: 768px) {
+ .love-messages h1 {
+ font-size: 2rem;
+ }
+
+ .love-messages p {
+ font-size: 1rem;
+ padding: 0 1rem;
+ }
+
+ .love-button {
+ padding: 0.8rem 1.6rem;
+ font-size: 1rem;
+ }
+ }