Spaces:
Running
Running
| <html lang="en" class="dark"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Hanzi Hunter - Chinese Vocabulary Level Checker</title> | |
| <link rel="stylesheet" href="style.css"> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <script src="https://cdn.jsdelivr.net/npm/feather-icons/dist/feather.min.js"></script> | |
| <script src="https://unpkg.com/feather-icons"></script> | |
| <script> | |
| tailwind.config = { | |
| darkMode: 'class', | |
| theme: { | |
| extend: { | |
| colors: { | |
| primary: '#000000', | |
| secondary: '#DC2626' | |
| } | |
| } | |
| } | |
| } | |
| </script> | |
| </head> | |
| <body class="bg-black text-white min-h-screen flex flex-col"> | |
| <custom-navbar></custom-navbar> | |
| <main class="flex-1 container mx-auto px-4 py-8"> | |
| <!-- Hero Section --> | |
| <section class="text-center mb-12"> | |
| <h1 class="text-4xl md:text-6xl font-bold mb-4 bg-gradient-to-r from-white to-red-600 bg-clip-text text-transparent"> | |
| 汉字猎人 | |
| </h1> | |
| <p class="text-xl text-gray-400 mb-8">Discover the secrets behind Chinese characters</p> | |
| </section> | |
| <!-- Main Input Section --> | |
| <section class="max-w-2xl mx-auto mb-12"> | |
| <div class="bg-gray-900 rounded-2xl p-8 shadow-2xl border border-red-900"> | |
| <div class="flex items-center justify-center mb-6"> | |
| <i data-feather="search" class="w-6 h-6 text-red-500 mr-3"></i> | |
| <h2 class="text-2xl font-bold">Check Your Chinese Vocabulary</h2> | |
| </div> | |
| <form id="wordForm" class="space-y-6"> | |
| <div> | |
| <label for="chineseWord" class="block text-sm font-medium text-gray-300 mb-2"> | |
| Enter a Chinese Word | |
| </label> | |
| <input | |
| type="text" | |
| id="chineseWord" | |
| placeholder="例如: 冒险, 你好, 学习..." | |
| class="w-full px-4 py-3 bg-gray-800 border border-red-900 rounded-lg text-white placeholder-gray-500 focus:outline-none focus:ring-2 focus:ring-red-500 focus:border-transparent transition-all duration-200" | |
| required | |
| > | |
| </div> | |
| <button | |
| type="submit" | |
| class="w-full bg-red-600 hover:bg-red-700 text-white font-bold py-3 px-4 rounded-lg transition-all duration-200 transform hover:scale-105 focus:outline-none focus:ring-2 focus:ring-red-500 focus:ring-opacity-50" | |
| > | |
| <div class="flex items-center justify-center"> | |
| <i data-feather="zap" class="w-5 h-5 mr-2"></i> | |
| Analyze Word | |
| </div> | |
| </button> | |
| </form> | |
| </div> | |
| </section> | |
| <!-- Results Section --> | |
| <section id="resultsSection" class="max-w-2xl mx-auto hidden"> | |
| <div class="bg-gray-900 rounded-2xl p-8 shadow-2xl border border-red-900"> | |
| <div class="flex items-center justify-between mb-6"> | |
| <h3 class="text-2xl font-bold">Analysis Results</h3> | |
| <button id="clearResults" class="text-red-400 hover:text-red-300 transition-colors"> | |
| <i data-feather="x" class="w-5 h-5"></i> | |
| </button> | |
| </div> | |
| <div id="results" class="space-y-4"> | |
| <!-- Results will be populated here by JavaScript --> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- API Configuration Section --> | |
| <section class="max-w-2xl mx-auto mt-16"> | |
| <div class="bg-gray-900 rounded-2xl p-8 shadow-2xl border border-red-900"> | |
| <div class="flex items-center justify-center mb-6"> | |
| <i data-feather="settings" class="w-6 h-6 text-red-500 mr-3"></i> | |
| <h2 class="text-2xl font-bold">API Configuration</h2> | |
| </div> | |
| <div class="space-y-4"> | |
| <div class="bg-gray-800 rounded-lg p-4"> | |
| <h3 class="text-lg font-semibold mb-2">How to Configure APIs</h3> | |
| <p class="text-gray-400 mb-4"> | |
| To connect real APIs, update the configuration in <code class="bg-gray-700 px-2 py-1 rounded">api-config.js</code> | |
| </p> | |
| <div class="text-sm text-gray-500 space-y-2"> | |
| <p>1. Open <code class="bg-gray-700 px-2 py-1 rounded">api-config.js</code> file</p> | |
| <p>2. Replace the placeholder URLs with your actual API endpoints</p> | |
| <p>3. Add any required API keys or authentication headers</p> | |
| </div> | |
| </div> | |
| <div class="mt-6 p-4 bg-yellow-900 border border-yellow-700 rounded-lg"> | |
| <div class="flex items-start"> | |
| <i data-feather="alert-triangle" class="w-5 h-5 text-yellow-400 mr-3 mt-1"></i> | |
| <div> | |
| <h4 class="font-semibold text-yellow-300">API Setup Required</h4> | |
| <p class="text-yellow-200 text-sm">Currently using demo data. Connect real APIs for live data.</p> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <!-- Features Section --> | |
| <section class="max-w-4xl mx-auto mt-16"> | |
| <h2 class="text-3xl font-bold text-center mb-12">Why Use Hanzi Hunter?</h2> | |
| <div class="grid md:grid-cols-3 gap-8"> | |
| <div class="text-center p-6 bg-gray-900 rounded-xl border border-red-900"> | |
| <i data-feather="award" class="w-12 h-12 text-red-500 mx-auto mb-4"></i> | |
| <h3 class="text-xl font-bold mb-2">HSK Level Detection</h3> | |
| <p class="text-gray-400">Instantly identify which HSK level your word belongs to</p> | |
| </div> | |
| <div class="text-center p-6 bg-gray-900 rounded-xl border border-red-900"> | |
| <i data-feather="message-circle" class="w-12 h-12 text-red-500 mx-auto mb-4"></i> | |
| <h3 class="text-xl font-bold mb-2">Usage Analysis</h3> | |
| <p class="text-gray-400">Learn whether words are formal, informal, common or rare</p> | |
| </div> | |
| <div class="text-center p-6 bg-gray-900 rounded-xl border border-red-900"> | |
| <i data-feather="book-open" class="w-12 h-12 text-red-500 mx-auto mb-4"></i> | |
| <h3 class="text-xl font-bold mb-2">Quick Meanings</h3> | |
| <p class="text-gray-400">Get concise English definitions for better understanding</p> | |
| </div> | |
| </div> | |
| </section> | |
| </main> | |
| <custom-footer></custom-footer> | |
| <!-- API Configuration --> | |
| <script src="api-config.js"></script> | |
| <!-- Component Scripts --> | |
| <script src="components/navbar.js"></script> | |
| <script src="components/footer.js"></script> | |
| <!-- Main Script --> | |
| <script src="script.js"></script> | |
| <!-- Feather Icons --> | |
| <script> | |
| feather.replace(); | |
| </script> | |
| <script src="https://huggingface.co/deepsite/deepsite-badge.js"></script> | |
| </body> | |
| </html> |