commit d2405d019d06c918aae69fc5f12e5a30e8bcbe39
Author: root <root@hub.scroll.pub> Date: 2024-12-27 07:52:46 +0000 Subject: Initial commit diff --git a/body.html b/body.html new file mode 100644 index 0000000..94bdeb6 --- /dev/null +++ b/body.html @@ -0,0 +1,107 @@ +<header> + <nav> + <div class="logo">JoinDesk</div> + <div class="nav-links"> + <a href="#about">About</a> + <a href="#amenities">Amenities</a> + <a href="#apply">Apply</a> + </div> + <button class="menu-toggle" aria-label="Toggle menu"> + <span></span><span></span><span></span> + </button> + </nav> +</header> + +<main> + <section class="hero"> + <h1>Your New Workspace Awaits</h1> + <p>Join our thriving community of professionals</p> + <a href="#apply" class="cta-button">Apply Now</a> + </section> + + <section id="about" class="about"> + <h2>Welcome to Our Space</h2> + <div class="features-grid"> + <div class="feature"> + <div class="feature-icon">🌟</div> + <h3>Premium Location</h3> + <p>Central business district with easy access</p> + </div> + <div class="feature"> + <div class="feature-icon">🤝</div> + <h3>Community</h3> + <p>Network with like-minded professionals</p> + </div> + <div class="feature"> + <div class="feature-icon">⚡</div> + <h3>High-Speed Internet</h3> + <p>Lightning-fast fiber connection</p> + </div> + </div> + </section> + + <section id="amenities" class="amenities"> + <h2>Amenities</h2> + <div class="amenities-list"> + <div class="amenity">24/7 Access</div> + <div class="amenity">Meeting Rooms</div> + <div class="amenity">Coffee Bar</div> + <div class="amenity">Phone Booths</div> + <div class="amenity">Printing Services</div> + <div class="amenity">Lounge Areas</div> + </div> + </section> + + <section id="apply" class="apply"> + <h2>Apply Now</h2> + <form id="applicationForm" class="application-form"> + <div class="form-group"> + <label for="name">Full Name</label> + <input type="text" id="name" name="name" required> + </div> + <div class="form-group"> + <label for="email">Email Address</label> + <input type="email" id="email" name="email" required> + </div> + <div class="form-group"> + <label for="phone">Phone Number</label> + <input type="tel" id="phone" name="phone" required> + </div> + <div class="form-group"> + <label for="membership">Preferred Membership</label> + <select id="membership" name="membership" required> + <option value="">Select an option</option> + <option value="hot-desk">Hot Desk</option> + <option value="dedicated">Dedicated Desk</option> + <option value="private">Private Office</option> + </select> + </div> + <div class="form-group"> + <label for="message">Additional Information</label> + <textarea id="message" name="message" rows="4"></textarea> + </div> + <button type="submit" class="submit-button">Submit Application</button> + </form> + </section> +</main> + +<footer> + <div class="footer-content"> + <div class="footer-section"> + <h4>Location</h4> + <p>123 Business Avenue<br>Innovation District<br>City, State 12345</p> + </div> + <div class="footer-section"> + <h4>Contact</h4> + <p>hello@joindesk.scroll.pub<br>+1 (555) 123-4567</p> + </div> + <div class="footer-section"> + <h4>Follow Us</h4> + <div class="social-links"> + <a href="#" aria-label="Twitter">Twitter</a> + <a href="#" aria-label="LinkedIn">LinkedIn</a> + <a href="#" aria-label="Instagram">Instagram</a> + </div> + </div> + </div> +</footer> \ No newline at end of file diff --git a/index.scroll b/index.scroll new file mode 100644 index 0000000..6313adc --- /dev/null +++ b/index.scroll @@ -0,0 +1,10 @@ +buildHtml +baseUrl https://joindesk.scroll.pub +metaTags + description "Apply to join our vibrant coworking community. Flexible workspace solutions for professionals and teams." + keywords "coworking space, workspace application, office space, professional workspace, desk rental" +editButton /edit.html +title Join Our Coworking Space | JoinDesk +style.css +body.html +script.js \ No newline at end of file diff --git a/readme.scroll b/readme.scroll new file mode 100644 index 0000000..97245f3 --- /dev/null +++ b/readme.scroll @@ -0,0 +1,2 @@ +# joindesk.scroll.pub +Website generated by Claude from prompt: I want a website that people who intend to join our coworking space can apply using. Be creative \ No newline at end of file diff --git a/script.js b/script.js new file mode 100644 index 0000000..24209c0 --- /dev/null +++ b/script.js @@ -0,0 +1,90 @@ +document.addEventListener('DOMContentLoaded', function() { + // Mobile menu toggle + const menuToggle = document.querySelector('.menu-toggle'); + const navLinks = document.querySelector('.nav-links'); + + menuToggle.addEventListener('click', function() { + navLinks.style.display = navLinks.style.display === 'flex' ? 'none' : 'flex'; + this.classList.toggle('active'); + }); + + // Smooth scroll for navigation links + document.querySelectorAll('a[href^="#"]').forEach(anchor => { + anchor.addEventListener('click', function(e) { + e.preventDefault(); + const target = document.querySelector(this.getAttribute('href')); + + if (target) { + window.scrollTo({ + top: target.offsetTop - 80, + behavior: 'smooth' + }); + } + + // Close mobile menu if open + if (window.innerWidth <= 768) { + navLinks.style.display = 'none'; + menuToggle.classList.remove('active'); + } + }); + }); + + // Form submission handling + const applicationForm = document.getElementById('applicationForm'); + + applicationForm.addEventListener('submit', function(e) { + e.preventDefault(); + + // Form validation + const requiredFields = applicationForm.querySelectorAll('[required]'); + let isValid = true; + + requiredFields.forEach(field => { + if (!field.value.trim()) { + isValid = false; + field.style.borderColor = '#ff0000'; + } else { + field.style.borderColor = '#eee'; + } + }); + + if (isValid) { + // Show success message + const submitButton = applicationForm.querySelector('.submit-button'); + const originalText = submitButton.textContent; + + submitButton.textContent = 'Application Submitted!'; + submitButton.style.backgroundColor = '#4CAF50'; + + // Reset form and button after delay + setTimeout(() => { + applicationForm.reset(); + submitButton.textContent = originalText; + submitButton.style.backgroundColor = ''; + }, 3000); + } + }); + + // Intersection Observer for animations + const observerOptions = { + threshold: 0.1, + rootMargin: '0px 0px -50px 0px' + }; + + const observer = new IntersectionObserver((entries) => { + entries.forEach(entry => { + if (entry.isIntersecting) { + entry.target.style.opacity = '1'; + entry.target.style.transform = 'translateY(0)'; + } + }); + }, observerOptions); + + // Observe sections for fade-in effect + document.querySelectorAll('section').forEach(section => { + section.style.opacity = '0'; + section.style.transform = 'translateY(20px)'; + section.style.transition = 'all 0.6s ease-out'; + observer.observe(section); + }); +}); \ No newline at end of file diff --git a/style.css b/style.css new file mode 100644 index 0000000..05d35dd --- /dev/null +++ b/style.css @@ -0,0 +1,262 @@ +:root { + --primary-color: #2a6bf2; + --secondary-color: #1a1a1a; + --accent-color: #ffd700; + --text-color: #333333; + --light-bg: #f5f7fa; + --transition: all 0.3s ease; +} + +* { + margin: 0; + padding: 0; + box-sizing: border-box; +} + +body { + font-family: 'Inter', system-ui, -apple-system, sans-serif; + line-height: 1.6; + color: var(--text-color); +} + +header { + position: fixed; + width: 100%; + top: 0; + 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: 700; + color: var(--primary-color); +} + +.nav-links a { + margin-left: 2rem; + text-decoration: none; + color: var(--secondary-color); + transition: var(--transition); +} + +.nav-links a:hover { + color: var(--primary-color); +} + +.menu-toggle { + display: none; +} + +main { + margin-top: 4rem; +} + +.hero { + height: 90vh; + display: flex; + flex-direction: column; + justify-content: center; + align-items: center; + text-align: center; + background: linear-gradient(135deg, #f5f7fa 0%, #c3cfe2 100%); + padding: 2rem; +} + +.hero h1 { + font-size: 3.5rem; + margin-bottom: 1rem; + background: linear-gradient(45deg, var(--primary-color), var(--accent-color)); + -webkit-background-clip: text; + -webkit-text-fill-color: transparent; + animation: gradientFlow 8s ease infinite; +} + +@keyframes gradientFlow { + 0% { background-position: 0% 50%; } + 50% { background-position: 100% 50%; } + 100% { background-position: 0% 50%; } +} + +.cta-button { + display: inline-block; + padding: 1rem 2rem; + background: var(--primary-color); + color: white; + text-decoration: none; + border-radius: 30px; + margin-top: 2rem; + transition: var(--transition); + box-shadow: 0 4px 15px rgba(42, 107, 242, 0.2); +} + +.cta-button:hover { + transform: translateY(-2px); + box-shadow: 0 6px 20px rgba(42, 107, 242, 0.3); +} + +section { + padding: 5rem 5%; + max-width: 1200px; + margin: 0 auto; +} + +.features-grid { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); + gap: 2rem; + margin-top: 3rem; +} + +.feature { + text-align: center; + padding: 2rem; + background: white; + border-radius: 10px; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); + transition: var(--transition); +} + +.feature:hover { + transform: translateY(-5px); + box-shadow: 0 8px 15px rgba(0, 0, 0, 0.1); +} + +.feature-icon { + font-size: 2.5rem; + margin-bottom: 1rem; +} + +.amenities-list { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); + gap: 1.5rem; + margin-top: 2rem; +} + +.amenity { + background: var(--light-bg); + padding: 1rem; + border-radius: 8px; + text-align: center; + transition: var(--transition); +} + +.amenity:hover { + background: var(--primary-color); + color: white; + transform: scale(1.05); +} + +.application-form { + max-width: 600px; + margin: 2rem auto; + padding: 2rem; + background: white; + border-radius: 10px; + box-shadow: 0 4px 6px rgba(0, 0, 0, 0.1); +} + +.form-group { + margin-bottom: 1.5rem; +} + +label { + display: block; + margin-bottom: 0.5rem; + font-weight: 500; +} + +input, select, textarea { + width: 100%; + padding: 0.8rem; + border: 2px solid #eee; + border-radius: 6px; + transition: var(--transition); +} + +input:focus, select:focus, textarea:focus { + outline: none; + border-color: var(--primary-color); +} + +.submit-button { + width: 100%; + padding: 1rem; + background: var(--primary-color); + color: white; + border: none; + border-radius: 6px; + cursor: pointer; + transition: var(--transition); +} + +.submit-button:hover { + background: #1a5ad9; +} + +footer { + background: var(--secondary-color); + color: white; + padding: 3rem 5%; +} + +.footer-content { + display: grid; + grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); + gap: 2rem; + max-width: 1200px; + margin: 0 auto; +} + +.social-links a { + color: white; + text-decoration: none; + margin-right: 1rem; + transition: var(--transition); +} + +.social-links a:hover { + color: var(--accent-color); +} + +@media (max-width: 768px) { + .nav-links { + display: none; + } + + .menu-toggle { + display: block; + background: none; + border: none; + cursor: pointer; + } + + .menu-toggle span { + display: block; + width: 25px; + height: 3px; + background: var(--secondary-color); + margin: 5px 0; + transition: var(--transition); + } + + .hero h1 { + font-size: 2.5rem; + } + + section { + padding: 3rem 5%; + } +} \ No newline at end of file