kumaoni 1.0.0__tar.gz

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.
Files changed (53) hide show
  1. kumaoni-1.0.0/LICENSE +21 -0
  2. kumaoni-1.0.0/PKG-INFO +463 -0
  3. kumaoni-1.0.0/README.md +435 -0
  4. kumaoni-1.0.0/kumaoni/__init__.py +329 -0
  5. kumaoni-1.0.0/kumaoni/cli.py +148 -0
  6. kumaoni-1.0.0/kumaoni/constants.py +123 -0
  7. kumaoni-1.0.0/kumaoni/culture/__init__.py +33 -0
  8. kumaoni-1.0.0/kumaoni/culture/calendar.py +29 -0
  9. kumaoni-1.0.0/kumaoni/culture/festivals.py +88 -0
  10. kumaoni-1.0.0/kumaoni/culture/literature.py +515 -0
  11. kumaoni-1.0.0/kumaoni/grammar/__init__.py +80 -0
  12. kumaoni-1.0.0/kumaoni/grammar/nouns.py +124 -0
  13. kumaoni-1.0.0/kumaoni/grammar/postpositions.py +108 -0
  14. kumaoni-1.0.0/kumaoni/grammar/pronouns.py +154 -0
  15. kumaoni-1.0.0/kumaoni/grammar/syntax.py +327 -0
  16. kumaoni-1.0.0/kumaoni/grammar/verbs.py +282 -0
  17. kumaoni-1.0.0/kumaoni/lexicon/__init__.py +34 -0
  18. kumaoni-1.0.0/kumaoni/lexicon/data/phrases.json +807 -0
  19. kumaoni-1.0.0/kumaoni/lexicon/data/proverbs.json +637 -0
  20. kumaoni-1.0.0/kumaoni/lexicon/data/riddles.json +302 -0
  21. kumaoni-1.0.0/kumaoni/lexicon/data/words.json +12802 -0
  22. kumaoni-1.0.0/kumaoni/lexicon/dictionary.py +394 -0
  23. kumaoni-1.0.0/kumaoni/lexicon/morphology.py +567 -0
  24. kumaoni-1.0.0/kumaoni/numbers/__init__.py +21 -0
  25. kumaoni-1.0.0/kumaoni/numbers/converter.py +261 -0
  26. kumaoni-1.0.0/kumaoni/phonetics.py +331 -0
  27. kumaoni-1.0.0/kumaoni/translator/__init__.py +21 -0
  28. kumaoni-1.0.0/kumaoni/translator/engine.py +152 -0
  29. kumaoni-1.0.0/kumaoni/translator/llm_adapter.py +154 -0
  30. kumaoni-1.0.0/kumaoni/translator/pivot.py +103 -0
  31. kumaoni-1.0.0/kumaoni/translator/rule_based.py +645 -0
  32. kumaoni-1.0.0/kumaoni/voice/__init__.py +18 -0
  33. kumaoni-1.0.0/kumaoni/voice/engine.py +280 -0
  34. kumaoni-1.0.0/kumaoni/voice/synthesizer.py +159 -0
  35. kumaoni-1.0.0/kumaoni/web/app.py +181 -0
  36. kumaoni-1.0.0/kumaoni/web/static/app.js +703 -0
  37. kumaoni-1.0.0/kumaoni/web/static/index.html +524 -0
  38. kumaoni-1.0.0/kumaoni/web/static/style.css +1396 -0
  39. kumaoni-1.0.0/kumaoni.egg-info/PKG-INFO +463 -0
  40. kumaoni-1.0.0/kumaoni.egg-info/SOURCES.txt +51 -0
  41. kumaoni-1.0.0/kumaoni.egg-info/dependency_links.txt +1 -0
  42. kumaoni-1.0.0/kumaoni.egg-info/top_level.txt +1 -0
  43. kumaoni-1.0.0/pyproject.toml +30 -0
  44. kumaoni-1.0.0/setup.cfg +4 -0
  45. kumaoni-1.0.0/setup.py +41 -0
  46. kumaoni-1.0.0/tests/test_culture.py +106 -0
  47. kumaoni-1.0.0/tests/test_grammar.py +141 -0
  48. kumaoni-1.0.0/tests/test_lexicon.py +41 -0
  49. kumaoni-1.0.0/tests/test_morphology.py +64 -0
  50. kumaoni-1.0.0/tests/test_numbers.py +37 -0
  51. kumaoni-1.0.0/tests/test_phonetics.py +33 -0
  52. kumaoni-1.0.0/tests/test_translator.py +176 -0
  53. kumaoni-1.0.0/tests/test_voice.py +55 -0
kumaoni-1.0.0/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Akshat Singh Bisht
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
kumaoni-1.0.0/PKG-INFO ADDED
@@ -0,0 +1,463 @@
1
+ Metadata-Version: 2.4
2
+ Name: kumaoni
3
+ Version: 1.0.0
4
+ Summary: Kumaoni (कुमाऊँनी) Language Standard Library: 300,516+ Inflections, Voice AI, Speech Translation, and Himalayan Culture
5
+ Home-page: https://github.com/infoakshatsinghbisht-eng/kumaoni-language-library
6
+ Author: Akshat Singh Bisht
7
+ Author-email: Akshat Singh Bisht <infoakshatsinghbisht@gmail.com>
8
+ Maintainer: Akshat Singh Bisht
9
+ Maintainer-email: Akshat Singh Bisht <infoakshatsinghbisht@gmail.com>
10
+ Project-URL: Homepage, https://akshatsinghbisht.com/
11
+ Project-URL: GitHub, https://github.com/infoakshatsinghbisht-eng/kumaoni-language-library
12
+ Project-URL: LinkedIn, https://www.linkedin.com/in/akshat-singh-bisht-digital-performance-marketing-specialist/
13
+ Project-URL: Amazon Author, https://www.amazon.com/stores/Akshat-Singh-Bisht/author/B0D5TYDT28
14
+ Project-URL: ResearchGate, https://www.researchgate.net/profile/Akshat-Bisht-8
15
+ Project-URL: Bug Tracker, https://github.com/infoakshatsinghbisht-eng/kumaoni-language-library/issues
16
+ Classifier: Programming Language :: Python :: 3
17
+ Classifier: License :: OSI Approved :: MIT License
18
+ Classifier: Operating System :: OS Independent
19
+ Classifier: Topic :: Text Processing :: Linguistic
20
+ Requires-Python: >=3.8
21
+ Description-Content-Type: text/markdown
22
+ License-File: LICENSE
23
+ Dynamic: author
24
+ Dynamic: home-page
25
+ Dynamic: license-file
26
+ Dynamic: maintainer
27
+ Dynamic: requires-python
28
+
29
+ # Kumaoni (कुमाऊँनी) Language Library for Python
30
+
31
+ [![Author & Creator](https://img.shields.io/badge/Author%20%26%20Creator-Akshat%20Singh%20Bisht-orange.svg?style=for-the-badge&logo=person)](https://akshatsinghbisht.com/)
32
+ [![Website](https://img.shields.io/badge/Official%20Website-akshatsinghbisht.com-blue?style=for-the-badge&logo=googlechrome&logoColor=white)](https://akshatsinghbisht.com/)
33
+ [![LinkedIn](https://img.shields.io/badge/LinkedIn-Connect-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white)](https://www.linkedin.com/in/akshat-singh-bisht-digital-performance-marketing-specialist/)
34
+ [![ResearchGate](https://img.shields.io/badge/ResearchGate-Publications-00CCBB?style=for-the-badge&logo=researchgate&logoColor=white)](https://www.researchgate.net/profile/Akshat-Bisht-8)
35
+ [![Amazon Author](https://img.shields.io/badge/Amazon-Author%20Page-FF9900?style=for-the-badge&logo=amazon&logoColor=white)](https://www.amazon.com/stores/Akshat-Singh-Bisht/author/B0D5TYDT28?ref=sr_ntt_srch_lnk_1&qid=1789906571&sr=8-1&shoppingPortalEnabled=true)
36
+ [![GitHub](https://img.shields.io/badge/GitHub-Profile-181717?style=for-the-badge&logo=github&logoColor=white)](https://github.com/infoakshatsinghbisht-eng)
37
+ [![Lexicon Forms](https://img.shields.io/badge/Lexicon%20Forms-300%2C516%2B-success.svg?style=for-the-badge)](https://github.com/infoakshatsinghbisht-eng/kumaoni-language-library)
38
+ [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=for-the-badge)](LICENSE)
39
+
40
+ A standard-library-style Python package for the **Kumaoni language** (कुमाऊँनी / Central Pahari). Designed to be as simple, fast, and comprehensive for Kumaoni as Python's built-in `math` library is for mathematics.
41
+
42
+ This library empowers developers to build **web applications, mobile apps, educational tools, chatbots**, and perform **universal translation from any language of the world into Kumaoni**.
43
+
44
+ > 📖 **Full Reference Manual**: Check out [DOCUMENTATION.md](file:///c:/Users/digit_lgfi273/OneDrive/Desktop/kumaoni%20language%20library/DOCUMENTATION.md) for the exhaustive guide, complete API references, grammatical rules, and application recipes.
45
+
46
+ ---
47
+
48
+ ## 🌟 Key Features
49
+
50
+ 1. **Universal Multi-Language Translator**
51
+ - Translate from **any world language** (English, French, Spanish, German, Japanese, Russian, Arabic, Hindi, Bengali, etc.) into Kumaoni.
52
+ - Multi-tiered architecture: Offline rule-based engine + Zero-key universal world language bridge + Neural AI adapter (Gemini / OpenAI).
53
+
54
+ 2. **Morphological Verb Conjugation Engine**
55
+ - Automatically conjugates regular and irregular Kumaoni verbs (e.g., `खाण` to eat, `जाण` to go, `करन` to do).
56
+ - Handles tenses (Present, Past, Future, Continuous), person (1st, 2nd, 3rd), gender (Masculine/Feminine), and honorific forms.
57
+ - Auxiliary substantive verb (`छ-` / to be) conjugation.
58
+
59
+ 3. **Kumaoni Numbers & Numerals**
60
+ - Converts any integer (0 to 1,000,000,000+) to Kumaoni words in Devanagari or Romanized script.
61
+ - Converts Kumaoni words back to numbers.
62
+ - Supports ordinals (1st `पैलो`, 2nd `दुसर`, 3rd `तेसर`...), customary fractions (`आधो`, `पाव`, `पौण`, `सवा`, `डेढ़`), and Devanagari numerals (`०१२३४५६७८९`).
63
+
64
+ 4. **100,000+ Words Morphological Paradigm Engine & Lemmatizer**
65
+ - Synthesizes and indexes **300,000+ unique authenticated Kumaoni word forms** across verbal paradigms (Present, Past, Future, Continuous, Imperatives, Causatives, Participles, Agentives), nominal declensions (Direct, Plural, Oblique, Case postpositions bound/spaced, Diminutives, Echo words), and adjectival agreements.
66
+ - Sub-millisecond `kumaoni.lemmatize()` and `kumaoni.analyze()` for inflected surface forms.
67
+ - Seamless dictionary lookups: querying inflected forms like `खान्छू`, `ग्यूँ`, `ईजा कणी`, or `घरबटि` resolves directly to their base lemmas and definitions.
68
+
69
+ 5. **Rich Lexicon & Dictionary (1,355+ Authenticated Base Lemmas)**
70
+ - Search across Kumaoni, English, and Hindi.
71
+ - Comprehensive vocabulary sourced from Grierson's *Linguistic Survey of India (Vol. IX, Part IV)*, Badri Datt Pande's *Kumaun ka Itihas (1937)*, Edwin T. Atkinson's *Himalayan Gazetteer*, Pt. Ganga Datt Upreti's *Hill Dialects of the Kumaun Division (1900)* & *Proverbs & Folklore of Kumaun (1894)*, Dr. Trilochan Pandey's *Kumaoni Bhasha Aur Sahitya (1977)* & *Kumaoni Lok-Sahitya ki Prushthbhoomi*, Dr. Gunanand Juyal's *Madhya Pahadi Bhasha (1967)*, and Hem Pant's *Ghughuti Basuti (2022)*.
72
+ - Categorized by historical governance & land tenure (`बूढ़ा`, `स्याणा`, `कामीन`, `थोकदार`, `थातवान`, `खायकर`, `सिरतान`, `गूठ`, `रौत`, `सिरती`, `बैकर`, `कटक`), shamanic & sacred rituals (`जागरिया`, `डांगरिया`, `थात`, `डौँर`, `हुड़का`, `आंछरी`, `मसाण`), alpine pastoralism & high valleys (`छानि`, `खर्क`, `बुग्याल`, `शौका`, `रंग-भंग`, `झूलाघाट`, `लाप्चा`, `हुणिया`, `पिरुल`, `लिसो`), seasonal dynamics & climate (`ह्यूंद`, `रूड़ि`, `चौमास`, `बशगाल`, `शरद`, `ब्वार`, `तुसार`, `कुइड़ो`), traditional cuisine, handicrafts & textiles (`थुलमा`, `चुटका`, `पंखी`, `दन`), and traditional measurements.
73
+ - Phonetic Latin transliteration and Devanagari script normalization.
74
+
75
+ 6. **Cultural Treasury (अखाण, आणा, लोकगीत, महागाथा & साहित्य)**
76
+ - **45+ Authentic Proverbs (*Akhaan*)**: Sourced from Pt. Ganga Datt Upreti's foundational compilation, Badri Datt Pande, Dr. Trilochan Pandey, and living hill tradition with literal, figurative, and parallel interpretations.
77
+ - **75+ Authentic Conversational & Folk Phrases**: Traditional greetings, blessings (`जीरये जागि रये`), lullabies, travel advice, and everyday idioms.
78
+ - **20+ Traditional Riddles (*Aan / Aana*)**: Engaging folk puzzles with hints and cultural context.
79
+ - **6 Monumental Folk Epics & Ballads**: *Malushahi-Rajula*, *Ajuva Bafaul ki Bhad*, *Golu Devta Jagar*, *Jiya Rani ki Gatha* (The Warrior Queen of Katyur), *Veer Balak Haru Singh Heet*, and *Amar Gopichand Yogi*.
80
+ - **6 Canonical Folk Poems & Songs**: *Bedu Pako Baro Masa*, *Malushahi Geet*, *Nyoli Lokgeet*, *Kalyug Varnan*, *Bajyaani Ka Dhur*, and *Ghughuti Basuti* (Traditional Lullaby & Nursery Rhymes).
81
+ - **15+ Canonical Authors & Scholars**: Profiles and canonical works for Badri Datt Pande (*Kumaun ka Itihas*), Gumani Pant, Gaurda, Krishna Pandey (*Kalyug Varnan*), Pt. Ganga Datt Upreti (*Proverbs & Folklore*, *Hill Dialects*), Dr. Trilochan Pandey (*Kumaoni Bhasha aur Uska Sahitya*), Dr. Gunanand Juyal (*Madhya Pahadi Bhasha*), Thakur Dewan Singh Bisht (*Deewani Vinod*), Chintamani Paliwal (*Kumaun ke Samrat*), Dr. Pramila Joshi (*Bajyaani Ka Dhur*), Girish Tiwari 'Girda', Heera Singh Rana, Kabootari Devi, Mohan Upreti, and Dr. Charu Chandra Pande.
82
+ - **Festivals & Almanac**: Traditional festivals (*Harela*, *Phool Dei*, *Ghughutiya*, *Olgia*, *Nanda Devi*, *Saatu-Aathu*, *Bhitauli*, *Khataduva*, *Bagwal*) and Kumaoni solar calendar months and seasons.
83
+
84
+ 7. **Interactive Developer Playground & CLI**
85
+ - Built-in command line interface (`kumaoni translate`, `kumaoni lookup`, `kumaoni number`).
86
+ - Modern glassmorphism web playground running locally with zero dependencies.
87
+
88
+ ---
89
+
90
+ ## 🚀 Installation
91
+
92
+ Install via pip directly from PyPI:
93
+
94
+ ```bash
95
+ pip install kumaoni
96
+ ```
97
+
98
+ Or install from GitHub source in development mode:
99
+
100
+ ```bash
101
+ git clone https://github.com/infoakshatsinghbisht-eng/kumaoni-language-library.git
102
+ cd kumaoni-language-library
103
+ pip install -e .
104
+ ```
105
+
106
+ ---
107
+
108
+ ## 📖 Quickstart Guide
109
+
110
+ ### 1. Universal Translation
111
+
112
+ ```python
113
+ import kumaoni
114
+
115
+ # Translate from English to Kumaoni
116
+ result = kumaoni.translate("Where is the hospital?", source="en")
117
+ print(result) # Output: अस्पताल कतुक दूर छ?
118
+ print(result.romanized) # Output: Aspataal katuk door chha?
119
+
120
+ # Translate from any world language (e.g., French, Spanish, Hindi)
121
+ fr_result = kumaoni.translate("Comment allez-vous?", source="fr")
122
+ print(fr_result) # Output: कस छू तुम?
123
+
124
+ hi_result = kumaoni.translate("मुझे पानी चाहिए।", source="hi")
125
+ print(hi_result) # Output: मैंकणी पाणि चाही।
126
+ ```
127
+
128
+ ### 2. Verb Conjugator
129
+
130
+ ```python
131
+ import kumaoni
132
+ from kumaoni.constants import Tense, Gender
133
+
134
+ # Conjugate 'जाण' (to go) in the past tense for 1st person
135
+ past_form = kumaoni.conjugate("जाण", tense=Tense.PAST, person=1, gender=Gender.MASCULINE)
136
+ print(past_form) # Output: 'ग्यूँ' (I went)
137
+
138
+ # Conjugate 'खाण' (to eat) in the future tense
139
+ future_form = kumaoni.conjugate("खाण", tense=Tense.FUTURE, person=1)
140
+ print(future_form) # Output: 'खालूँ' (I will eat)
141
+
142
+ # Auxiliary verb 'to be' (छ-)
143
+ is_form = kumaoni.conjugate_to_be(tense=Tense.PRESENT, person=3)
144
+ print(is_form) # Output: 'छ' (is)
145
+
146
+ # Morphological Participles & Agent Nouns
147
+ print(kumaoni.conjunctive_participle("खाण")) # 'खाईबेर' (having eaten)
148
+ print(kumaoni.agent_noun("गाण")) # 'गाण्या' (singer)
149
+ print(kumaoni.imperative("औण", polite=True)) # 'आया' (please come)
150
+
151
+ # Causatives & Compound Verbs
152
+ print(kumaoni.causative("करण", degree=1)) # 'करौण' (to make someone do)
153
+ print(kumaoni.causative("खाण", degree=1)) # 'खिलाण' (to feed)
154
+ print(kumaoni.compound_verb("खाण", "हाल्ण")) # 'खाईहाल्ण' (to eat up completely)
155
+
156
+ # Passive & Medio-Passive (Inability with -बटि)
157
+ print(kumaoni.passive("करण")) # 'कर्यो जान्छ' (is done)
158
+ print(kumaoni.medio_passive_inability("मैं", "हिंण")) # 'मैंबटि हिंड्यो नी जाँछ।'
159
+
160
+ # SOV Sentence Builder & Conditionals
161
+ sent = kumaoni.build_sentence(subject="राम", direct_object="भात", verb="खाण")
162
+ print(sent) # 'राम भात खान्छ।'
163
+
164
+ cond = kumaoni.conditional("बरखा होली", "हम घर म रौला")
165
+ print(cond) # 'जै बरखा होली, त हम घर म रौला।'
166
+
167
+ # Relative-Correlative Clauses (सम्बन्धवाचक रचना)
168
+ print(kumaoni.relative_correlative("मेहनत करलो", "फल पालो", marker_type="who"))
169
+ # Output: 'जो मेहनत करलो, सो फल पालो।'
170
+
171
+ # Prohibitive Commands (निषेधात्मक आज्ञा - झनि)
172
+ print(kumaoni.prohibitive("जाण", polite=True)) # 'झनि जाया' (Please do not go)
173
+ print(kumaoni.prohibitive("रोण", polite=True)) # 'झनि रोया' (Please don't cry)
174
+
175
+ # Modals: Ability, Obligation, and Desideratives
176
+ print(kumaoni.modal_ability("मैं", "हिंण")) # 'मैं हिंडि सकन्छू।' (I can walk)
177
+ print(kumaoni.modal_obligation("तुम", "काम करण")) # 'तुमकणी काम करण चाही।' (You should work)
178
+ print(kumaoni.modal_obligation("मैं", "जाण", strong=True)) # 'मैंकणी जाण पडलो।' (I will have to go)
179
+ print(kumaoni.modal_desiderative("मैं", "भात खाण")) # 'मैं भात खाण चान्छू।' (I want to eat food)
180
+
181
+ # Interrogative Questions (प्रश्नवाचक रचना)
182
+ print(kumaoni.interrogative_sentence("कहाँ", subject="अस्पताल")) # 'अस्पताल कहाँ छ?'
183
+ print(kumaoni.interrogative_sentence("क्या", subject="तुमार नाम")) # 'तुमार नाम क्या छ?'
184
+ ```
185
+
186
+
187
+ ### 3. Numbers & Devanagari Numerals
188
+
189
+ ```python
190
+ import kumaoni
191
+
192
+ # Integer to Kumaoni words
193
+ print(kumaoni.num_to_words(42)) # 'बयालीस'
194
+ print(kumaoni.num_to_words(108, script="latin")) # 'ek sau aath'
195
+
196
+ # Ordinals & fractions
197
+ print(kumaoni.ordinal(1)) # 'पैलो' (1st)
198
+ print(kumaoni.ordinal(2)) # 'दुसर' (2nd)
199
+ print(kumaoni.fraction(1, 2)) # 'आधो' (half)
200
+
201
+ # Devanagari numerals
202
+ print(kumaoni.to_devanagari_numerals(2026)) # '२०२६'
203
+ print(kumaoni.from_devanagari_numerals("२०२६")) # 2026
204
+
205
+ # Words back to numbers
206
+ print(kumaoni.words_to_num("बयालीस")) # 42
207
+ ```
208
+
209
+ ### 4. Dictionary & Lexicon Search
210
+
211
+ ```python
212
+ import kumaoni
213
+
214
+ # Exact lookup
215
+ word = kumaoni.lookup("ईजा")
216
+ print(f"{word.kumaoni} -> {word.english} ({word.hindi})")
217
+ # Output: 'ईजा -> mother (माँ)'
218
+
219
+ # Cross-language search
220
+ results = kumaoni.search("water")
221
+ for w in results:
222
+ print(f"{w.kumaoni} ({w.roman}): {w.english}")
223
+ # Output: 'पाणि (paani): water'
224
+ ```
225
+
226
+ ### 5. Morphological Lemmatizer & Analyzer (200,000+ Words)
227
+
228
+ ```python
229
+ import kumaoni
230
+
231
+ # Check total synthesized and indexed full-form vocabulary
232
+ print(kumaoni.total_word_forms()) # Output: 300,516+ words
233
+
234
+ # Lemmatize inflected verb forms, case-marked nouns, or postpositions
235
+ print(kumaoni.lemmatize("खान्छू")) # 'खाण' (to eat)
236
+ print(kumaoni.lemmatize("जाँला")) # 'जाण' (to go)
237
+ print(kumaoni.lemmatize("घरबटि")) # 'घर' (house)
238
+ print(kumaoni.lemmatize("ईजा कणी")) # 'ईजा' (mother)
239
+
240
+ # Deep morphological analysis (extracts tense, person, case, number, lemma)
241
+ analyses = kumaoni.analyze("खान्छू")
242
+ for a in analyses:
243
+ print(f"Lemma: {a.lemma}, POS: {a.pos}, Tense: {a.tense}, Person: {a.person}, Number: {a.number}")
244
+ # Output: Lemma: खाण, POS: verb_finite, Tense: present, Person: 1, Number: sg
245
+
246
+ # Seamless dictionary lookup on inflected words
247
+ w = kumaoni.lookup("खान्छू")
248
+ print(f"Resolved to: {w.kumaoni} -> {w.english}") # Resolved to: खाण -> to eat
249
+ ```
250
+
251
+ ### 6. Script & Phonetics
252
+
253
+ ```python
254
+ import kumaoni
255
+
256
+ # Transliterate English phonetics to Devanagari
257
+ print(kumaoni.transliterate("Jai Dev, dajyu kas chou?", to_script="devanagari"))
258
+ # Output: 'जय देव, दाज्यू कस छौ?'
259
+
260
+ # Transliterate Devanagari to Romanized
261
+ print(kumaoni.transliterate("पैलाग भुली", to_script="latin"))
262
+ # Output: 'pailag bhuli'
263
+ ```
264
+
265
+ ### 7. Cultural Heritage, Literature & Folklore
266
+
267
+ ```python
268
+ import kumaoni
269
+
270
+ # Access Folk Epics (Pauwada / Bhad)
271
+ malushahi = kumaoni.literature.get_epic("malushahi")
272
+ print(malushahi.title_kumaoni) # 'राजुला मालूशाही'
273
+ print(malushahi.synopsis)
274
+
275
+ # Explore Traditional Valley Poetry (Nyoli / Jhora)
276
+ bedu_pako = kumaoni.literature.poems()[0]
277
+ print(bedu_pako.title_kumaoni) # 'बेड़ू पाको बारह मासा'
278
+ print(bedu_pako.verses_kumaoni[0]) # 'बेड़ू पाको बारह मासा, ओ नरण काफल पाको चैत, मेरी छैला!'
279
+
280
+ # Canonical Kumaoni Authors & Poets (Gumani Pant, Gaurda, Dr. Charu Chandra Pande)
281
+ gumani = kumaoni.literature.get_author("gumani_pant")
282
+ print(f"{gumani.name_kumaoni} ({gumani.era}): {gumani.significance}")
283
+
284
+ # Random proverb (Akhaan) & riddle (Aana)
285
+ proverb = kumaoni.proverbs.random()
286
+ print("Akhaan:", proverb["kumaoni"], "->", proverb["figurative_meaning"])
287
+
288
+ riddle = kumaoni.riddles.random()
289
+ print("Aana:", riddle["riddle"], "-> Answer:", riddle["answer_kumaoni"])
290
+
291
+ # Traditional Kumaoni festival information
292
+ harela = kumaoni.festivals.get("harela")
293
+ print(harela.description)
294
+ ```
295
+
296
+ ---
297
+
298
+ ## 📋 Comprehensive API Function Reference
299
+
300
+ All key functions are directly accessible via `import kumaoni`:
301
+
302
+ | Category | Function / Property | Description |
303
+ |---|---|---|
304
+ | **Translation** | `kumaoni.translate(text, source='en', target='kumaoni')` | Translate from 100+ world languages into Kumaoni. |
305
+ | **Voice & Speech** | `kumaoni.voice_translate(text, ...)` | Voice translation pipeline (text + IPA phonetic script + audio). |
306
+ | | `kumaoni.voice.phrases()` | Get categorized authentic conversational phrases. |
307
+ | **Dictionary & Search** | `kumaoni.lookup(word)` | Search base dictionary definitions (Kumaoni, Hindi, English). |
308
+ | | `kumaoni.search(query)` | Multi-result search in vocabulary database. |
309
+ | **Morphology (300k+ Forms)** | `kumaoni.lemmatize(word)` | Reduces inflected forms (`खान्छू`, `घरबटि`) to base dictionary lemma. |
310
+ | | `kumaoni.analyze(word)` | Deep grammatical analysis (POS, tense, case, gender, person). |
311
+ | | `kumaoni.total_word_forms()` | Count of indexed morphological forms (300,000+). |
312
+ | **Verb Conjugation** | `kumaoni.conjugate(verb, tense, person, ...)` | Conjugates verbs across Present, Past, Future, Continuous. |
313
+ | | `kumaoni.conjugate_to_be(tense, person, ...)`| Conjugates auxiliary substantive verb (`छ-` / to be). |
314
+ | | `kumaoni.imperative(verb, honorific=...)` | Forms imperative commands (`खा`, `खाओ`, `खाइये`). |
315
+ | | `kumaoni.causative(verb, degree=1)` | Forms 1st and 2nd degree causative verbs (`खवाण`, `खववाण`). |
316
+ | | `kumaoni.passive(verb, tense=...)` | Forms passive voice constructions. |
317
+ | | `kumaoni.conjunctive_participle(verb)` | Conjunctive participle 'having done' (`खाईकन`, `जाईकन`). |
318
+ | | `kumaoni.agent_noun(verb)` | Agentive noun 'the one who does' (`खन्या`, `जन्या`). |
319
+ | | `kumaoni.compound_verb(main, vector, ...)` | Aspectual compound verbs (`खा ल्हियो`). |
320
+ | | `kumaoni.prohibitive(verb, honorific=...)` | Negative prohibitive commands (`झन् खा`). |
321
+ | | `kumaoni.modal_ability(verb, subject=...)` | Modal ability 'can do' (`सकण`). |
322
+ | | `kumaoni.modal_obligation(verb, subject=...)`| Modal obligation 'must / should do' (`पड़ण`). |
323
+ | | `kumaoni.modal_desiderative(verb, ...)` | Modal desiderative 'wants to do' (`चाण`). |
324
+ | **Grammar & Syntax** | `kumaoni.build_sentence(sub, verb, obj, ...)`| Generates grammatically aligned SOV sentences. |
325
+ | | `kumaoni.conditional(cond, conseq)` | Conditional sentences (`अगर... तब...`). |
326
+ | | `kumaoni.relative_correlative(rel, corr)` | Relative-correlative clauses (`जो... सो...`). |
327
+ | | `kumaoni.interrogative_sentence(sub, ...)` | Question sentences (`कहाँ`, `कबे`, `क्योँ`, `को`). |
328
+ | | `kumaoni.echo_word(word)` | Reduplicative echo words (`भात-व़ात`, `किताब-सिताब`). |
329
+ | **Nouns & Declension** | `kumaoni.pluralize(noun, gender=...)` | Pluralizes nouns by declension class. |
330
+ | | `kumaoni.decline_noun(noun, case, ...)` | Declines nouns into grammatical cases. |
331
+ | | `kumaoni.to_oblique(noun, ...)` | Oblique stem for postpositions. |
332
+ | | `kumaoni.attach_case(noun, case, ...)` | Attaches vibhakti case markers to noun. |
333
+ | | `kumaoni.get_marker(case)` | Returns case marker postposition (`-ले`, `-कणी`, `-बटि`, `-म`). |
334
+ | | `kumaoni.get_pronoun(person, case, ...)` | Resolves personal pronouns across cases. |
335
+ | | `kumaoni.to_feminine(word)` / `to_masculine` | Converts gender forms of nouns/adjectives. |
336
+ | | `kumaoni.make_diminutive(noun)` | Diminutive affection forms (`गाड़` ➔ `गड्यूल`). |
337
+ | **Numbers & Fractions** | `kumaoni.num_to_words(number)` | Integer to Kumaoni words (`108` ➔ `'एक सौ आठ'`). |
338
+ | | `kumaoni.words_to_num(words)` | Kumaoni number words to integer. |
339
+ | | `kumaoni.to_devanagari_numerals(n)` | Converts number to Devanagari numerals (`२०२६`). |
340
+ | | `kumaoni.from_devanagari_numerals(s)` | Devanagari numerals back to integer. |
341
+ | | `kumaoni.ordinal(n)` | Ordinals (`पैलो`, `दुसर`, `तेसर`, `चौथ`). |
342
+ | | `kumaoni.fraction(val)` | Fractions (`आधो`, `पाव`, `सवा`, `डेढ़`, `ढाई`). |
343
+ | **Phonetics & Script** | `kumaoni.transliterate(text, to_script=...)`| Two-way Devanagari ↔ Latin/Roman transliteration. |
344
+ | | `kumaoni.devanagari_to_latin(text)` | Transliterates Devanagari into Latin phonetic script. |
345
+ | | `kumaoni.latin_to_devanagari(text)` | Converts Romanized Kumaoni input to Devanagari. |
346
+ | | `kumaoni.normalize(text)` | Normalizes Devanagari diacritics and nuktas. |
347
+ | | `kumaoni.detect_script(text)` | Detects `'devanagari'`, `'latin'`, or `'mixed'`. |
348
+ | | `kumaoni.tokenize(text)` / `syllables(text)`| Tokenizes words and splits phonetic syllables. |
349
+ | **Culture & Literature** | `kumaoni.proverbs.all()` / `.random()` | 45+ Proverbs (*Akhaan*) with literal & cultural meanings. |
350
+ | | `kumaoni.riddles.all()` / `.random()` | 20+ Traditional Riddles (*Aana*) with hints & answers. |
351
+ | | `kumaoni.phrases.all()` / `.random()` | 75+ Conversational phrases, idioms & blessings. |
352
+ | | `kumaoni.festivals.list()` / `.get(name)` | Festivals (*Harela*, *Phool Dei*, *Ghughutiya*, *Nanda Devi*). |
353
+ | | `kumaoni.literature.epics()` / `.get_epic(id)`| 6 Folk Epics (*Malushahi-Rajula*, *Jiya Rani*, *Golu Devta*). |
354
+ | | `kumaoni.literature.poems()` | Canonical Kumaoni poems & folk songs. |
355
+ | | `kumaoni.literature.authors()` / `.get_author(id)` | Biographies of 15+ canonical scholars & poets. |
356
+ | | `kumaoni.get_months()` / `get_seasons()` | Kumaoni solar calendar months & 6 traditional seasons. |
357
+ | | `kumaoni.get_current_season()` | Calculates active season for today's date. |
358
+
359
+ For exhaustive explanations and parameter details, see [DOCUMENTATION.md](file:///c:/Users/digit_lgfi273/OneDrive/Desktop/kumaoni%20language%20library/DOCUMENTATION.md).
360
+
361
+ ---
362
+
363
+ ## 💻 Command-Line Interface (CLI)
364
+
365
+ The library provides a CLI tool `kumaoni`:
366
+
367
+ ```bash
368
+ # Translate text
369
+ kumaoni translate "Where does this road go?" --source en
370
+
371
+ # Dictionary lookup
372
+ kumaoni lookup "काफल"
373
+ kumaoni lookup "पिछौड़ा"
374
+
375
+ # Number to words
376
+ kumaoni number 108
377
+
378
+ # Verb conjugation
379
+ kumaoni conjugate "जाण" --tense past --person 1
380
+
381
+ # Random proverb / riddle
382
+ kumaoni proverb
383
+ kumaoni riddle
384
+ ```
385
+
386
+ ---
387
+
388
+ ## 🖥️ Interactive Web Playground
389
+
390
+ Launch the interactive local web playground to test translation and explore the language in a browser:
391
+
392
+ ```bash
393
+ python -m kumaoni.web.app 8080
394
+ ```
395
+ Open [http://localhost:8080](http://localhost:8080) in your browser.
396
+
397
+ ---
398
+
399
+ ## 📂 Project Architecture
400
+
401
+ ```
402
+ kumaoni/
403
+ ├── __init__.py # Unified top-level namespace (kumaoni.translate, literature, etc.)
404
+ ├── constants.py # Dialects, grammatical constants, solar calendar
405
+ ├── phonetics.py # Script transliteration, Devanagari normalizer
406
+ ├── grammar/
407
+ │ ├── verbs.py # Verb root extraction & conjugation engine
408
+ │ ├── nouns.py # Noun morphology, pluralization, case declensions
409
+ │ ├── pronouns.py # Pronoun tables across person, number, and case
410
+ │ └── postpositions.py # Karaka markers (-ले, -कणी, -बटि, -म, etc.)
411
+ ├── numbers/
412
+ │ └── converter.py # Integer to words, ordinals, fractions, numerals
413
+ ├── lexicon/
414
+ │ ├── dictionary.py # Fast search across Devanagari, English, and Hindi
415
+ │ └── data/ # Curated JSON datasets (370+ words, phrases, Akhaan, Aana)
416
+ ├── translator/
417
+ │ ├── engine.py # Unified translation orchestrator
418
+ │ ├── rule_based.py # Rule-based linguistic transfer & dialogue patterns
419
+ │ ├── pivot.py # Universal multi-language bridge (Any Language -> Kumaoni)
420
+ │ └── llm_adapter.py # Native Gemini/OpenAI neural integration
421
+ ├── culture/
422
+ │ ├── festivals.py # Cultural documentation (Harela, Phooldei, etc.)
423
+ │ ├── calendar.py # Kumaoni solar months & seasons
424
+ │ └── literature.py # Folk Epics (Malushahi, Bafaul), Nyoli, Jhora, Authors
425
+ ├── cli.py # Command-line interface
426
+ └── web/ # Interactive developer playground
427
+ ```
428
+
429
+ ---
430
+
431
+ ## 📚 Data Sources & Acknowledgments
432
+
433
+ This library synthesizes datasets and oral cultural heritage from:
434
+ - **eUttaranchal** (*Learn Kumaoni* linguistic lessons 1–3)
435
+ - **SpeakKumaoni** & **PahadiLingo** (Himalayan vocabulary & phonetic guides)
436
+ - **Kumauni Archives** & **Kumauni Culture** (Oral literature, e-books, e-magazines)
437
+ - **Linguistic Research**: Works of Dr. D.D. Sharma (*Linguistic Geography of Kumaun Himalayas*), Dr. Charu Chandra Pande, G.A. Grierson (*LSI*), Saraswati Kohli (*Kumaoni Kahavatein*), Gumani Pant, and Gaurda.
438
+
439
+ ---
440
+
441
+ ## 📜 License
442
+
443
+ MIT License &copy; 2026 Kumaoni Language Initiative. Open-source and free for all developers, linguists, and researchers.
444
+
445
+ ---
446
+
447
+ ## 👤 Author & Creator Profile
448
+
449
+ * **Creator & Author**: **Akshat Singh Bisht**
450
+ * **Official Website**: [https://akshatsinghbisht.com/](https://akshatsinghbisht.com/)
451
+ * **Email**: [infoakshatsinghbisht@gmail.com](mailto:infoakshatsinghbisht@gmail.com)
452
+ * **LinkedIn**: [Akshat Singh Bisht on LinkedIn](https://www.linkedin.com/in/akshat-singh-bisht-digital-performance-marketing-specialist/)
453
+ * **Amazon Author Profile**: [Akshat Singh Bisht on Amazon](https://www.amazon.com/stores/Akshat-Singh-Bisht/author/B0D5TYDT28?ref=sr_ntt_srch_lnk_1&qid=1789906571&sr=8-1&shoppingPortalEnabled=true)
454
+ * **ResearchGate**: [Akshat Bisht on ResearchGate](https://www.researchgate.net/profile/Akshat-Bisht-8)
455
+ * **GitHub**: [@infoakshatsinghbisht-eng](https://github.com/infoakshatsinghbisht-eng)
456
+ * **Kumaoni Repository**: [https://github.com/infoakshatsinghbisht-eng/kumaoni-language-library](https://github.com/infoakshatsinghbisht-eng/kumaoni-language-library)
457
+ * **Garhwali Repository**: [https://github.com/infoakshatsinghbisht-eng/garhwali-language-library](https://github.com/infoakshatsinghbisht-eng/garhwali-language-library)
458
+ * **Garhwali PyPI**: [https://pypi.org/project/garhwali/](https://pypi.org/project/garhwali/)
459
+
460
+ ---
461
+
462
+ ## 📄 License
463
+ This project is licensed under the **MIT License** — dedicated to the computational preservation, linguistic research, and cultural advancement of the Himalayan languages of Uttarakhand.