Spaces:
				
			
			
	
			
			
					
		Running
		
	
	
	
			
			
	
	
	
	
		
		
					
		Running
		
	Show image
Browse files- README.md +8 -5
- components/footer.js +61 -0
- components/navbar.js +68 -0
- index.html +70 -19
- script.js +12 -0
- style.css +14 -21
    	
        README.md
    CHANGED
    
    | @@ -1,10 +1,13 @@ | |
| 1 | 
             
            ---
         | 
| 2 | 
            -
            title:  | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
             
            sdk: static
         | 
| 7 | 
             
            pinned: false
         | 
|  | |
|  | |
| 8 | 
             
            ---
         | 
| 9 |  | 
| 10 | 
            -
             | 
|  | 
|  | |
| 1 | 
             
            ---
         | 
| 2 | 
            +
            title: PixelPond Gallery π¨
         | 
| 3 | 
            +
            colorFrom: green
         | 
| 4 | 
            +
            colorTo: yellow
         | 
| 5 | 
            +
            emoji: π³
         | 
| 6 | 
             
            sdk: static
         | 
| 7 | 
             
            pinned: false
         | 
| 8 | 
            +
            tags:
         | 
| 9 | 
            +
              - deepsite-v3
         | 
| 10 | 
             
            ---
         | 
| 11 |  | 
| 12 | 
            +
            # Welcome to your new DeepSite project!
         | 
| 13 | 
            +
            This project was created with [DeepSite](https://huggingface.co/deepsite).
         | 
    	
        components/footer.js
    ADDED
    
    | @@ -0,0 +1,61 @@ | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | 
|  | |
| 1 | 
            +
            class CustomFooter extends HTMLElement {
         | 
| 2 | 
            +
              connectedCallback() {
         | 
| 3 | 
            +
                this.attachShadow({ mode: 'open' });
         | 
| 4 | 
            +
                this.shadowRoot.innerHTML = `
         | 
| 5 | 
            +
                  <style>
         | 
| 6 | 
            +
                    footer {
         | 
| 7 | 
            +
                      background: #1e293b;
         | 
| 8 | 
            +
                      color: white;
         | 
| 9 | 
            +
                      padding: 2rem;
         | 
| 10 | 
            +
                      text-align: center;
         | 
| 11 | 
            +
                      margin-top: auto;
         | 
| 12 | 
            +
                    }
         | 
| 13 | 
            +
                    .footer-content {
         | 
| 14 | 
            +
                      max-width: 1200px;
         | 
| 15 | 
            +
                      margin: 0 auto;
         | 
| 16 | 
            +
                      display: flex;
         | 
| 17 | 
            +
                      flex-direction: column;
         | 
| 18 | 
            +
                      gap: 1rem;
         | 
| 19 | 
            +
                    }
         | 
| 20 | 
            +
                    .social-links {
         | 
| 21 | 
            +
                      display: flex;
         | 
| 22 | 
            +
                      justify-content: center;
         | 
| 23 | 
            +
                      gap: 1.5rem;
         | 
| 24 | 
            +
                      margin-bottom: 1rem;
         | 
| 25 | 
            +
                    }
         | 
| 26 | 
            +
                    .social-links a {
         | 
| 27 | 
            +
                      color: white;
         | 
| 28 | 
            +
                      transition: color 0.2s;
         | 
| 29 | 
            +
                    }
         | 
| 30 | 
            +
                    .social-links a:hover {
         | 
| 31 | 
            +
                      color: #818cf8;
         | 
| 32 | 
            +
                    }
         | 
| 33 | 
            +
                    .copyright {
         | 
| 34 | 
            +
                      font-size: 0.875rem;
         | 
| 35 | 
            +
                      color: #94a3b8;
         | 
| 36 | 
            +
                    }
         | 
| 37 | 
            +
                    @media (min-width: 768px) {
         | 
| 38 | 
            +
                      .footer-content {
         | 
| 39 | 
            +
                        flex-direction: row;
         | 
| 40 | 
            +
                        justify-content: space-between;
         | 
| 41 | 
            +
                        align-items: center;
         | 
| 42 | 
            +
                      }
         | 
| 43 | 
            +
                    }
         | 
| 44 | 
            +
                  </style>
         | 
| 45 | 
            +
                  <footer>
         | 
| 46 | 
            +
                    <div class="footer-content">
         | 
| 47 | 
            +
                      <div class="social-links">
         | 
| 48 | 
            +
                        <a href="#"><i data-feather="twitter"></i></a>
         | 
| 49 | 
            +
                        <a href="#"><i data-feather="instagram"></i></a>
         | 
| 50 | 
            +
                        <a href="#"><i data-feather="facebook"></i></a>
         | 
| 51 | 
            +
                        <a href="#"><i data-feather="github"></i></a>
         | 
| 52 | 
            +
                      </div>
         | 
| 53 | 
            +
                      <div class="copyright">
         | 
| 54 | 
            +
                        © 2024 PixelPond Gallery. All images are from static.photos
         | 
| 55 | 
            +
                      </div>
         | 
| 56 | 
            +
                    </div>
         | 
| 57 | 
            +
                  </footer>
         | 
| 58 | 
            +
                `;
         | 
| 59 | 
            +
              }
         | 
| 60 | 
            +
            }
         | 
| 61 | 
            +
            customElements.define('custom-footer', CustomFooter);
         | 
    	
        components/navbar.js
    ADDED
    
    | @@ -0,0 +1,68 @@ | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | 
|  | |
| 1 | 
            +
            class CustomNavbar extends HTMLElement {
         | 
| 2 | 
            +
              connectedCallback() {
         | 
| 3 | 
            +
                this.attachShadow({ mode: 'open' });
         | 
| 4 | 
            +
                this.shadowRoot.innerHTML = `
         | 
| 5 | 
            +
                  <style>
         | 
| 6 | 
            +
                    nav {
         | 
| 7 | 
            +
                      background: linear-gradient(135deg, #6366f1 0%, #8b5cf6 100%);
         | 
| 8 | 
            +
                      padding: 1rem 2rem;
         | 
| 9 | 
            +
                      display: flex;
         | 
| 10 | 
            +
                      justify-content: space-between;
         | 
| 11 | 
            +
                      align-items: center;
         | 
| 12 | 
            +
                      box-shadow: 0 4px 6px -1px rgba(0, 0, 0, 0.1);
         | 
| 13 | 
            +
                    }
         | 
| 14 | 
            +
                    .logo { 
         | 
| 15 | 
            +
                      color: white; 
         | 
| 16 | 
            +
                      font-weight: bold; 
         | 
| 17 | 
            +
                      font-size: 1.5rem;
         | 
| 18 | 
            +
                      display: flex;
         | 
| 19 | 
            +
                      align-items: center;
         | 
| 20 | 
            +
                      gap: 0.5rem;
         | 
| 21 | 
            +
                    }
         | 
| 22 | 
            +
                    ul { 
         | 
| 23 | 
            +
                      display: flex; 
         | 
| 24 | 
            +
                      gap: 2rem; 
         | 
| 25 | 
            +
                      list-style: none; 
         | 
| 26 | 
            +
                      margin: 0; 
         | 
| 27 | 
            +
                      padding: 0; 
         | 
| 28 | 
            +
                    }
         | 
| 29 | 
            +
                    a { 
         | 
| 30 | 
            +
                      color: white; 
         | 
| 31 | 
            +
                      text-decoration: none; 
         | 
| 32 | 
            +
                      transition: opacity 0.2s;
         | 
| 33 | 
            +
                      font-weight: 500;
         | 
| 34 | 
            +
                      display: flex;
         | 
| 35 | 
            +
                      align-items: center;
         | 
| 36 | 
            +
                      gap: 0.5rem;
         | 
| 37 | 
            +
                    }
         | 
| 38 | 
            +
                    a:hover { 
         | 
| 39 | 
            +
                      opacity: 0.8; 
         | 
| 40 | 
            +
                    }
         | 
| 41 | 
            +
                    @media (max-width: 768px) {
         | 
| 42 | 
            +
                      nav {
         | 
| 43 | 
            +
                        flex-direction: column;
         | 
| 44 | 
            +
                        gap: 1rem;
         | 
| 45 | 
            +
                        padding: 1rem;
         | 
| 46 | 
            +
                      }
         | 
| 47 | 
            +
                      ul {
         | 
| 48 | 
            +
                        width: 100%;
         | 
| 49 | 
            +
                        justify-content: space-around;
         | 
| 50 | 
            +
                      }
         | 
| 51 | 
            +
                    }
         | 
| 52 | 
            +
                  </style>
         | 
| 53 | 
            +
                  <nav>
         | 
| 54 | 
            +
                    <div class="logo">
         | 
| 55 | 
            +
                      <i data-feather="image"></i>
         | 
| 56 | 
            +
                      PixelPond
         | 
| 57 | 
            +
                    </div>
         | 
| 58 | 
            +
                    <ul>
         | 
| 59 | 
            +
                      <li><a href="/"><i data-feather="home"></i> Home</a></li>
         | 
| 60 | 
            +
                      <li><a href="#"><i data-feather="grid"></i> Gallery</a></li>
         | 
| 61 | 
            +
                      <li><a href="#"><i data-feather="upload"></i> Upload</a></li>
         | 
| 62 | 
            +
                      <li><a href="#"><i data-feather="user"></i> Profile</a></li>
         | 
| 63 | 
            +
                    </ul>
         | 
| 64 | 
            +
                  </nav>
         | 
| 65 | 
            +
                `;
         | 
| 66 | 
            +
              }
         | 
| 67 | 
            +
            }
         | 
| 68 | 
            +
            customElements.define('custom-navbar', CustomNavbar);
         | 
    	
        index.html
    CHANGED
    
    | @@ -1,19 +1,70 @@ | |
| 1 | 
            -
            <! | 
| 2 | 
            -
            <html>
         | 
| 3 | 
            -
             | 
| 4 | 
            -
             | 
| 5 | 
            -
             | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 8 | 
            -
             | 
| 9 | 
            -
             | 
| 10 | 
            -
             | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
             | 
| 14 | 
            -
             | 
| 15 | 
            -
             | 
| 16 | 
            -
             | 
| 17 | 
            -
             | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | 
|  | |
| 1 | 
            +
            <!DOCTYPE html>
         | 
| 2 | 
            +
            <html lang="en">
         | 
| 3 | 
            +
            <head>
         | 
| 4 | 
            +
                <meta charset="UTF-8">
         | 
| 5 | 
            +
                <meta name="viewport" content="width=device-width, initial-scale=1.0">
         | 
| 6 | 
            +
                <title>PixelPond Gallery</title>
         | 
| 7 | 
            +
                <link rel="stylesheet" href="style.css">
         | 
| 8 | 
            +
                <script src="https://cdn.tailwindcss.com"></script>
         | 
| 9 | 
            +
                <script src="https://unpkg.com/feather-icons"></script>
         | 
| 10 | 
            +
                <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script>
         | 
| 11 | 
            +
                <script src="components/navbar.js"></script>
         | 
| 12 | 
            +
                <script src="components/footer.js"></script>
         | 
| 13 | 
            +
            </head>
         | 
| 14 | 
            +
            <body class="bg-gray-100">
         | 
| 15 | 
            +
                <custom-navbar></custom-navbar>
         | 
| 16 | 
            +
             | 
| 17 | 
            +
                <main class="container mx-auto px-4 py-12">
         | 
| 18 | 
            +
                    <h1 class="text-4xl font-bold text-center mb-12 text-gray-800">PixelPond Gallery</h1>
         | 
| 19 | 
            +
                    
         | 
| 20 | 
            +
                    <div class="grid grid-cols-1 sm:grid-cols-2 md:grid-cols-3 lg:grid-cols-4 gap-6">
         | 
| 21 | 
            +
                        <!-- Image Gallery -->
         | 
| 22 | 
            +
                        <div class="bg-white rounded-lg shadow-md overflow-hidden transition-transform hover:scale-105">
         | 
| 23 | 
            +
                            <img src="http://static.photos/nature/640x360/1" alt="Nature" class="w-full h-48 object-cover">
         | 
| 24 | 
            +
                            <div class="p-4">
         | 
| 25 | 
            +
                                <h3 class="font-semibold text-lg">Mountain View</h3>
         | 
| 26 | 
            +
                                <p class="text-gray-600">Beautiful landscape</p>
         | 
| 27 | 
            +
                            </div>
         | 
| 28 | 
            +
                        </div>
         | 
| 29 | 
            +
             | 
| 30 | 
            +
                        <div class="bg-white rounded-lg shadow-md overflow-hidden transition-transform hover:scale-105">
         | 
| 31 | 
            +
                            <img src="http://static.photos/cityscape/640x360/2" alt="City" class="w-full h-48 object-cover">
         | 
| 32 | 
            +
                            <div class="p-4">
         | 
| 33 | 
            +
                                <h3 class="font-semibold text-lg">Urban Life</h3>
         | 
| 34 | 
            +
                                <p class="text-gray-600">City skyline</p>
         | 
| 35 | 
            +
                            </div>
         | 
| 36 | 
            +
                        </div>
         | 
| 37 | 
            +
             | 
| 38 | 
            +
                        <div class="bg-white rounded-lg shadow-md overflow-hidden transition-transform hover:scale-105">
         | 
| 39 | 
            +
                            <img src="http://static.photos/food/640x360/3" alt="Food" class="w-full h-48 object-cover">
         | 
| 40 | 
            +
                            <div class="p-4">
         | 
| 41 | 
            +
                                <h3 class="font-semibold text-lg">Delicious Meal</h3>
         | 
| 42 | 
            +
                                <p class="text-gray-600">Gourmet dish</p>
         | 
| 43 | 
            +
                            </div>
         | 
| 44 | 
            +
                        </div>
         | 
| 45 | 
            +
             | 
| 46 | 
            +
                        <div class="bg-white rounded-lg shadow-md overflow-hidden transition-transform hover:scale-105">
         | 
| 47 | 
            +
                            <img src="http://static.photos/travel/640x360/4" alt="Travel" class="w-full h-48 object-cover">
         | 
| 48 | 
            +
                            <div class="p-4">
         | 
| 49 | 
            +
                                <h3 class="font-semibold text-lg">Exotic Location</h3>
         | 
| 50 | 
            +
                                <p class="text-gray-600">Vacation spot</p>
         | 
| 51 | 
            +
                            </div>
         | 
| 52 | 
            +
                        </div>
         | 
| 53 | 
            +
                    </div>
         | 
| 54 | 
            +
             | 
| 55 | 
            +
                    <div class="mt-12 text-center">
         | 
| 56 | 
            +
                        <button class="bg-indigo-600 hover:bg-indigo-700 text-white font-medium py-2 px-6 rounded-full transition duration-300">
         | 
| 57 | 
            +
                            Load More
         | 
| 58 | 
            +
                        </button>
         | 
| 59 | 
            +
                    </div>
         | 
| 60 | 
            +
                </main>
         | 
| 61 | 
            +
             | 
| 62 | 
            +
                <custom-footer></custom-footer>
         | 
| 63 | 
            +
             | 
| 64 | 
            +
                <script src="script.js"></script>
         | 
| 65 | 
            +
                <script>
         | 
| 66 | 
            +
                    feather.replace();
         | 
| 67 | 
            +
                </script>
         | 
| 68 | 
            +
            <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script>
         | 
| 69 | 
            +
            </body>
         | 
| 70 | 
            +
            </html>
         | 
    	
        script.js
    ADDED
    
    | @@ -0,0 +1,12 @@ | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | |
|  | 
|  | |
| 1 | 
            +
            // Gallery functionality
         | 
| 2 | 
            +
            document.addEventListener('DOMContentLoaded', () => {
         | 
| 3 | 
            +
                console.log('PixelPond Gallery loaded');
         | 
| 4 | 
            +
                
         | 
| 5 | 
            +
                // Example of adding more images dynamically
         | 
| 6 | 
            +
                const loadMoreBtn = document.querySelector('button');
         | 
| 7 | 
            +
                if (loadMoreBtn) {
         | 
| 8 | 
            +
                    loadMoreBtn.addEventListener('click', () => {
         | 
| 9 | 
            +
                        alert('More images would be loaded here in a real implementation!');
         | 
| 10 | 
            +
                    });
         | 
| 11 | 
            +
                }
         | 
| 12 | 
            +
            });
         | 
    	
        style.css
    CHANGED
    
    | @@ -1,28 +1,21 @@ | |
| 1 | 
            -
             | 
| 2 | 
            -
             | 
| 3 | 
            -
            	font-family: -apple-system, BlinkMacSystemFont, "Arial", sans-serif;
         | 
| 4 | 
            -
            }
         | 
| 5 |  | 
| 6 | 
            -
             | 
| 7 | 
            -
             | 
| 8 | 
            -
             | 
|  | |
|  | |
| 9 | 
             
            }
         | 
| 10 |  | 
| 11 | 
            -
             | 
| 12 | 
            -
             | 
| 13 | 
            -
            	font-size: 15px;
         | 
| 14 | 
            -
            	margin-bottom: 10px;
         | 
| 15 | 
            -
            	margin-top: 5px;
         | 
| 16 | 
             
            }
         | 
| 17 |  | 
| 18 | 
            -
             | 
| 19 | 
            -
             | 
| 20 | 
            -
            	margin: 0 auto;
         | 
| 21 | 
            -
            	padding: 16px;
         | 
| 22 | 
            -
            	border: 1px solid lightgray;
         | 
| 23 | 
            -
            	border-radius: 16px;
         | 
| 24 | 
             
            }
         | 
| 25 |  | 
| 26 | 
            -
             | 
| 27 | 
            -
             | 
| 28 | 
            -
            }
         | 
|  | |
| 1 | 
            +
            /* Custom styles */
         | 
| 2 | 
            +
            @import url('https://fonts.googleapis.com/css2?family=Inter:wght@300;400;500;600;700&display=swap');
         | 
|  | |
|  | |
| 3 |  | 
| 4 | 
            +
            body {
         | 
| 5 | 
            +
                font-family: 'Inter', sans-serif;
         | 
| 6 | 
            +
                min-height: 100vh;
         | 
| 7 | 
            +
                display: flex;
         | 
| 8 | 
            +
                flex-direction: column;
         | 
| 9 | 
             
            }
         | 
| 10 |  | 
| 11 | 
            +
            .container {
         | 
| 12 | 
            +
                max-width: 1200px;
         | 
|  | |
|  | |
|  | |
| 13 | 
             
            }
         | 
| 14 |  | 
| 15 | 
            +
            img {
         | 
| 16 | 
            +
                transition: transform 0.3s ease;
         | 
|  | |
|  | |
|  | |
|  | |
| 17 | 
             
            }
         | 
| 18 |  | 
| 19 | 
            +
            img:hover {
         | 
| 20 | 
            +
                transform: scale(1.05);
         | 
| 21 | 
            +
            }
         |