Changes to artcurate.scroll.pub

root
root
25 days ago
Initial commit
body.html
Changed around line 1
+
+
+
+
+
+
+
+
+
+

Curated Fine Art Collections

+

Discovering and preserving exceptional artistic talent

+
+
+
+

About Our Gallery

+

We specialize in curating distinctive collections that celebrate both emerging and established artists. Our carefully selected pieces represent the pinnacle of contemporary artistic expression.

+
+
+
+

Featured Collections

+
+
+

Modern Abstracts

+
+
+
+

Contemporary Sculptures

+
+
+
+

Digital Art

+
+
+
+

Photography

+
+
+
+

Mixed Media

+
+
+
+
+
+
+

Contact Us

+
+
+
+
+
+
+
+
+
+
+

ArtCurate | Fine Art Collections

+
index.scroll
Changed around line 1
+ buildHtml
+ baseUrl https://artcurate.scroll.pub
+ metaTags
+ editButton /edit.html
+ title Curated Fine Art Collections
+ style.css
+ body.html
+ script.js
prompt.json
Changed around line 1
+ {
+ "id": "msg_016CX91qcALBsuR9fFMdvS1B",
+ "type": "message",
+ "role": "assistant",
+ "model": "claude-3-5-sonnet-20241022",
+ "content": [
+ {
+ "type": "text",
+ "text": "I'll help create an elegant art collection website. For the domain, I suggest:\n\n---domain---\nartcurate.scroll.pub\n\n---index.scroll---\nbuildHtml\nbaseUrl https://artcurate.scroll.pub\nmetaTags\neditButton /edit.html\ntitle Curated Fine Art Collections\nstyle.css\nbody.html\nscript.js\n\n---body.html---\n
\n \n
\n\n
\n
\n

Curated Fine Art Collections

\n

Discovering and preserving exceptional artistic talent

\n
\n\n
\n

About Our Gallery

\n

We specialize in curating distinctive collections that celebrate both emerging and established artists. Our carefully selected pieces represent the pinnacle of contemporary artistic expression.

\n
\n\n
\n

Featured Collections

\n
\n
\n

Modern Abstracts

\n
\n View Collection\n
\n
\n

Contemporary Sculptures

\n
\n View Collection\n
\n
\n

Digital Art

\n
\n View Collection\n
\n
\n

Photography

\n
\n View Collection\n
\n
\n

Mixed Media

\n
\n View Collection\n
\n
\n
\n\n
\n

Contact Us

\n
\n \n \n \n \n
\n
\n
\n\n
\n

ArtCurate | Fine Art Collections

\n
\n\n---style.css---\n:root {\n --primary-color: #2c3e50;\n --accent-color: #e74c3c;\n --text-color: #333;\n --background-color: #f9f9f9;\n --card-background: #ffffff;\n}\n\n* {\n margin: 0;\n padding: 0;\n box-sizing: border-box;\n}\n\nbody {\n font-family: 'Helvetica Neue', Arial, sans-serif;\n line-height: 1.6;\n color: var(--text-color);\n background-color: var(--background-color);\n}\n\nheader {\n position: fixed;\n width: 100%;\n background: rgba(255, 255, 255, 0.95);\n backdrop-filter: blur(10px);\n z-index: 1000;\n box-shadow: 0 2px 10px rgba(0,0,0,0.1);\n}\n\nnav {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 1rem 5%;\n max-width: 1200px;\n margin: 0 auto;\n}\n\n.logo {\n font-size: 1.5rem;\n font-weight: bold;\n color: var(--primary-color);\n}\n\n.nav-links a {\n margin-left: 2rem;\n text-decoration: none;\n color: var(--primary-color);\n transition: color 0.3s ease;\n}\n\n.nav-links a:hover {\n color: var(--accent-color);\n}\n\n.mobile-menu {\n display: none;\n background: none;\n border: none;\n font-size: 1.5rem;\n cursor: pointer;\n}\n\n.hero {\n height: 100vh;\n display: flex;\n flex-direction: column;\n justify-content: center;\n align-items: center;\n text-align: center;\n padding: 2rem;\n background: linear-gradient(45deg, var(--primary-color), var(--accent-color));\n color: white;\n}\n\n.hero h1 {\n font-size: 3.5rem;\n margin-bottom: 1rem;\n animation: fadeIn 1s ease-out;\n}\n\n.hero p {\n font-size: 1.25rem;\n animation: fadeIn 1s ease-out 0.5s backwards;\n}\n\nsection {\n padding: 5rem 5%;\n max-width: 1200px;\n margin: 0 auto;\n}\n\nh2 {\n font-size: 2.5rem;\n margin-bottom: 2rem;\n color: var(--primary-color);\n}\n\n.pdf-grid {\n display: grid;\n grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));\n gap: 2rem;\n}\n\n.pdf-card {\n background: var(--card-background);\n padding: 1.5rem;\n border-radius: 10px;\n box-shadow: 0 4px 20px rgba(0,0,0,0.1);\n transition: transform 0.3s ease;\n}\n\n.pdf-card:hover {\n transform: translateY(-5px);\n}\n\n.pdf-preview {\n height: 200px;\n background: #eee;\n margin: 1rem 0;\n border-radius: 5px;\n}\n\n.btn {\n display: inline-block;\n padding: 0.8rem 1.5rem;\n background: var(--accent-color);\n color: white;\n text-decoration: none;\n border-radius: 5px;\n transition: background 0.3s ease;\n border: none;\n cursor: pointer;\n}\n\n.btn:hover {\n background: darken(var(--accent-color), 10%);\n}\n\nform {\n display: flex;\n flex-direction: column;\n gap: 1rem;\n max-width: 600px;\n margin: 0 auto;\n}\n\ninput, textarea {\n padding: 1rem;\n border: 1px solid #ddd;\n border-radius: 5px;\n font-size: 1rem;\n}\n\ntextarea {\n height: 150px;\n}\n\nfooter {\n text-align: center;\n padding: 2rem;\n background: var(--primary-color);\n color: white;\n}\n\n@keyframes fadeIn {\n from { opacity: 0; transform: translateY(20px); }\n to { opacity: 1; transform: translateY(0); }\n}\n\n@media (max-width: 768px) {\n .mobile-menu {\n display: block;\n }\n\n .nav-links {\n display: none;\n position: absolute;\n top: 100%;\n left: 0;\n width: 100%;\n background: white;\n padding: 1rem;\n }\n\n .nav-links.active {\n display: flex;\n flex-direction: column;\n }\n\n .nav-links a {\n margin: 0.5rem 0;\n }\n\n .hero h1 {\n font-size: 2.5rem;\n }\n}\n\n---script.js---\ndocument.addEventListener('DOMContentLoaded', () => {\n // Mobile menu toggle\n const mobileMenu = document.querySelector('.mobile-menu');\n const navLinks = document.querySelector('.nav-links');\n\n mobileMenu.addEventListener('click', () => {\n navLinks.classList.toggle('active');\n });\n\n // Smooth scrolling for navigation links\n document.querySelectorAll('a[href^=\"#\"]').forEach(anchor => {\n anchor.addEventListener('click', function (e) {\n e.preventDefault();\n const target = document.querySelector(this.getAttribute('href'));\n target.scrollIntoView({\n behavior: 'smooth'\n });\n });\n });\n\n // Contact form handling\n const contactForm = document.getElementById('contact-form');\n if (contactForm) {\n contactForm.addEventListener('submit', (e) => {\n e.preventDefault();\n // Add form submission logic here\n alert('Thank you for your message. We will get back to you soon.');\n contactForm.reset();\n });\n }\n\n // Intersection Observer for scroll animations\n const observer = new IntersectionObserver((entries) => {\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n entry.target.style.opacity = 1;\n entry.target.style.transform = 'translateY(0)';\n }\n });\n }, {\n threshold: 0.1\n });\n\n document.querySelectorAll('section').forEach(section => {\n section.style.opacity = 0;\n section.style.transform = 'translateY(20px)';\n section.style.transition = 'opacity 0.6s ease-out, transform 0.6s ease-out';\n observer.observe(section);\n });\n});\n\n---end---\n\nThis website features:\n- Clean, minimal design focusing on the art\n- Smooth animations and transitions\n- Mobile-responsive layout\n- PDF collection previews\n- Contact form\n- Accessibility features\n- SEO-friendly structure\n- Smooth scroll behavior\n- Intersection Observer for scroll animations\n- Modern CSS with variables and flexbox/grid\n- Clean semantic HTML5 markup\n\nThe design is elegant and professional while maintaining simplicity. The color scheme can be easily modified by changing the CSS variables in the root selector."
+ }
+ ],
+ "stop_reason": "end_turn",
+ "stop_sequence": null,
+ "usage": {
+ "input_tokens": 312,
+ "cache_creation_input_tokens": 0,
+ "cache_read_input_tokens": 0,
+ "output_tokens": 2713
+ }
+ }
readme.scroll
Changed around line 1
+ # artcurate.scroll.pub
+ Website generated by Claude from prompt: i am an art collector. i need to build a website that informs that gives my company visibility but is simple. i want to upload 5 pdf files that will show art collections by a few artists.
script.js
Changed around line 1
+ document.addEventListener('DOMContentLoaded', () => {
+ // Mobile menu toggle
+ const mobileMenu = document.querySelector('.mobile-menu');
+ const navLinks = document.querySelector('.nav-links');
+
+ mobileMenu.addEventListener('click', () => {
+ navLinks.classList.toggle('active');
+ });
+
+ // Smooth scrolling for navigation links
+ document.querySelectorAll('a[href^="#"]').forEach(anchor => {
+ anchor.addEventListener('click', function (e) {
+ e.preventDefault();
+ const target = document.querySelector(this.getAttribute('href'));
+ target.scrollIntoView({
+ behavior: 'smooth'
+ });
+ });
+ });
+
+ // Contact form handling
+ const contactForm = document.getElementById('contact-form');
+ if (contactForm) {
+ contactForm.addEventListener('submit', (e) => {
+ e.preventDefault();
+ // Add form submission logic here
+ alert('Thank you for your message. We will get back to you soon.');
+ contactForm.reset();
+ });
+ }
+
+ // Intersection Observer for scroll animations
+ const observer = new IntersectionObserver((entries) => {
+ entries.forEach(entry => {
+ if (entry.isIntersecting) {
+ entry.target.style.opacity = 1;
+ entry.target.style.transform = 'translateY(0)';
+ }
+ });
+ }, {
+ threshold: 0.1
+ });
+
+ document.querySelectorAll('section').forEach(section => {
+ section.style.opacity = 0;
+ section.style.transform = 'translateY(20px)';
+ section.style.transition = 'opacity 0.6s ease-out, transform 0.6s ease-out';
+ observer.observe(section);
+ });
+ });
style.css
Changed around line 1
+ :root {
+ --primary-color: #2c3e50;
+ --accent-color: #e74c3c;
+ --text-color: #333;
+ --background-color: #f9f9f9;
+ --card-background: #ffffff;
+ }
+
+ * {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+ }
+
+ body {
+ font-family: 'Helvetica Neue', Arial, sans-serif;
+ line-height: 1.6;
+ color: var(--text-color);
+ background-color: var(--background-color);
+ }
+
+ header {
+ position: fixed;
+ width: 100%;
+ background: rgba(255, 255, 255, 0.95);
+ backdrop-filter: blur(10px);
+ z-index: 1000;
+ box-shadow: 0 2px 10px rgba(0,0,0,0.1);
+ }
+
+ nav {
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+ padding: 1rem 5%;
+ max-width: 1200px;
+ margin: 0 auto;
+ }
+
+ .logo {
+ font-size: 1.5rem;
+ font-weight: bold;
+ color: var(--primary-color);
+ }
+
+ .nav-links a {
+ margin-left: 2rem;
+ text-decoration: none;
+ color: var(--primary-color);
+ transition: color 0.3s ease;
+ }
+
+ .nav-links a:hover {
+ color: var(--accent-color);
+ }
+
+ .mobile-menu {
+ display: none;
+ background: none;
+ border: none;
+ font-size: 1.5rem;
+ cursor: pointer;
+ }
+
+ .hero {
+ height: 100vh;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ text-align: center;
+ padding: 2rem;
+ background: linear-gradient(45deg, var(--primary-color), var(--accent-color));
+ color: white;
+ }
+
+ .hero h1 {
+ font-size: 3.5rem;
+ margin-bottom: 1rem;
+ animation: fadeIn 1s ease-out;
+ }
+
+ .hero p {
+ font-size: 1.25rem;
+ animation: fadeIn 1s ease-out 0.5s backwards;
+ }
+
+ section {
+ padding: 5rem 5%;
+ max-width: 1200px;
+ margin: 0 auto;
+ }
+
+ h2 {
+ font-size: 2.5rem;
+ margin-bottom: 2rem;
+ color: var(--primary-color);
+ }
+
+ .pdf-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
+ gap: 2rem;
+ }
+
+ .pdf-card {
+ background: var(--card-background);
+ padding: 1.5rem;
+ border-radius: 10px;
+ box-shadow: 0 4px 20px rgba(0,0,0,0.1);
+ transition: transform 0.3s ease;
+ }
+
+ .pdf-card:hover {
+ transform: translateY(-5px);
+ }
+
+ .pdf-preview {
+ height: 200px;
+ background: #eee;
+ margin: 1rem 0;
+ border-radius: 5px;
+ }
+
+ .btn {
+ display: inline-block;
+ padding: 0.8rem 1.5rem;
+ background: var(--accent-color);
+ color: white;
+ text-decoration: none;
+ border-radius: 5px;
+ transition: background 0.3s ease;
+ border: none;
+ cursor: pointer;
+ }
+
+ .btn:hover {
+ background: darken(var(--accent-color), 10%);
+ }
+
+ form {
+ display: flex;
+ flex-direction: column;
+ gap: 1rem;
+ max-width: 600px;
+ margin: 0 auto;
+ }
+
+ input, textarea {
+ padding: 1rem;
+ border: 1px solid #ddd;
+ border-radius: 5px;
+ font-size: 1rem;
+ }
+
+ textarea {
+ height: 150px;
+ }
+
+ footer {
+ text-align: center;
+ padding: 2rem;
+ background: var(--primary-color);
+ color: white;
+ }
+
+ @keyframes fadeIn {
+ from { opacity: 0; transform: translateY(20px); }
+ to { opacity: 1; transform: translateY(0); }
+ }
+
+ @media (max-width: 768px) {
+ .mobile-menu {
+ display: block;
+ }
+
+ .nav-links {
+ display: none;
+ position: absolute;
+ top: 100%;
+ left: 0;
+ width: 100%;
+ background: white;
+ padding: 1rem;
+ }
+
+ .nav-links.active {
+ display: flex;
+ flex-direction: column;
+ }
+
+ .nav-links a {
+ margin: 0.5rem 0;
+ }
+
+ .hero h1 {
+ font-size: 2.5rem;
+ }
+ }