क्रॉस-प्लेटफ़ॉर्म डेवलपमेंट फ़्रेमवर्क Flutter से बनाया गया जिउ-जित्सु प्रतियोगिताओं के लिए एक स्कोरबोर्ड साझा कर रहा हूँ :)
-
GitHub Pages पर चलाने योग्य वेब वर्ज़न उपलब्ध है.
-
Flutter में बनाया गया होने की वजह से इसे अलग-अलग वातावरणों (PC, Android, iOS) में चलने वाले वर्ज़न के रूप में बिल्ड किया जा सकता है.
काम करने वाली सुविधाओं की सूची इस प्रकार है.
-
टाइमर: शुरू/रोकें/समय बदलें/6 मिनट पर वापस करें
-
साउंड: टाइमर शुरू होने पर, समाप्त होने पर, और रीसेट के बाद दोबारा शुरू होने पर बीप की आवाज़
-
खिलाड़ियों के नाम दर्ज करना
-
हर खिलाड़ी के लिए 4-पॉइंट/3-पॉइंट/2-पॉइंट यूनिट में स्कोर बढ़ाना/घटाना
-
हर खिलाड़ी के लिए Advantage/Penalty देना
-
कुल स्कोर की गणना
-
स्कोरबोर्ड रीसेट
इसे बनाने की वजहें ये थीं.
-
कई वजहों से...! Flutter में मेरी दिलचस्पी जगी थी, इसलिए सीखते हुए मैंने एक बहुत ही साधारण ऐप पहले बनाया था.
-
मैं लगभग 1 साल से जिउ-जित्सु सीख रहा था, और जिस dojo में मैं जाता था वहाँ एक प्रतियोगिता आयोजित होने वाली थी.
-
प्रतियोगिता में इस्तेमाल होने वाला स्कोरबोर्ड मोबाइल ऐप के रूप में तो था, लेकिन काम का कोई डेस्कटॉप ऐप नहीं था (= खिलाड़ी या संबंधित लोग स्कोर नहीं देख पाते थे, और रेफ़री पर भी समझाने का बोझ पड़ता था)
-
जिन लोगों को पता था कि मैं डेवलपमेंट करता हूँ, उन्होंने आधे मज़ाक में कहा, 'अरे, ये तो आप बना सकते हैं ना!?'
-
लेकिन ये सुनकर अचानक लगा कि Flutter के लिए यह सच में एक ऐसा आइटम है जहाँ उसकी उपयोगिता अच्छी तरह सामने आ सकती है...!
-
मैंने इसे वीकेंड पर बनाया, फिर प्रतियोगिता में इसका इस्तेमाल हुआ, और अब भी हो रहा है.
मौजूदा स्कोरबोर्ड से इसका अंतर यह है:
-
फ़ंक्शन के हिसाब से यह लगभग वही है.
-
लेकिन इसे ब्राउज़र में देखा जा सकता है, और ब्राउज़र के साइज़ के अनुसार इसकी ऊँचाई-चौड़ाई बदलती रहती है.
-
यानी यह मोबाइल सहित कहीं भी इस्तेमाल किया जा सकने वाला स्कोरबोर्ड है.
-
स्क्रीन की ऊँचाई के अनुसार फ़ॉन्ट साइज़ डायनैमिक रूप से बदलता है.
Flutter में इस्तेमाल होने वाली GetX लाइब्रेरी का उपयोग करके state management किया गया है.
डेवलपमेंट कॉन्फ़िगरेशन की जटिलता बहुत अधिक नहीं थी, इसलिए component-आधारित MVC pattern का उपयोग करके UI/Logic/Data को अलग रखते हुए कोड बनाया गया.
यह Flutter की आधारभूत भाषा Dart में बनाया गया है. एक बार देखकर अपने विचार, फ़ीडबैक, या किसी भी तरह की रुचि साझा करेंगे तो बहुत आभारी रहूँगा!!
7 टिप्पणियां
मैंने Flutter से Web development के बारे में सिर्फ सुना था, पहली बार देख रहा हूँ.
Developer tools से देखा तो Web develop करने से ज़्यादा
ऐसा लगता है कि आपने browser में चलने वाला App बनाया है.
कमाल है.~~ आप तो वाकई बहुत प्रतिभाशाली हैं!!
@misolab सही कहा, क्योंकि यह canvas पर ड्रॉ करने का तरीका है, इसलिए असल में बस पूरा का पूरा app ही उसके ऊपर चढ़ा दिया जाता है...
सच कहूँ तो मैंने भी Flutter Web डेवलपमेंट के बारे में सिर्फ़ सुना था, और सोचा था कि Flutter से एक ब्लॉग बनाना चाहिए! लेकिन मैंने यह विचार यहीं छोड़ दिया...
मूल रूप से वह search engine में आता ही नहीं दिखा....;
शायद Google search engine यह कर देगा, है न? बेकार के अजीब search bots तो वैसे भी कंटेंट नहीं ले जा पाएँगे, इसलिए शायद यह उल्टा और भी ज़्यादा साफ-सुथरा इलाका बन जाए... ^^;
ऐसा हो भी सकता है...!? haha मैं भी दिलचस्पी लेकर इसे लगातार देख रहा हूँ, और यह तेजी से आगे बढ़ रहा है, इसलिए उम्मीद की जा सकती है haha
Googlebot Chrome-आधारित है, इसलिए कुछ हद तक यह संभव बताया जाता है.
लेकिन SEO को ठीक से करना हो तो ज़्यादातर लोग कहते हैं कि bots के लिए अलग HTML version बनाना चाहिए.
दुर्भाग्य से मुझे जिउ-जित्सु के बारे में बिल्कुल जानकारी नहीं है..
लेकिन आपने कहा कि इसे प्रतियोगिता में इस्तेमाल करेंगे, तो मैंने सोचा कि अगर leaderboard के रूप में मौजूदा स्कोर रिकॉर्ड सेव किए जा सकें तो अच्छा होगा।
खिलाड़ी-वार लॉगिन वगैरह हो, तो हर खिलाड़ी की history भी संभव लगती है।
और, मैं जिन ऐप्स का अक्सर इस्तेमाल करता हूँ उनमें BG Stats नाम का एक board game play record ऐप है,
मुझे याद है कि जब किसी खास प्रतिद्वंद्वी के साथ मुकाबला हुआ हो, तो वह यह दिखाता है कि कितनी बार/कितने अंकों के अंतर से जीते, और प्रतिद्वंद्वी-वार win rate statistics भी दिखाता है।
https://www.bgstatsapp.com/
@xguru
वाह, यह तो खिलाड़ियों के करियर रिकॉर्ड मैनेजमेंट तक संभव करने वाले प्लेटफ़ॉर्म में विकसित हो सकता है...! इतनी insightful राय के लिए धन्यवाद!!
BG Stats, यानी बोर्ड गेम प्ले रिकॉर्ड ऐप...! मुझे भी कुछ चुनिंदा बोर्ड गेम काफ़ी पसंद हैं, तो यह वाकई कमाल का ऐप है...!
जुजित्सु में भी स्कोरिंग होती है, इसलिए सच में लगता है कि इससे संदर्भ लेने लायक बहुत-सा कंटेंट है.
रेफ़रेंस resources के लिए भी बहुत-बहुत धन्यवाद!!