Spaces:
Configuration error
Configuration error
| <html lang="ko"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Liger - Green-Drive Optimizer</title> | |
| <link rel="preconnect" href="https://fonts.googleapis.com"> | |
| <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin> | |
| <link href="https://fonts.googleapis.com/css2?family=Outfit:wght@300;400;600;700&family=Noto+Sans+KR:wght@300;400;500;700&display=swap" rel="stylesheet"> | |
| <link rel="stylesheet" href="style.css"> | |
| <meta name="description" content="Liger: μΉνκ²½ μ£Όν κ²½λ‘ μ΅μ ν λ° μΆ©μ μ μΆμ² μ루μ "> | |
| </head> | |
| <body> | |
| <div class="background-glob"></div> | |
| <nav class="navbar"> | |
| <div class="logo">LIGER</div> | |
| <div class="nav-links"> | |
| <a href="#demo">Demo</a> | |
| <a href="#presentation">Presentation</a> | |
| <a href="#workflow">Workflow</a> | |
| </div> | |
| </nav> | |
| <header class="hero"> | |
| <div class="hero-content"> | |
| <span class="badge">Green-Drive Optimizer</span> | |
| <h1>μ€λ§νΈν μ κΈ°μ°¨ λΌμ΄νμ μμ,<br> <span class="gradient-text">LIGER</span></h1> | |
| <p>μ΅μ μ κ²½λ‘μ μΆ©μ μλ₯Ό μ°Ύμμ£Όλ λΉμ λ§μ AI λλΌμ΄λΉ ννΈλ</p> | |
| <div class="cta-group"> | |
| <a href="#demo" class="btn primary">λ°λͺ¨ μμ 보기</a> | |
| <a href="#workflow" class="btn secondary">μν¬νλ‘μ° νμΈνκΈ°</a> | |
| </div> | |
| </div> | |
| <div class="hero-image"> | |
| <img src="α α ‘αα ΅αα ₯_αα ’αα αα ΅αα ΅αα ΅.png" alt="Liger Dashboard Preview" class="glass-card"> | |
| </div> | |
| </header> | |
| <main> | |
| <section id="demo" class="section"> | |
| <div class="section-header"> | |
| <h2>Demo Video</h2> | |
| <p>Ligerκ° μ΄λ»κ² μλνλμ§ νμΈν΄λ³΄μΈμ</p> | |
| </div> | |
| <div class="video-container glass-card"> | |
| <video controls poster="α α ‘αα ΅αα ₯_αα ’αα αα ΅αα ΅αα ΅.png"> | |
| <source src="α α ‘αα ΅αα ₯_αα ¦αα ©αα §αΌαα ‘αΌ.mp4" type="video/mp4"> | |
| λΈλΌμ°μ κ° λΉλμ€ νκ·Έλ₯Ό μ§μνμ§ μμ΅λλ€. | |
| </video> | |
| </div> | |
| </section> | |
| <section id="presentation" class="section"> | |
| <div class="section-header"> | |
| <h2>Presentation</h2> | |
| <p>νλ‘μ νΈ μμΈ μκ° λ° κΈ°μ μ€ν</p> | |
| </div> | |
| <div class="ppt-container glass-card"> | |
| <!-- PDF νμΌμ μ¬κΈ°μ μ λ‘λνκ±°λ Google Slides embed μ½λλ₯Ό λ£μΌμΈμ --> | |
| <div class="placeholder-ppt"> | |
| <div class="icon-box">π</div> | |
| <h3>λ°ν μλ£ (PPT/PDF)</h3> | |
| <p>PDF νμΌμ λ ν¬μ§ν 리μ μ λ‘λνκ³ , <br><code>embed</code> νκ·Έλ λ§ν¬λ‘ μ°κ²°ν΄μ£ΌμΈμ.</p> | |
| <a href="#" class="btn secondary small">PDF λ€μ΄λ‘λ (μμ)</a> | |
| </div> | |
| </div> | |
| </section> | |
| <section id="workflow" class="section"> | |
| <div class="section-header"> | |
| <h2>n8n Workflow</h2> | |
| <p>μλν λ‘μ§κ³Ό λ°μ΄ν° νλ¦μ νλμ</p> | |
| </div> | |
| <div class="workflow-container glass-card"> | |
| <div class="workflow-info"> | |
| <h3>Core Logic</h3> | |
| <p>μ μ μ λ ₯ β κ²½λ‘ μ΅μ ν β μΆ©μ μ μΆμ² β κ²°κ³Ό 리ν¬νΈ μμ±</p> | |
| </div> | |
| <div class="workflow-viz"> | |
| <!-- n8n μν¬νλ‘μ° μ΄λ―Έμ§λ iframeμ λ£μ μ μμ΅λλ€ --> | |
| <div class="code-block"> | |
| <pre><code> | |
| // n8n Workflow JSON Viewer Link or Image | |
| [User Input] --> [Tmap API] --> [Filtering] --> [Map Map] --> [Response] | |
| </code></pre> | |
| </div> | |
| <a href="https://huggingface.co/dltmdgus" target="_blank" class="btn primary">Hugging Face νλ‘ν λ°©λ¬Έ</a> | |
| </div> | |
| </div> | |
| </section> | |
| </main> | |
| <footer> | |
| <p>© 2024 Liger Team. All rights reserved.</p> | |
| <div class="socials"> | |
| <a href="https://huggingface.co/dltmdgus" target="_blank">Hugging Face</a> | |
| </div> | |
| </footer> | |
| <script> | |
| // Smooth scroll for anchor links | |
| document.querySelectorAll('a[href^="#"]').forEach(anchor => { | |
| anchor.addEventListener('click', function (e) { | |
| e.preventDefault(); | |
| document.querySelector(this.getAttribute('href')).scrollIntoView({ | |
| behavior: 'smooth' | |
| }); | |
| }); | |
| }); | |
| // Simple intersection observer for fade-in animations | |
| const observerOptions = { | |
| threshold: 0.1 | |
| }; | |
| const observer = new IntersectionObserver((entries) => { | |
| entries.forEach(entry => { | |
| if (entry.isIntersecting) { | |
| entry.target.classList.add('visible'); | |
| } | |
| }); | |
| }, observerOptions); | |
| document.querySelectorAll('.section, .hero').forEach(el => { | |
| el.classList.add('fade-in-section'); | |
| observer.observe(el); | |
| }); | |
| </script> | |
| </body> | |
| </html> | |