मैं Baekjoon के लिए JavaScript/TypeScript framework बना रहा हूँ
(github.com/lumirlumir)नमस्ते!
Baekjoon algorithm समस्याओं को JavaScript और TypeScript में हल करते समय जो कई असुविधाएँ महसूस हुईं, उन्हें दूर करने के लिए मैं 'Banana' नाम का Baekjoon के लिए समर्पित JavaScript/TypeScript open source framework बना रहा हूँ.
पहले अपने undergraduate दिनों में मैं मुख्य रूप से C++ में समस्याएँ हल करता था, इसलिए Baekjoon का environment इतना असुविधाजनक नहीं लगा. लेकिन frontend developer के रूप में काम करते हुए मेरा मन JavaScript और TypeScript में समस्याएँ हल करने का हुआ, और जब वास्तव में शुरू किया तो हर बार जटिल input handling, latest syntax पर पाबंदियाँ, testing न कर पाने जैसी बड़ी-छोटी कई सीमाएँ सामने आईं.
इसीलिए इन असुविधाओं को बेहतर बनाने के लिए, Next.js के implementation तरीके और boj-cli project के विभिन्न CLI commands से प्रेरणा लेकर, मैंने JavaScript ecosystem के अनुरूप एक संक्षिप्त और intuitive algorithm-solving environment खुद बनाने का निर्णय लिया.
React, ESLint, Next.js जैसे कई frontend open source projects में सीधे योगदान देकर जो अनुभव मिला, उसके आधार पर मैं इसे यथासंभव detail के साथ बना रहा हूँ, और चाहता हूँ कि यह JavaScript/TypeScript users के लिए वास्तव में उपयोगी tool बने.
अब तक मैंने जिन मुख्य features को implement किया है, वे इस प्रकार हैं.
- JavaScript और TypeScript support.
- ESM (ECMAScript Module) और CommonJS module system support.
- Baekjoon के Node.js environment से बंधे बिना ES16, ES2025 जैसे latest syntax support.
- custom modules और lodash जैसी external libraries import करने का support.
- Programmers की तरह सिर्फ एक
solutionfunction से शुरू करने का support. - test case लिखने और चलाने का support.
create-bananassसे शुरुआत करने का support.fsmodule का उपयोग कर और तेज input/output support.- सुविधा के लिए विभिन्न CLI commands support.
- ESLint और Prettier built-in support.
फ़िलहाल official release से पहले test code और documentation पर काम चल रहा है, और जल्द ही beta version जारी करने की योजना है.
यदि आपने JavaScript या TypeScript में Baekjoon समस्याएँ हल करते समय कोई असुविधा महसूस की हो, या आपको लगे कि 'ऐसा कोई feature होना चाहिए', तो GitHub Issues, Discussions, या इस पोस्ट पर comment के रूप में बेझिझक साझा करें!
छोटी-सी राय भी वास्तव में बहुत मददगार होती है! मैं उसे यथासंभव सक्रिय रूप से शामिल करना चाहता हूँ, ताकि हम मिलकर समस्या-समाधान के लिए और बेहतर environment बना सकें.
परियोजना से जुड़े लिंक
-
आधिकारिक दस्तावेज़: https://bananass.lumir.page
अभी कोई टिप्पणी नहीं है.