commit bad9a00af6b496568a91c1af2f0f5599685868c0
Author: root <root@hub.scroll.pub>
Date: 2024-12-27 07:37:09 +0000
Subject: Initial commit
diff --git a/body.html b/body.html
new file mode 100644
index 0000000..8995a68
--- /dev/null
+++ b/body.html
@@ -0,0 +1,88 @@
+<header>
+ <nav>
+ <div class="logo">JoinSpace</div>
+ <div class="nav-links">
+ <a href="#features">Features</a>
+ <a href="#plans">Plans</a>
+ <a href="#apply">Apply</a>
+ </div>
+ </nav>
+</header>
+
+<main>
+ <section class="hero">
+ <h1>Your New Creative Workspace</h1>
+ <p>Join our thriving community of professionals, entrepreneurs, and creators.</p>
+ </section>
+
+ <section id="features" class="features">
+ <h2>Why Choose Us</h2>
+ <div class="feature-grid">
+ <div class="feature-card">
+ <span class="icon">🌐</span>
+ <h3>High-Speed Internet</h3>
+ <p>Gigabit fiber connection</p>
+ </div>
+ <div class="feature-card">
+ <span class="icon">☕</span>
+ <h3>Free Coffee & Tea</h3>
+ <p>Premium beverages all day</p>
+ </div>
+ <div class="feature-card">
+ <span class="icon">🤝</span>
+ <h3>Meeting Rooms</h3>
+ <p>Professional spaces to collaborate</p>
+ </div>
+ <div class="feature-card">
+ <span class="icon">🎯</span>
+ <h3>24/7 Access</h3>
+ <p>Work on your schedule</p>
+ </div>
+ </div>
+ </section>
+
+ <section id="apply" class="application">
+ <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" required>
+ </div>
+ <div class="form-group">
+ <label for="email">Email Address</label>
+ <input type="email" id="email" required>
+ </div>
+ <div class="form-group">
+ <label for="phone">Phone Number</label>
+ <input type="tel" id="phone" required>
+ </div>
+ <div class="form-group">
+ <label for="membership">Preferred Membership</label>
+ <select id="membership" required>
+ <option value="">Select a plan</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">Tell us about yourself</label>
+ <textarea id="message" rows="4"></textarea>
+ </div>
+ <button type="submit">Submit Application</button>
+ </form>
+ </section>
+</main>
+
+<footer>
+ <div class="footer-content">
+ <div class="footer-info">
+ <h4>Location</h4>
+ <p>123 Innovation Street<br>Tech City, TC 12345</p>
+ </div>
+ <div class="footer-info">
+ <h4>Contact</h4>
+ <p>hello@joinspace.scroll.pub<br>+1 (555) 123-4567</p>
+ </div>
+ </div>
+</footer>
diff --git a/index.scroll b/index.scroll
new file mode 100644
index 0000000..976d743
--- /dev/null
+++ b/index.scroll
@@ -0,0 +1,10 @@
+buildHtml
+baseUrl https://joinspace.scroll.pub
+metaTags
+ description "Apply to join our vibrant coworking community. Flexible workspace solutions for professionals."
+ keywords "coworking space, workspace application, office space, professional community"
+editButton /edit.html
+title Join Our Coworking Space
+style.css
+body.html
+script.js
diff --git a/readme.scroll b/readme.scroll
new file mode 100644
index 0000000..9401f97
--- /dev/null
+++ b/readme.scroll
@@ -0,0 +1,2 @@
+# joinspace.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..1c83375
--- /dev/null
+++ b/script.js
@@ -0,0 +1,74 @@
+document.addEventListener('DOMContentLoaded', () => {
+ // Smooth scrolling for navigation links
+ document.querySelectorAll('a[href^="#"]').forEach(anchor => {
+ anchor.addEventListener('click', function (e) {
+ e.preventDefault();
+ document.querySelector(this.getAttribute('href')).scrollIntoView({
+ behavior: 'smooth'
+ });
+ });
+ });
+
+ // Form handling
+ const form = document.getElementById('applicationForm');
+
+ form.addEventListener('submit', (e) => {
+ e.preventDefault();
+
+ // Collect form data
+ const formData = {
+ name: document.getElementById('name').value,
+ email: document.getElementById('email').value,
+ phone: document.getElementById('phone').value,
+ membership: document.getElementById('membership').value,
+ message: document.getElementById('message').value
+ };
+
+ // Validate form data
+ if (!validateForm(formData)) {
+ return;
+ }
+
+ // Show success message
+ alert('Thank you for your application! We will contact you soon.');
+ form.reset();
+ });
+});
+
+function validateForm(data) {
+ // Basic email validation
+ const emailRegex = /^[^\s@]+@[^\s@]+\.[^\s@]+$/;
+ if (!emailRegex.test(data.email)) {
+ alert('Please enter a valid email address');
+ return false;
+ }
+
+ // Basic phone validation
+ const phoneRegex = /^\+?[\d\s-]{10,}$/;
+ if (!phoneRegex.test(data.phone)) {
+ alert('Please enter a valid phone number');
+ return false;
+ }
+
+ return true;
+}
+
+// Add smooth reveal animations on scroll
+const observerOptions = {
+ threshold: 0.1
+};
+
+const observer = new IntersectionObserver((entries) => {
+ entries.forEach(entry => {
+ if (entry.isIntersecting) {
+ entry.target.style.opacity = '1';
+ entry.target.style.transform = 'translateY(0)';
+ }
+ });
+}, observerOptions);
+
+document.querySelectorAll('.feature-card').forEach(card => {
+ card.style.opacity = '0';
+ card.style.transform = 'translateY(20px)';
+ observer.observe(card);
+});
diff --git a/style.css b/style.css
new file mode 100644
index 0000000..e5d878c
--- /dev/null
+++ b/style.css
@@ -0,0 +1,190 @@
+:root {
+ --primary-color: #2a6fff;
+ --secondary-color: #f5f7ff;
+ --text-color: #333;
+ --spacing: 2rem;
+ --border-radius: 12px;
+}
+
+* {
+ margin: 0;
+ padding: 0;
+ box-sizing: border-box;
+}
+
+body {
+ font-family: system-ui, -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
+ line-height: 1.6;
+ color: var(--text-color);
+}
+
+/* Header & Navigation */
+header {
+ background: white;
+ box-shadow: 0 2px 10px rgba(0,0,0,0.1);
+ position: fixed;
+ width: 100%;
+ top: 0;
+ z-index: 100;
+}
+
+nav {
+ max-width: 1200px;
+ margin: 0 auto;
+ padding: 1rem var(--spacing);
+ display: flex;
+ justify-content: space-between;
+ align-items: center;
+}
+
+.logo {
+ font-size: 1.5rem;
+ font-weight: bold;
+ color: var(--primary-color);
+}
+
+.nav-links a {
+ margin-left: 2rem;
+ text-decoration: none;
+ color: var(--text-color);
+ transition: color 0.3s;
+}
+
+.nav-links a:hover {
+ color: var(--primary-color);
+}
+
+/* Hero Section */
+.hero {
+ height: 80vh;
+ display: flex;
+ flex-direction: column;
+ justify-content: center;
+ align-items: center;
+ text-align: center;
+ background: linear-gradient(135deg, var(--secondary-color), white);
+ padding: var(--spacing);
+ margin-top: 60px;
+}
+
+.hero h1 {
+ font-size: 3.5rem;
+ margin-bottom: 1rem;
+ background: linear-gradient(45deg, var(--primary-color), #7c4dff);
+ -webkit-background-clip: text;
+ -webkit-text-fill-color: transparent;
+}
+
+/* Features Section */
+.features {
+ padding: var(--spacing);
+ background: white;
+}
+
+.feature-grid {
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(250px, 1fr));
+ gap: var(--spacing);
+ margin-top: var(--spacing);
+}
+
+.feature-card {
+ background: var(--secondary-color);
+ padding: var(--spacing);
+ border-radius: var(--border-radius);
+ text-align: center;
+ transition: transform 0.3s;
+}
+
+.feature-card:hover {
+ transform: translateY(-5px);
+}
+
+.icon {
+ font-size: 2.5rem;
+ margin-bottom: 1rem;
+}
+
+/* Application Form */
+.application {
+ padding: var(--spacing);
+ background: var(--secondary-color);
+}
+
+.application-form {
+ max-width: 600px;
+ margin: 2rem auto;
+ background: white;
+ padding: var(--spacing);
+ border-radius: var(--border-radius);
+ 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: var(--border-radius);
+ transition: border-color 0.3s;
+}
+
+input:focus, select:focus, textarea:focus {
+ border-color: var(--primary-color);
+ outline: none;
+}
+
+button {
+ background: var(--primary-color);
+ color: white;
+ padding: 1rem 2rem;
+ border: none;
+ border-radius: var(--border-radius);
+ cursor: pointer;
+ width: 100%;
+ font-size: 1.1rem;
+ transition: background-color 0.3s;
+}
+
+button:hover {
+ background: #1a5ae0;
+}
+
+/* Footer */
+footer {
+ background: var(--text-color);
+ color: white;
+ padding: var(--spacing);
+}
+
+.footer-content {
+ max-width: 1200px;
+ margin: 0 auto;
+ display: grid;
+ grid-template-columns: repeat(auto-fit, minmax(200px, 1fr));
+ gap: var(--spacing);
+}
+
+/* Responsive Design */
+@media (max-width: 768px) {
+ .hero h1 {
+ font-size: 2.5rem;
+ }
+
+ .nav-links {
+ display: none;
+ }
+
+ .application-form {
+ padding: 1rem;
+ }
+}