@polyglot-bundles/ka-minimal-pairs 0.1.1 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/data.d.ts.map +1 -1
- package/dist/data.js +185 -13
- package/package.json +3 -3
package/dist/data.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,eAAO,MAAM,gBAAgB,EAAE,
|
|
1
|
+
{"version":3,"file":"data.d.ts","sourceRoot":"","sources":["../src/data.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,eAAO,MAAM,gBAAgB,EAAE,wBA2I9B,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
package/dist/data.js
CHANGED
|
@@ -1,41 +1,89 @@
|
|
|
1
1
|
const i = {
|
|
2
2
|
levels: [
|
|
3
3
|
{ level: 0, title: "Getting Started", description: "Practice with clearly different sounds" },
|
|
4
|
-
{ level: 1, title: "
|
|
4
|
+
{ level: 1, title: "Three-Way Stop Contrast", description: "Ejective vs aspirated vs voiced" },
|
|
5
5
|
{ level: 2, title: "Vowels", description: "Vowel distinctions" },
|
|
6
|
-
{ level: 3, title: "
|
|
7
|
-
{ level: 4, title: "Advanced", description: "
|
|
8
|
-
{ level: 5, title: "Expert Level", description: "
|
|
6
|
+
{ level: 3, title: "Consonant Series", description: "Labial, coronal, and velar contrasts" },
|
|
7
|
+
{ level: 4, title: "Advanced Consonants", description: "Affricates and fricatives" },
|
|
8
|
+
{ level: 5, title: "Expert Level", description: "Complex clusters and subtle distinctions" }
|
|
9
9
|
],
|
|
10
10
|
minimalPairs: [
|
|
11
|
+
// Level 0: Clear contrasts
|
|
11
12
|
{
|
|
12
13
|
pairId: "ka_l0_001",
|
|
13
14
|
level: 0,
|
|
14
15
|
tags: ["level_0"],
|
|
15
16
|
contrastFeature: "consonant",
|
|
16
17
|
contrastDescription: "/k/ vs /t/",
|
|
17
|
-
word1: { script: "კარი", romanization: "
|
|
18
|
-
word2: { script: "ტარი", romanization: "
|
|
18
|
+
word1: { script: "კარი", romanization: "k'ari", definition: "door", audioFile: null },
|
|
19
|
+
word2: { script: "ტარი", romanization: "t'ari", definition: "(handle)", audioFile: null }
|
|
19
20
|
},
|
|
21
|
+
{
|
|
22
|
+
pairId: "ka_l0_002",
|
|
23
|
+
level: 0,
|
|
24
|
+
tags: ["level_0"],
|
|
25
|
+
contrastFeature: "consonant",
|
|
26
|
+
contrastDescription: "/m/ vs /n/",
|
|
27
|
+
word1: { script: "მა", romanization: "ma", definition: "to me", audioFile: null },
|
|
28
|
+
word2: { script: "ნა", romanization: "na", definition: "(particle)", audioFile: null }
|
|
29
|
+
},
|
|
30
|
+
// Level 1: Three-way stop contrast (ejective, aspirated, voiced)
|
|
20
31
|
{
|
|
21
32
|
pairId: "ka_l1_001",
|
|
22
33
|
level: 1,
|
|
23
34
|
tags: ["level_1", "consonant"],
|
|
24
35
|
contrastFeature: "consonant",
|
|
25
|
-
contrastDescription: "
|
|
26
|
-
pronunciationTipId: "
|
|
27
|
-
word1: { script: "
|
|
28
|
-
word2: { script: "
|
|
36
|
+
contrastDescription: "Ejective /p'/ vs aspirated /pʰ/",
|
|
37
|
+
pronunciationTipId: "consonant_three_way",
|
|
38
|
+
word1: { script: "პარი", romanization: "p'ari", definition: "bald", audioFile: null },
|
|
39
|
+
word2: { script: "ფარი", romanization: "pari", definition: "shield", audioFile: null }
|
|
29
40
|
},
|
|
30
41
|
{
|
|
31
42
|
pairId: "ka_l1_002",
|
|
32
43
|
level: 1,
|
|
33
44
|
tags: ["level_1", "consonant"],
|
|
34
45
|
contrastFeature: "consonant",
|
|
35
|
-
contrastDescription: "/t
|
|
36
|
-
word1: { script: "
|
|
37
|
-
word2: { script: "
|
|
46
|
+
contrastDescription: "Ejective /t'/ vs aspirated /tʰ/",
|
|
47
|
+
word1: { script: "ტანი", romanization: "t'ani", definition: "body", audioFile: null },
|
|
48
|
+
word2: { script: "თანი", romanization: "tani", definition: "(equal)", audioFile: null }
|
|
49
|
+
},
|
|
50
|
+
{
|
|
51
|
+
pairId: "ka_l1_003",
|
|
52
|
+
level: 1,
|
|
53
|
+
tags: ["level_1", "consonant"],
|
|
54
|
+
contrastFeature: "consonant",
|
|
55
|
+
contrastDescription: "Ejective /k'/ vs aspirated /kʰ/",
|
|
56
|
+
word1: { script: "კანი", romanization: "k'ani", definition: "skin", audioFile: null },
|
|
57
|
+
word2: { script: "ხანი", romanization: "khani", definition: "time; period", audioFile: null }
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
pairId: "ka_l1_004",
|
|
61
|
+
level: 1,
|
|
62
|
+
tags: ["level_1", "consonant"],
|
|
63
|
+
contrastFeature: "consonant",
|
|
64
|
+
contrastDescription: "Voiced /b/ vs ejective /p'/",
|
|
65
|
+
word1: { script: "ბანი", romanization: "bani", definition: "roof", audioFile: null },
|
|
66
|
+
word2: { script: "პანი", romanization: "p'ani", definition: "(pani - name)", audioFile: null }
|
|
67
|
+
},
|
|
68
|
+
{
|
|
69
|
+
pairId: "ka_l1_005",
|
|
70
|
+
level: 1,
|
|
71
|
+
tags: ["level_1", "consonant"],
|
|
72
|
+
contrastFeature: "consonant",
|
|
73
|
+
contrastDescription: "Voiced /d/ vs ejective /t'/",
|
|
74
|
+
word1: { script: "დარი", romanization: "dari", definition: "(Dari language)", audioFile: null },
|
|
75
|
+
word2: { script: "ტარი", romanization: "t'ari", definition: "(handle)", audioFile: null }
|
|
38
76
|
},
|
|
77
|
+
{
|
|
78
|
+
pairId: "ka_l1_006",
|
|
79
|
+
level: 1,
|
|
80
|
+
tags: ["level_1", "consonant"],
|
|
81
|
+
contrastFeature: "consonant",
|
|
82
|
+
contrastDescription: "Voiced /g/ vs ejective /k'/",
|
|
83
|
+
word1: { script: "გარი", romanization: "gari", definition: "(Gari - name)", audioFile: null },
|
|
84
|
+
word2: { script: "კარი", romanization: "k'ari", definition: "door", audioFile: null }
|
|
85
|
+
},
|
|
86
|
+
// Level 2: Vowel contrasts
|
|
39
87
|
{
|
|
40
88
|
pairId: "ka_l2_001",
|
|
41
89
|
level: 2,
|
|
@@ -44,9 +92,133 @@ const i = {
|
|
|
44
92
|
contrastDescription: "/a/ vs /e/",
|
|
45
93
|
word1: { script: "მა", romanization: "ma", definition: "she/he", audioFile: null },
|
|
46
94
|
word2: { script: "მე", romanization: "me", definition: "I", audioFile: null }
|
|
95
|
+
},
|
|
96
|
+
{
|
|
97
|
+
pairId: "ka_l2_002",
|
|
98
|
+
level: 2,
|
|
99
|
+
tags: ["level_2", "vowel"],
|
|
100
|
+
contrastFeature: "vowel",
|
|
101
|
+
contrastDescription: "/i/ vs /u/",
|
|
102
|
+
word1: { script: "მი", romanization: "mi", definition: "to me", audioFile: null },
|
|
103
|
+
word2: { script: "მუ", romanization: "mu", definition: "(dialectal)", audioFile: null }
|
|
104
|
+
},
|
|
105
|
+
{
|
|
106
|
+
pairId: "ka_l2_003",
|
|
107
|
+
level: 2,
|
|
108
|
+
tags: ["level_2", "vowel"],
|
|
109
|
+
contrastFeature: "vowel",
|
|
110
|
+
contrastDescription: "/ɛ/ vs /ɔ/",
|
|
111
|
+
word1: { script: "ბე", romanization: "be", definition: "(destiny)", audioFile: null },
|
|
112
|
+
word2: { script: "ბო", romanization: "bo", definition: "(Bo - name)", audioFile: null }
|
|
113
|
+
},
|
|
114
|
+
// Level 3: Consonant series
|
|
115
|
+
{
|
|
116
|
+
pairId: "ka_l3_001",
|
|
117
|
+
level: 3,
|
|
118
|
+
tags: ["level_3", "consonant"],
|
|
119
|
+
contrastFeature: "consonant",
|
|
120
|
+
contrastDescription: "Labial /p/ vs coronal /t/",
|
|
121
|
+
word1: { script: "ფა", romanization: "pa", definition: "(fa - musical note)", audioFile: null },
|
|
122
|
+
word2: { script: "თა", romanization: "ta", definition: "(ta - letter name)", audioFile: null }
|
|
123
|
+
},
|
|
124
|
+
{
|
|
125
|
+
pairId: "ka_l3_002",
|
|
126
|
+
level: 3,
|
|
127
|
+
tags: ["level_3", "consonant"],
|
|
128
|
+
contrastFeature: "consonant",
|
|
129
|
+
contrastDescription: "Coronal /t/ vs velar /k/",
|
|
130
|
+
word1: { script: "თა", romanization: "ta", definition: "(ta - letter name)", audioFile: null },
|
|
131
|
+
word2: { script: "ხა", romanization: "kha", definition: "(kha - letter name)", audioFile: null }
|
|
132
|
+
},
|
|
133
|
+
{
|
|
134
|
+
pairId: "ka_l3_003",
|
|
135
|
+
level: 3,
|
|
136
|
+
tags: ["level_3", "consonant"],
|
|
137
|
+
contrastFeature: "consonant",
|
|
138
|
+
contrastDescription: "Nasal /m/ vs nasal /n/",
|
|
139
|
+
word1: { script: "მათ", romanization: "mat", definition: "them", audioFile: null },
|
|
140
|
+
word2: { script: "ნათ", romanization: "nat", definition: "(clear)", audioFile: null }
|
|
141
|
+
},
|
|
142
|
+
{
|
|
143
|
+
pairId: "ka_l3_004",
|
|
144
|
+
level: 3,
|
|
145
|
+
tags: ["level_3", "consonant"],
|
|
146
|
+
contrastFeature: "consonant",
|
|
147
|
+
contrastDescription: "/l/ vs /r/",
|
|
148
|
+
word1: { script: "ლა", romanization: "la", definition: "(la - musical note)", audioFile: null },
|
|
149
|
+
word2: { script: "რა", romanization: "ra", definition: "what", audioFile: null }
|
|
150
|
+
},
|
|
151
|
+
// Level 4: Advanced consonants (affricates and fricatives)
|
|
152
|
+
{
|
|
153
|
+
pairId: "ka_l4_001",
|
|
154
|
+
level: 4,
|
|
155
|
+
tags: ["level_4", "consonant"],
|
|
156
|
+
contrastFeature: "consonant",
|
|
157
|
+
contrastDescription: "Affricate /ts/ vs /ts'/",
|
|
158
|
+
word1: { script: "ცა", romanization: "tsa", definition: "sky", audioFile: null },
|
|
159
|
+
word2: { script: "წა", romanization: "ts'a", definition: "(ts'a - name)", audioFile: null }
|
|
160
|
+
},
|
|
161
|
+
{
|
|
162
|
+
pairId: "ka_l4_002",
|
|
163
|
+
level: 4,
|
|
164
|
+
tags: ["level_4", "consonant"],
|
|
165
|
+
contrastFeature: "consonant",
|
|
166
|
+
contrastDescription: "Affricate /tʃ/ vs /tʃ'/",
|
|
167
|
+
word1: { script: "ჩა", romanization: "cha", definition: "tea", audioFile: null },
|
|
168
|
+
word2: { script: "ჭა", romanization: "ch'a", definition: "well (for water)", audioFile: null }
|
|
169
|
+
},
|
|
170
|
+
{
|
|
171
|
+
pairId: "ka_l4_003",
|
|
172
|
+
level: 4,
|
|
173
|
+
tags: ["level_4", "consonant"],
|
|
174
|
+
contrastFeature: "consonant",
|
|
175
|
+
contrastDescription: "Fricative /s/ vs /ʃ/",
|
|
176
|
+
word1: { script: "სა", romanization: "sa", definition: "(sa - letter name)", audioFile: null },
|
|
177
|
+
word2: { script: "შა", romanization: "sha", definition: "(sha - letter name)", audioFile: null }
|
|
178
|
+
},
|
|
179
|
+
{
|
|
180
|
+
pairId: "ka_l4_004",
|
|
181
|
+
level: 4,
|
|
182
|
+
tags: ["level_4", "consonant"],
|
|
183
|
+
contrastFeature: "consonant",
|
|
184
|
+
contrastDescription: "Fricative /x/ vs /h/",
|
|
185
|
+
word1: { script: "ხა", romanization: "kha", definition: "(kha - letter name)", audioFile: null },
|
|
186
|
+
word2: { script: "ჰა", romanization: "ha", definition: "(ha - letter name)", audioFile: null }
|
|
187
|
+
},
|
|
188
|
+
// Level 5: Expert - complex clusters and subtle distinctions
|
|
189
|
+
{
|
|
190
|
+
pairId: "ka_l5_001",
|
|
191
|
+
level: 5,
|
|
192
|
+
tags: ["level_5", "consonant"],
|
|
193
|
+
contrastFeature: "consonant",
|
|
194
|
+
contrastDescription: "Ejective affricate /ts'/ vs ejective stop /t'/",
|
|
195
|
+
word1: { script: "წა", romanization: "ts'a", definition: "(ts'a - name)", audioFile: null },
|
|
196
|
+
word2: { script: "ტა", romanization: "t'a", definition: "(ta - clap)", audioFile: null },
|
|
197
|
+
notes: "Georgian has a rich inventory of ejective consonants including stops and affricates."
|
|
198
|
+
},
|
|
199
|
+
{
|
|
200
|
+
pairId: "ka_l5_002",
|
|
201
|
+
level: 5,
|
|
202
|
+
tags: ["level_5", "cluster"],
|
|
203
|
+
contrastFeature: "cluster",
|
|
204
|
+
contrastDescription: "Complex consonant clusters",
|
|
205
|
+
word1: { script: "მკლა", romanization: "mk'la", definition: "(arm - dialectal)", audioFile: null },
|
|
206
|
+
word2: { script: "მკვა", romanization: "mk'va", definition: "(mkva - name)", audioFile: null },
|
|
207
|
+
notes: "Georgian is famous for complex consonant clusters like 'gvprtskvni' (you peel us)."
|
|
208
|
+
},
|
|
209
|
+
{
|
|
210
|
+
pairId: "ka_l5_003",
|
|
211
|
+
level: 5,
|
|
212
|
+
tags: ["level_5", "consonant"],
|
|
213
|
+
contrastFeature: "consonant",
|
|
214
|
+
contrastDescription: "Voiced velar fricative /ɣ/ vs stop /g/",
|
|
215
|
+
word1: { script: "ღა", romanization: "gha", definition: "(poor; only)", audioFile: null },
|
|
216
|
+
word2: { script: "გა", romanization: "ga", definition: "(ga - prefix)", audioFile: null },
|
|
217
|
+
notes: "ღ (ghani) is a voiced velar fricative, distinct from გ (gani) the stop."
|
|
47
218
|
}
|
|
48
219
|
],
|
|
49
220
|
pronunciationTips: {
|
|
221
|
+
consonant_three_way: "Georgian has a three-way contrast: ejective (პ, ტ, კ), aspirated (ფ, თ, ქ), and voiced (ბ, დ, გ). Ejectives have a glottal burst, aspirated have a strong puff of air.",
|
|
50
222
|
consonant_aspirated_ejective: "Aspirated: strong air puff. Ejective: glottal closure with air burst."
|
|
51
223
|
}
|
|
52
224
|
};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@polyglot-bundles/ka-minimal-pairs",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"main": "./dist/index.js",
|
|
6
6
|
"types": "./dist/index.d.ts",
|
|
@@ -18,8 +18,8 @@
|
|
|
18
18
|
"dist"
|
|
19
19
|
],
|
|
20
20
|
"dependencies": {
|
|
21
|
-
"@polyglot-bundles/
|
|
22
|
-
"@polyglot-bundles/
|
|
21
|
+
"@polyglot-bundles/ka-lang": "0.2.3",
|
|
22
|
+
"@polyglot-bundles/content-shared": "0.2.0"
|
|
23
23
|
},
|
|
24
24
|
"devDependencies": {
|
|
25
25
|
"vite": "^5.4.0",
|