| class CustomFooter extends HTMLElement { |
| connectedCallback() { |
| this.attachShadow({ mode: 'open' }); |
| this.shadowRoot.innerHTML = ` |
| <style> |
| :host { |
| display: block; |
| background-color: #1f2937; |
| color: #d1d5db; |
| padding: 4rem 2rem; |
| } |
| .footer-container { |
| max-width: 1280px; |
| margin: 0 auto; |
| display: grid; |
| grid-template-columns: repeat(auto-fit, minmax(200px, 1fr)); |
| gap: 3rem; |
| } |
| .logo-container { |
| display: flex; |
| flex-direction: column; |
| gap: 1rem; |
| } |
| .logo { |
| font-weight: 800; |
| font-size: 1.5rem; |
| color: white; |
| display: flex; |
| align-items: center; |
| gap: 0.5rem; |
| } |
| .tagline { |
| line-height: 1.6; |
| } |
| .social-links { |
| display: flex; |
| gap: 1rem; |
| margin-top: 1rem; |
| } |
| .social-links a { |
| color: #9ca3af; |
| transition: color 0.2s; |
| } |
| .social-links a:hover { |
| color: white; |
| } |
| .footer-links h3 { |
| color: white; |
| font-size: 1.125rem; |
| font-weight: 600; |
| margin-bottom: 1.25rem; |
| } |
| .footer-links ul { |
| display: flex; |
| flex-direction: column; |
| gap: 0.75rem; |
| } |
| .footer-links a { |
| transition: color 0.2s; |
| } |
| .footer-links a:hover { |
| color: white; |
| } |
| .copyright { |
| margin-top: 4rem; |
| padding-top: 2rem; |
| border-top: 1px solid #374151; |
| text-align: center; |
| color: #9ca3af; |
| } |
| </style> |
| <div class="footer-container"> |
| <div class="logo-container"> |
| <div class="logo"> |
| <i data-feather="music"></i> |
| 🎹 CodeVibes |
| </div> |
| <p class="tagline"> |
| 🎶 Where the code flows like beats and the bugs bounce to the rhythm of your keyboard. Keep vibing, keep coding! 🎶 |
| </p> |
| <div class="social-links"> |
| <a href="#" aria-label="Twitter"><i data-feather="twitter"></i></a> |
| <a href="#" aria-label="GitHub"><i data-feather="github"></i></a> |
| <a href="#" aria-label="Discord"><i data-feather="message-square"></i></a> |
| <a href="#" aria-label="YouTube"><i data-feather="youtube"></i></a> |
| </div> |
| </div> |
| <div class="footer-links"> |
| <h3>Product</h3> |
| <ul> |
| <li><a href="#">Features</a></li> |
| <li><a href="#">Pricing</a></li> |
| <li><a href="#">Integrations</a></li> |
| <li><a href="#">Roadmap</a></li> |
| </ul> |
| </div> |
| <div class="footer-links"> |
| <h3>Company</h3> |
| <ul> |
| <li><a href="#">About</a></li> |
| <li><a href="#">Careers</a></li> |
| <li><a href="#">Blog</a></li> |
| <li><a href="#">Press</a></li> |
| </ul> |
| </div> |
| <div class="footer-links"> |
| <h3>Resources</h3> |
| <ul> |
| <li><a href="#">Documentation</a></li> |
| <li><a href="#">Community</a></li> |
| <li><a href="#">Tutorials</a></li> |
| <li><a href="#">Support</a></li> |
| </ul> |
| </div> |
| </div> |
| <div class="copyright"> |
| © ${new Date().getFullYear()} CodeVibes. All rights reserved. |
| </div> |
| `; |
| } |
| } |
| customElements.define('custom-footer', CustomFooter); |