OpenLab-NLP commited on
Commit
08a181f
ยท
verified ยท
1 Parent(s): 6c605d2

Update index.html

Browse files
Files changed (1) hide show
  1. index.html +19 -35
index.html CHANGED
@@ -5,14 +5,6 @@
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>HUIUCL Online Archive</title>
7
  <style>
8
- /* ํฐํŠธ ์ •์˜: conlang_PUA.ttf ๋กœ๋“œ */
9
- @font-face {
10
- font-family: 'HuiuclFont';
11
- src: url('conlang_PUA.ttf') format('truetype');
12
- font-weight: normal;
13
- font-style: normal;
14
- }
15
-
16
  :root {
17
  --bg-color: #f9f7f2;
18
  --card-bg: #ffffff;
@@ -20,18 +12,16 @@
20
  --accent-color: #d4a373;
21
  --border-color: #e0ddd5;
22
  --variation-bg: #faf9f6;
23
- /* ๊ธฐ๋ณธ ํฐํŠธ ์Šคํƒ ์„ค์ • */
24
- --main-font: 'Pretendard', -apple-system, BlinkMacSystemFont, system-ui, sans-serif;
25
- --conlang-font: 'HuiuclFont', sans-serif;
26
  }
27
 
28
  body {
29
- font-family: var(--main-font);
30
  background-color: var(--bg-color);
31
  color: var(--primary-color);
32
  margin: 0; padding: 0; line-height: 1.6;
33
  }
34
 
 
35
  nav {
36
  position: sticky; top: 0; background: rgba(249, 247, 242, 0.9);
37
  backdrop-filter: blur(10px); padding: 20px; text-align: center;
@@ -41,9 +31,8 @@
41
  nav a:hover { color: var(--accent-color); }
42
 
43
  header { text-align: center; padding: 60px 20px; }
44
- /* ํ—ค๋” ํƒ€์ดํ‹€์— ์ธ๊ณต์–ด ํฐํŠธ ์ ์šฉ */
45
- h1 { font-family: var(--conlang-font); font-weight: 300; letter-spacing: 8px; color: var(--accent-color); margin: 0; }
46
- .sub-title { font-size: 0.9rem; color: #999; margin-top: 10px; font-family: var(--main-font); }
47
 
48
  .container { max-width: 900px; margin: 0 auto; padding: 0 20px 100px; }
49
  section { display: none; }
@@ -61,15 +50,12 @@
61
  table { width: 100%; border-collapse: collapse; }
62
  th, td { padding: 15px 20px; text-align: left; border-bottom: 1px solid var(--bg-color); }
63
  th { background: #f1eee6; font-size: 0.9rem; color: #777; }
64
-
65
- /* ์‚ฌ์ „ ๋‹จ์–ด ์…€์— ์ธ๊ณต์–ด ํฐํŠธ ์ ์šฉ */
66
- .word-cell { font-family: var(--conlang-font); font-weight: bold; color: var(--accent-color); }
67
 
68
  /* ๋ฌธ๋ฒ•(GRAMMAR) ์Šคํƒ€์ผ */
69
  .card { background: var(--card-bg); padding: 40px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); margin-bottom: 20px; }
70
- code { font-family: var(--conlang-font); background: #f4f4f4; padding: 2px 5px; border-radius: 4px; }
71
 
72
- /* ์•„์นด์ด๋ธŒ(ARCHIVE) ์Šคํƒ€์ผ */
73
  .archive-layout { display: flex; gap: 30px; }
74
  .story-list { width: 250px; flex-shrink: 0; }
75
  .story-item {
@@ -80,10 +66,8 @@
80
  .story-item:hover, .story-item.active { border-color: var(--accent-color); color: var(--accent-color); background: #fdfcf9; }
81
  .story-content { flex: 1; background: var(--card-bg); padding: 40px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); min-height: 400px; }
82
  .story-line { margin-bottom: 25px; }
83
-
84
- /* ์•„์นด์ด๋ธŒ ์ธ๊ณต์–ด ํ…์ŠคํŠธ์— ํฐํŠธ ์ ์šฉ */
85
- .huiucl-text { font-family: var(--conlang-font); font-size: 1.4rem; color: var(--accent-color); font-weight: 600; margin-bottom: 5px; }
86
- .korean-text { font-family: var(--main-font); font-size: 1rem; color: #777; border-left: 2px solid var(--border-color); padding-left: 15px; }
87
  </style>
88
  </head>
89
  <body>
@@ -125,8 +109,8 @@
125
  <p><strong>3. ์‹œ์ œ:</strong> ๊ณผ๊ฑฐํ˜• <code>-m</code>, ๋ฏธ๋ž˜ํ˜• <code>-n</code></p>
126
  <hr style="border: 0; border-top: 1px solid var(--border-color); margin: 20px 0;">
127
  <h3>Phoneme (์Œ์†Œ)</h3>
128
- <p><strong>Vowels:</strong> <span class="word-cell">a, i, u</span></p>
129
- <p><strong>Consonants:</strong> <span class="word-cell">m, n, s, h, l, c(ใ„ฒ), t(ใ„ธ)</span></p>
130
  </div>
131
  </section>
132
 
@@ -136,7 +120,8 @@
136
  <div class="story-item active" onclick="loadStory(0, this)">01. ํƒ„์ƒ</div>
137
  <div class="story-item" onclick="loadStory(1, this)">02. ์ค€๋น„ ์ค‘...</div>
138
  </div>
139
- <div class="story-content" id="storyViewer"></div>
 
140
  </div>
141
  </section>
142
  </div>
@@ -145,11 +130,13 @@
145
  let conlangData = {};
146
  let currentCategory = '๋ชจ๋‘';
147
 
 
148
  function showSection(id) {
149
  document.querySelectorAll('section').forEach(s => s.classList.remove('active'));
150
  document.getElementById(id).classList.add('active');
151
  }
152
 
 
153
  const stories = [
154
  {
155
  title: "๊ธฐ๋ก 01: ํƒ„์ƒ",
@@ -184,22 +171,19 @@
184
  document.getElementById('storyViewer').innerHTML = html;
185
  }
186
 
 
187
  window.onload = () => {
188
  loadStory(0);
189
- // Huiucl.json ๋Œ€์‹  conlang_pua.json ๋กœ๋“œ
190
- fetch('conlang_pua.json')
191
- .then(res => {
192
- if(!res.ok) throw new Error('JSON ํŒŒ์ผ์„ ์ฐพ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.');
193
- return res.json();
194
- })
195
  .then(data => {
196
  conlangData = data;
197
  initButtons();
198
  renderTable();
199
- })
200
- .catch(err => console.error('Error loading JSON:', err));
201
  };
202
 
 
203
  function initButtons() {
204
  const container = document.getElementById('categoryButtons');
205
  Object.keys(conlangData).forEach(key => {
 
5
  <meta name="viewport" content="width=device-width, initial-scale=1.0">
6
  <title>HUIUCL Online Archive</title>
7
  <style>
 
 
 
 
 
 
 
 
8
  :root {
9
  --bg-color: #f9f7f2;
10
  --card-bg: #ffffff;
 
12
  --accent-color: #d4a373;
13
  --border-color: #e0ddd5;
14
  --variation-bg: #faf9f6;
 
 
 
15
  }
16
 
17
  body {
18
+ font-family: 'Pretendard', sans-serif;
19
  background-color: var(--bg-color);
20
  color: var(--primary-color);
21
  margin: 0; padding: 0; line-height: 1.6;
22
  }
23
 
24
+ /* ๋„ค๋น„๊ฒŒ์ด์…˜: ARCHIVE๋ฅผ ๋งจ ๋’ค๋กœ ์ด๋™ */
25
  nav {
26
  position: sticky; top: 0; background: rgba(249, 247, 242, 0.9);
27
  backdrop-filter: blur(10px); padding: 20px; text-align: center;
 
31
  nav a:hover { color: var(--accent-color); }
32
 
33
  header { text-align: center; padding: 60px 20px; }
34
+ h1 { font-weight: 300; letter-spacing: 8px; color: var(--accent-color); margin: 0; }
35
+ .sub-title { font-size: 0.9rem; color: #999; margin-top: 10px; }
 
36
 
37
  .container { max-width: 900px; margin: 0 auto; padding: 0 20px 100px; }
38
  section { display: none; }
 
50
  table { width: 100%; border-collapse: collapse; }
51
  th, td { padding: 15px 20px; text-align: left; border-bottom: 1px solid var(--bg-color); }
52
  th { background: #f1eee6; font-size: 0.9rem; color: #777; }
53
+ .word-cell { font-weight: bold; color: var(--accent-color); }
 
 
54
 
55
  /* ๋ฌธ๋ฒ•(GRAMMAR) ์Šคํƒ€์ผ */
56
  .card { background: var(--card-bg); padding: 40px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); margin-bottom: 20px; }
 
57
 
58
+ /* ์•„์นด์ด๋ธŒ(ARCHIVE) ์Šคํƒ€์ผ: ๋ฆฌ์ŠคํŠธ & ๋ทฐ์–ด */
59
  .archive-layout { display: flex; gap: 30px; }
60
  .story-list { width: 250px; flex-shrink: 0; }
61
  .story-item {
 
66
  .story-item:hover, .story-item.active { border-color: var(--accent-color); color: var(--accent-color); background: #fdfcf9; }
67
  .story-content { flex: 1; background: var(--card-bg); padding: 40px; border-radius: 15px; box-shadow: 0 10px 30px rgba(0,0,0,0.03); min-height: 400px; }
68
  .story-line { margin-bottom: 25px; }
69
+ .huiucl-text { font-size: 1.2rem; color: var(--accent-color); font-weight: 600; margin-bottom: 5px; }
70
+ .korean-text { font-size: 1rem; color: #777; border-left: 2px solid var(--border-color); padding-left: 15px; }
 
 
71
  </style>
72
  </head>
73
  <body>
 
109
  <p><strong>3. ์‹œ์ œ:</strong> ๊ณผ๊ฑฐํ˜• <code>-m</code>, ๋ฏธ๋ž˜ํ˜• <code>-n</code></p>
110
  <hr style="border: 0; border-top: 1px solid var(--border-color); margin: 20px 0;">
111
  <h3>Phoneme (์Œ์†Œ)</h3>
112
+ <p><strong>Vowels:</strong> a, i, u</p>
113
+ <p><strong>Consonants:</strong> m, n, s, h, l, c(ใ„ฒ), t(ใ„ธ)</p>
114
  </div>
115
  </section>
116
 
 
120
  <div class="story-item active" onclick="loadStory(0, this)">01. ํƒ„์ƒ</div>
121
  <div class="story-item" onclick="loadStory(1, this)">02. ์ค€๋น„ ์ค‘...</div>
122
  </div>
123
+ <div class="story-content" id="storyViewer">
124
+ </div>
125
  </div>
126
  </section>
127
  </div>
 
130
  let conlangData = {};
131
  let currentCategory = '๋ชจ๋‘';
132
 
133
+ // ์„น์…˜ ์ „ํ™˜
134
  function showSection(id) {
135
  document.querySelectorAll('section').forEach(s => s.classList.remove('active'));
136
  document.getElementById(id).classList.add('active');
137
  }
138
 
139
+ // ์†Œ์„ค ๋ฐ์ดํ„ฐ ๋กœ๋“œ ๋ฐ ์ „ํ™˜
140
  const stories = [
141
  {
142
  title: "๊ธฐ๋ก 01: ํƒ„์ƒ",
 
171
  document.getElementById('storyViewer').innerHTML = html;
172
  }
173
 
174
+ // ์ดˆ๊ธฐ ์‹คํ–‰
175
  window.onload = () => {
176
  loadStory(0);
177
+ fetch('Huiucl.json')
178
+ .then(res => res.json())
 
 
 
 
179
  .then(data => {
180
  conlangData = data;
181
  initButtons();
182
  renderTable();
183
+ });
 
184
  };
185
 
186
+ // --- ์‚ฌ์ „ ๋กœ์ง (๊ธฐ์กด๊ณผ ๋™์ผ) ---
187
  function initButtons() {
188
  const container = document.getElementById('categoryButtons');
189
  Object.keys(conlangData).forEach(key => {