Bazel का इस्तेमाल कौन कर रहा है

समस्या की शिकायत करें सोर्स देखें Nightly · 8.4 · 8.3 · 8.2 · 8.1 · 8.0 · 7.6

इस पेज पर उन कंपनियों और ओएसएस प्रोजेक्ट की सूची दी गई है जो Bazel का इस्तेमाल करती हैं. इसका मतलब यह नहीं है कि Google इस कॉन्टेंट का प्रमोशन कर रहा है.

Bazel का इस्तेमाल करने वाली कंपनियां

acqio

Acqio एक फ़िनटेक कंपनी है. यह छोटे और मीडियम कारोबारियों को पेमेंट प्रॉडक्ट और सेवाएं उपलब्ध कराती है. Acqio के पास कुछ ही मोनोरिपो हैं. साथ ही, यह तेज़ और भरोसेमंद माइक्रोसेवाएं देने के लिए, Kubernetes के साथ-साथ Bazel का इस्तेमाल करता है.

Adobe

Adobe ने लगातार और GitOps पर आधारित Kubernetes डिप्लॉयमेंट के लिए, Bazel rules रिलीज़ किए हैं.

Asana

Asana, वेब और मोबाइल ऐप्लिकेशन है. इसे टीमों को उनके काम को ट्रैक करने में मदद करने के लिए डिज़ाइन किया गया है. सोर्स के बारे में, उसकी वेबसाइट पर दी गई जानकारी:

Bazel की वजह से, Asana में सभी बिल्ड/टेस्ट के लिए, भरोसेमंद, स्थिर, और तेज़ परफ़ॉर्मेंस मिली है. गलत कैश मेमोरी की वजह से, अब हमें डेटा को साफ़ करने की ज़रूरत नहीं है.

Ascend.io

Ascend, पालो आल्टो की एक स्टार्टअप कंपनी है. यह बड़े डेटा सेट के विश्लेषण से जुड़े समाधान उपलब्ध कराती है. उनका सिद्धांत है कि बड़ा डेटा मुश्किल होता है. हम इसे आसान बनाते हैं.

ASML

ASML, सेमीकंडक्टर इंडस्ट्री में इनोवेशन के मामले में सबसे आगे है. हम चिप बनाने वाली कंपनियों को उनकी ज़रूरत की हर चीज़ उपलब्ध कराते हैं. जैसे, हार्डवेयर, सॉफ़्टवेयर, और सेवाएं. इससे वे लिथोग्राफ़ी की मदद से, सिलिकॉन पर पैटर्न को बड़े पैमाने पर बना पाती हैं.

Beeswax

Beeswax, न्यूयॉर्क में मौजूद एक स्टार्टअप है. यह रीयल टाइम बिडिंग की सेवा देता है. Bazel, Jenkins पर आधारित लगातार इंटिग्रेशन और डिप्लॉयमेंट फ़्रेमवर्क को बेहतर बनाता है. Beeswax को Bazel पसंद है, क्योंकि यह बहुत तेज़ी से काम करता है, सही है, और कई भाषाओं और प्लैटफ़ॉर्म पर काम करता है.

Braintree

Braintree, PayPal की एक सहायक कंपनी है. यह वेबसाइटों और ऐप्लिकेशन के लिए पेमेंट से जुड़े समाधान उपलब्ध कराती है. ये कंपनियां, अपने इंटरनल बिल्ड के कुछ हिस्सों के लिए Bazel का इस्तेमाल करती हैं. साथ ही, पॉल ग्रॉस ने Bazel पर स्विच करने के बारे में एक बेहतरीन लेख भी पोस्ट किया है.

Canva

Canva, Bazel का इस्तेमाल करके अपने बड़े पॉलीग्लॉट कोडबेस को मैनेज करता है. इसमें Java, TypeScript, Scala, Python वगैरह शामिल हैं. Bazel पर माइग्रेट करने से, डेवलपर और कंप्यूट इंफ़्रास्ट्रक्चर की क्षमता में काफ़ी सुधार हुआ है. उदाहरण के लिए, सीआई बिल्ड के औसत समय में 5 से 6 गुना की कमी आई है. साथ ही, यह कंपनी में तेज़ी से, दोहराए जा सकने वाले, और स्टैंडर्ड सॉफ़्टवेयर बिल्ड का आधार बना हुआ है.

CarGurus

CarGurus का मकसद, दुनिया का सबसे भरोसेमंद और पारदर्शी ऑटोमोटिव मार्केटप्लेस बनाना है. साथ ही, यह अपने पॉलीग्लॉट मोनोरिपो को बनाने के लिए Bazel का इस्तेमाल करता है.

Compass

Compass, टेक्नोलॉजी पर आधारित एक रीयल एस्टेट प्लैटफ़ॉर्म है. रियल एस्टेट, टेक्नोलॉजी, और कारोबार के पेशेवरों की बेहतरीन टीम के साथ, हमारा लक्ष्य घर ढूंढने वाले लोगों के लिए सबसे भरोसेमंद और बेहतरीन सोर्स बनना है.

Databricks

Databricks, Apache Spark™ पर आधारित क्लाउड-आधारित इंटीग्रेटेड वर्कस्पेस उपलब्ध कराता है.

Databricks का कोडबेस एक मोनोरिपो है. इसमें Scala कोड होता है, जो हमारी ज़्यादातर सेवाओं को बेहतर बनाता है. इसमें फ़्रंट-एंड यूज़र इंटरफ़ेस (यूआई) के लिए JavaScript, स्क्रिप्टिंग के लिए Python, और हमारे इन्फ़्रास्ट्रक्चर को कॉन्फ़िगर करने के लिए Jsonnet होता है. इसके अलावा, इसमें और भी बहुत कुछ होता है [...] हमारे मोनोरिपो में Scala की 10 लाख लाइनें होने के बावजूद, इसमें कोड के साथ काम करना तेज़ और आसान होता है. (Databricks में Bazel की मदद से Scala को तेज़ी से बिल्ड करना)

Dataform

Dataform, डेटा टीमों के लिए बड़े पैमाने पर डेटा का विश्लेषण करने की सुविधा देता है. ये एक ही मोनोरिपो में कुछ NPM पैकेज और दस्तावेज़ वाली साइट को मैनेज करते हैं. साथ ही, ये सभी काम Bazel की मदद से करते हैं.

Bazel पर माइग्रेट करने के बाद, उन्हें कई फ़ायदे मिले. इनमें ये शामिल हैं:

  • तेज़ सीआई: हमने रिमोट बिल्ड कैशिंग की सुविधा चालू की है. इससे, हमारी पूरी रिपॉज़िटरी के लिए, बिल्ड करने में लगने वाला औसत समय 30 मिनट से घटकर 5 मिनट हो गया है.
  • लोकल डेवलपमेंट में सुधार: अब आपको ऐसी बैश स्क्रिप्ट नहीं मिलेंगी जिन्हें चलाना भूल जाते हैं. साथ ही, इंक्रीमेंटल बिल्ड को मिनटों से घटाकर सेकंडों में कर दिया गया है
  • डेवलपर को सेटअप करने में लगने वाला समय: नए इंजीनियर, हमारे सभी कोड को सिर्फ़ तीन डिपेंडेंसी के साथ बना सकते हैं. ये डिपेंडेंसी हैं - Bazel, Docker, और JVM. हमारी टीम में शामिल हुए नए इंजीनियर ने, बिलकुल नए और खाली लैपटॉप पर हमारा पूरा कोड 30 मिनट से भी कम समय में बना लिया

Deep Silver FISHLABS

Deep Silver FISHLABS, बेहतरीन 3D गेम बनाने वाली कंपनी है. वे Bazel का इस्तेमाल C++/Python/Go/C के साथ करते हैं. इसका इस्तेमाल, वे इंटरनल बिल्ड टूलिंग के लिए करते हैं. साथ ही, वे इसका इस्तेमाल खास तौर पर अपनी सभी 3D ऐसेट को बेक और डिप्लॉय करने के लिए करते हैं.

Dropbox

Dropbox में, Bazel हमारे डिस्ट्रिब्यूटेड बिल्ड और टेस्ट एनवायरमेंट का एक अहम हिस्सा है. हम Bazel का इस्तेमाल करके, TypeScript/Python/Go/C/Rust को भरोसेमंद प्रोडक्शन रिलीज़ में शामिल करते हैं.

Engel & Völkers

Engel & Völkers AG, जर्मनी की एक निजी कंपनी है. यह फ़्रैंचाइज़ी वाले कई ऑफ़िस के ज़रिए, प्रॉपर्टी के लेन-देन से जुड़ी सेवाएं देती है.

हमारे एक इंटरनल प्रोजेक्ट में, कंपाइल होने में लगने वाला समय 11 मिनट से घटकर करीब 1 मिनट हो गया है. यह एक शानदार उपलब्धि है. फ़िलहाल, हम Bazel को ज़्यादा प्रोजेक्ट में इस्तेमाल करने पर काम कर रहे हैं. (Google Cloud Build और Bazel का इस्तेमाल करके एक्सपेरिमेंट करना)

Etsy

Etsy एक ई-कॉमर्स वेबसाइट है. यह हाथ से बने या पुराने आइटम और सामान के साथ-साथ, फ़ैक्ट्री में बने यूनीक आइटम पर फ़ोकस करती है.

Bazel का इस्तेमाल, Java पर आधारित सर्च प्लैटफ़ॉर्म को बनाने और उसकी जांच करने के लिए किया जाता है. Bazel, बेयर मेटल सर्वर और बार-बार इस्तेमाल की जा सकने वाली Docker इमेज, दोनों के लिए पैकेज बनाता है.

Evertz.io

Evertz.io, मल्टी-टेनेंट और सर्वरलेस SaaS प्लैटफ़ॉर्म है. यह ब्रॉडकास्ट मीडिया इंडस्ट्री को दुनिया भर में, कम लागत वाली और कई क्षेत्रों में उपलब्ध सेवाएं देने के लिए बनाया गया है. इसे Evertz Microsystems ने बनाया है.

वेबसाइट को Angular और Bazel वर्कफ़्लो की मदद से पूरी तरह से बनाया और डिप्लॉय किया गया है (सोर्स).

FINDMINE

FINDMINE, खुदरा उद्योग के लिए ऑटोमेशन टेक्नोलॉजी है. यह मशीन लर्निंग का इस्तेमाल करके, प्रॉडक्ट को चुनने की मौजूदा मैन्युअल और मुश्किल प्रोसेस को आसान बनाती है. हम अपने पूरे Python पैकेज को बनाने, उसकी जांच करने, और उसे डिप्लॉय करने की प्रोसेस को अपने-आप पूरा करने के लिए Bazel का इस्तेमाल करते हैं.

Flexport

Flexport, टेक्नोलॉजी का इस्तेमाल करने वाली एक ग्लोबल फ़्रेट फ़ॉरवर्डर कंपनी है. हमारा मकसद, सभी के लिए ग्लोबल ट्रेड को आसान बनाना है. Flexport में, हम Bazel का इस्तेमाल करके Java/JavaScript सेवाओं और क्लाइंट लाइब्रेरी को बनाते/टेस्ट करते हैं. साथ ही, protobuf परिभाषाओं से Java और Ruby कोड जनरेट करते हैं. इस बारे में पढ़ें कि हम Bazel की मदद से, JUnit 5 के अलग-अलग टेस्ट को आइसोलेशन में कैसे चलाते हैं.

Foursquare

Foursquare का मिशन ऐसी टेक्नोलॉजी बनाना है जो डिजिटल स्पेस और फ़िज़िकल जगहों के बीच काम के पुल बना सके. हम Bazel की मदद से, लाखों लाइनों के Scala और Python कोड को मैनेज करते हैं. यह कोड, डेटा का ज़्यादा इस्तेमाल करने वाले ऐप्लिकेशन को बेहतर बनाता है. इनमें जटिल कोड जनरेशन और कंटेनर बनाने की प्रोसेस शामिल है.

GermanTechJobs

Bazel ने हमारे वर्कफ़्लो को 10 गुना आसान बना दिया है. साथ ही, बड़े पैमाने पर शिपिंग की सुविधाएं उपलब्ध कराई हैं.

Google

Bazel को Google की ज़रूरतों के हिसाब से बनाया गया था. साथ ही, इसे Google की इन ज़रूरी शर्तों को पूरा करने के लिए डिज़ाइन किया गया था: नतीजे दोहराए जा सकें और अलग-अलग प्लैटफ़ॉर्म/भाषाओं पर काम कर सके. Google के सभी सॉफ़्टवेयर, Bazel का इस्तेमाल करके बनाए जाते हैं. Google, हर दिन लाखों बिल्ड के लिए Bazel और उसके नियमों का इस्तेमाल करता है.

Huawei

Huawei Technologies, करीब 30 प्रोजेक्ट में Bazel का इस्तेमाल कर रही है. ये Java/Scala/Go प्रोजेक्ट हैं. Go प्रोजेक्ट को छोड़कर, बाकी प्रोजेक्ट को मूल रूप से Maven ने बनाया था. हम Maven से बनाए गए प्रोजेक्ट को Bazel से बनाए गए प्रोजेक्ट में बदलने के लिए, एक आसान टूल लिखते हैं. आने वाले समय में, ज़्यादा से ज़्यादा प्रोजेक्ट में Bazel का इस्तेमाल किया जाएगा.

IMC Trading

IMC, ग्लोबल प्रोप्रायटरी ट्रेडिंग फ़र्म और मार्केट मेकर है. इसका मुख्यालय ऐम्स्टर्डम में है. हम Bazel का इस्तेमाल करके, अपने Java/C++/Python/SystemVerilog प्रोजेक्ट को लगातार बना रहे हैं और उनकी जाँच कर रहे हैं.

Improbable.io

Improbable.io, SpatialOS को डेवलप करता है. यह एक डिस्ट्रिब्यूटेड ऑपरेटिंग सिस्टम है. इसकी मदद से, लाखों जटिल इकाइयों वाले बड़े सिमुलेशन बनाए जा सकते हैं.

Interaxon

InteraXon, दिमाग़ से कंट्रोल होने वाले कंप्यूटर बनाने वाली कंपनी है. यह कंपनी, हार्डवेयर और सॉफ़्टवेयर प्लैटफ़ॉर्म बनाती है. इनकी मदद से, दिमाग़ की तरंगों को डिजिटल सिग्नल में बदला जाता है.

Jupiter

Jupiter एक ऐसी कंपनी है जो हर हफ़्ते किराने का सामान और घर की ज़रूरी चीज़ों की डिलीवरी करती है.

ये अपने बैकएंड कोड में Bazel का इस्तेमाल करते हैं. खास तौर पर, रिमोट कैश मेमोरी का इस्तेमाल करके, protos और Kotlin को JVM बाइनरी में कंपाइल करने के लिए. (source)

अभी-अभी

Just, एंटरप्राइज़ फ़ाइनेंशियल टेक्नोलॉजी कंपनी है. इसका मुख्यालय नॉर्वे में है. यह कंपनी, सॉफ़्टवेयर सॉल्यूशन बनाती है. इससे दुनिया भर के कॉरपोरेट ट्रेज़रर, जोखिम और लिक्विडिटी को मैनेज करने के तरीके में बदलाव कर पाते हैं. उनका पूरा ऐप्लिकेशन स्टैक, Bazel की मदद से बनाया गया है.

लाइन

Line, तुरंत बातचीत करने के लिए एक ऐप्लिकेशन उपलब्ध कराता है. यह जापान में सबसे ज़्यादा इस्तेमाल किया जाने वाला मैसेजिंग ऐप्लिकेशन है. ये कंपनियां, अपने कोडबेस पर Bazel का इस्तेमाल करती हैं. इस कोडबेस में करीब 60% Swift और 40% C/C++/Objective-C/Objective-C++ कोड होता है (सोर्स).

Bazel पर स्विच करने के बाद, हमें बिल्ड टाइम में काफ़ी सुधार देखने को मिला. इससे, सवालों के जवाब देने में लगने वाले समय में काफ़ी सुधार हुआ. हमारे टेस्टर को नया बिल्ड उपलब्ध कराने का मतलब अब यह नहीं है कि आपको बिल्ड करने और उसकी जांच करने के लिए एक और घंटे का इंतज़ार करना होगा. (Bazel की मदद से, iOS के लिए LINE की परफ़ॉर्मेंस को बेहतर बनाना)

LingoChamp

LingoChamp, अंग्रेज़ी सीखने वालों के लिए पेशेवर समाधान उपलब्ध कराता है. हम अपने Go, Java, और Python प्रोजेक्ट के लिए Bazel का इस्तेमाल करते हैं.

LinkedIn

LinkedIn, Microsoft की एक सहायक कंपनी है. यह दुनिया का सबसे बड़ा प्रोफ़ेशनल सोशल नेटवर्क है. LinkedIn, अपने iOS ऐप्लिकेशन बनाने के लिए Bazel का इस्तेमाल करता है.

Lucid Software

Lucid Software, विज़ुअल कोलैबरेशन के क्षेत्र में एक लीडर है. यह टीमों को आइडिया से लेकर असलियत तक, भविष्य को देखने और बनाने में मदद करता है. Lucid के प्रॉडक्ट—Lucidchart, Lucidspark, और Lucidscale—की मदद से टीमें, एक ही विज़न के साथ काम कर सकती हैं. साथ ही, जटिल समस्याओं को आसानी से हल कर सकती हैं और विज़ुअल कोलैबरेशन कर सकती हैं. इससे कोई फ़र्क़ नहीं पड़ता कि वे कहां हैं.

Lucid, Scala और TypeScript की लाखों लाइनें बनाने के लिए Bazel का इस्तेमाल करता है. Bazel पर माइग्रेट करने से, इसके बिल्ड की प्रोसेस बहुत तेज़ हो गई है. साथ ही, बिल्ड एनवायरमेंट पर बाहरी डिपेंडेंसी कम हो गई हैं. इसके अलावा, बिल्ड सिस्टम के साथ डेवलपर के अनुभव को आसान बना दिया गया है. Bazel ने Lucid में डेवलपर की प्रॉडक्टिविटी को बेहतर बनाया है और आगे की ग्रोथ को अनलॉक किया है.

Lyft

Lyft, अपने iOS (सोर्स) और Android ऐप्लिकेशन के लिए Bazel का इस्तेमाल कर रहा है.

मीटअप

Meetup, एक ऑनलाइन सोशल नेटवर्किंग पोर्टल है. यह ऑफ़लाइन ग्रुप मीटिंग की सुविधा देता है. Meetup की इंजीनियरिंग टीम, rules_scala में योगदान देती है. साथ ही, यह rules_avro और rules_openapi को मैनेज करती है.

Nvidia

Nvidia में, हम Python के लिए dazel(Docker Bazel) का इस्तेमाल कर रहे हैं, ताकि Bazel की Python से जुड़ी कुछ कमियों को दूर किया जा सके. बाकी सभी चीज़ें, सामान्य Bazel में चलती हैं (ज़्यादातर Go / Scala/ C++/ Cuda) (सोर्स)

Peloton Technology

Peloton Technology, ऑटोमेटेड वाहन टेक्नोलॉजी कंपनी है. यह ट्रक दुर्घटनाओं और ईंधन के इस्तेमाल से जुड़ी समस्याओं को हल करती है. वे ऑटोमोटिव सुरक्षा सिस्टम के लिए भरोसेमंद बिल्ड चालू करने के लिए, Bazel का इस्तेमाल करते हैं.

पिगवीड

Pigweed, ओपन सोर्स समाधान है. इसका इस्तेमाल बड़ी टीमों के लिए, एम्बेड किए गए प्रॉडक्ट को लगातार, मज़बूत, और तेज़ी से डेवलप करने के लिए किया जाता है. Pigweed को लाखों डिवाइसों में शिप किया गया है. इनमें Google के Pixel डिवाइस, Nest थर्मोस्टैट, सैटलाइट, और ऑटोनॉमस एरियल ड्रोन शामिल हैं.

Pigweed, Bazel को मुख्य बिल्ड सिस्टम के तौर पर इस्तेमाल करता है. Bazel for Embedded ब्लॉग पोस्ट में बताया गया है कि हमें क्यों लगता है कि यह एम्बेड किए गए प्रोजेक्ट के लिए एक बेहतरीन बिल्ड सिस्टम है!

Pinterest

Pinterest, दुनिया भर के आइडिया का कैटलॉग है. ये Bazel का इस्तेमाल, अलग-अलग बैकएंड सेवाओं (Java/C++) और iOS ऐप्लिकेशन (Objective-C/C++) को बनाने के लिए करते हैं.

हमने पाया कि Bazel हमारे लक्ष्यों के लिए सबसे सही है. इससे हमें परफ़ॉर्मेंस को कई गुना बेहतर बनाने, बिल्ड एनवायरमेंट में बदलावों को खत्म करने, और धीरे-धीरे इसे अपनाने में मदद मिली. इसलिए, अब हम iOS के सभी वर्शन को Bazel का इस्तेमाल करके शिप कर रहे हैं. Pinterest में तेज़ और भरोसेमंद iOS बिल्ड डेवलप करना

PubRef

PubRef, वैज्ञानिक लेख पब्लिश करने वाला एक नया प्लैटफ़ॉर्म है. ये कंपनियां, Bazel के साथ rules_closure का इस्तेमाल करके फ़्रंटएंड बनाती हैं. साथ ही, नेटिव Java नियमों का इस्तेमाल करके मुख्य बैकएंड बनाती हैं. इसके अलावा, rules_go, rules_node, और rules_kotlin का इस्तेमाल करके, अलग-अलग बैकएंड सेवाएं बनाती हैं. rules_protobuf का इस्तेमाल, बैकएंड सेवाओं के बीच gRPC पर आधारित कम्यूनिकेशन में मदद करने के लिए किया जाता है. PubRef.org, बोल्डर, कोलोराडो में मौजूद है.

Redfin

Redfin, अगली पीढ़ी की रीयल एस्टेट ब्रोकरेज कंपनी है. इसमें स्थानीय एजेंटों की पूरी टीम है. वे वेबसाइट और अलग-अलग बैकएंड सेवाओं को बनाने और डिप्लॉय करने के लिए, Bazel का इस्तेमाल करते हैं.

कन्वर्ज़न की प्रोसेस पूरी होने के बाद, चीज़ें काफ़ी बेहतर हो गई हैं! हमारी सीआई बिल्ड प्रोसेस अब पहले से ज़्यादा तेज़ हो गई है. (बहुत ज़्यादा तेज़: पहले इसमें 40 से 90 मिनट लगते थे. अब इसमें औसतन 5 से 6 मिनट लगते हैं). साथ ही, यह ज़्यादा भरोसेमंद भी है. इसकी सटीक जानकारी देना मुश्किल है. हालांकि, पहले बिल्ड फ़ेल होने की वजह का पता नहीं चलता था और इसे “सामान्य समस्या” माना जाता था. अब इसे एक गंभीर समस्या माना जाता है और इसे ठीक करने के लिए काम किया जाता है. इससे हमें लगातार बेहतर परफ़ॉर्मेंस मिलती है. (We Switched from Maven to Bazel and Builds Got 10x Faster)

खास अंदाज़

Ritual, पिकअप करने के लिए इस्तेमाल किया जाने वाला एक मोबाइल ऐप्लिकेशन है. यह रेस्टोरेंट को ग्राहकों से कनेक्ट करता है, ताकि उन्हें खाना और पेय पदार्थ पाने के लिए एक आसान और समय बचाने वाला टूल उपलब्ध कराया जा सके. इससे उन्हें इंतज़ार भी नहीं करना पड़ता. Ritual, बैकएंड सेवाओं के लिए Bazel का इस्तेमाल करता है.

स्नैप

Snap, Snapchat मैसेजिंग ऐप्लिकेशन का डेवलपर है. इसने 2020 में Buck से Bazel पर माइग्रेट किया था (सोर्स). उनकी प्रोसेस के बारे में ज़्यादा जानकारी के लिए, उनका इंजीनियरिंग ब्लॉग देखें.

Stripe

Stripe, मोबाइल से पेमेंट करने की सुविधा उपलब्ध कराता है. वे अपनी बिल्ड और टेस्ट पाइपलाइन में Bazel का इस्तेमाल करते हैं. इसके बारे में ज़्यादा जानकारी उनके इंजीनियरिंग ब्लॉग में दी गई है.

Tinder

Tinder ने 2021 में, अपने iOS ऐप्लिकेशन को CocoaPods से Bazel पर माइग्रेट किया था (सोर्स).

Tink

Tink, यूरोप की एक फ़िनटेक कंपनी है. यह यूरोप के सभी बैंकों से कनेक्ट करने का सबसे अच्छा तरीका उपलब्ध कराती है.

वे पॉलीग्लॉट मोनोरिपो से अपनी बैकएंड सेवाएं बनाने के लिए, Bazel का इस्तेमाल कर रहे हैं. Tink के इंजीनियर, bazel build //stockholm/... meetup group को व्यवस्थित कर रहे हैं.

Tokopedia

Tokopedia, इंडोनेशिया की एक टेक्नोलॉजी कंपनी है. यह ई-कॉमर्स में विशेषज्ञता रखती है. इस प्लैटफ़ॉर्म पर हर महीने 9 करोड़ से ज़्यादा सक्रिय उपयोगकर्ता और 70 लाख से ज़्यादा कारोबारी या कंपनियां मौजूद हैं.

उन्होंने How Tokopedia Achieved 1000% Faster iOS Build Time लेख लिखा है. इसमें उन्होंने बताया है कि Bazel ने उनके बिल्ड को कैसे तेज़ किया. Bazel का इस्तेमाल करने पर, बिल्ड करने में लगने वाला समय 55 मिनट से घटकर 10 मिनट हो गया. साथ ही, रिमोट कैशिंग का इस्तेमाल करने पर, यह समय घटकर 5 मिनट हो गया.

Trunk.io

Trunk, सैन फ़्रैंसिस्को में मौजूद एक कंपनी है. इसे Andreessen Horowitz और Initialized Capital से मदद मिली है. Trunk, पुल अनुरोध को मर्ज करने की एक बेहतरीन सेवा देता है. साथ ही, यह Bazel बिल्ड सिस्टम के साथ काम करता है. Bazel, कोडबेस में मौजूद डिपेंडेंसी को समझता है. इसका इस्तेमाल करके Trunk की मर्ज सेवा, पैरलल मर्ज लेन को बेहतर तरीके से बनाती है. इससे अलग-अलग बदलावों को एक साथ टेस्ट और मर्ज किया जा सकता है.

Trunk का इंटरनल मोनोरिपो, आधुनिक C++ 20 और टाइपस्क्रिप्ट बनाता है. साथ ही, यह कोड को चुनिंदा तौर पर टेस्ट और मर्ज करने के लिए, Bazel Graph की जानकारी का इस्तेमाल करता है.

Twitter

Twitter ने अपने मुख्य बिल्ड टूल के तौर पर, Pants से Bazel पर माइग्रेट करने का फ़ैसला किया है (सोर्स).

Two Sigma

Two Sigma, न्यूयॉर्क में मौजूद एक टेक्नोलॉजी कंपनी है. इसका मकसद दुनिया के डेटा से वैल्यू हासिल करना है.

TypeDB

TypeDB का लोगो

TypeDB, डेटाबेस टेक्नोलॉजी है. इसका इस्तेमाल, आपस में जुड़े डेटा को आसानी से मॉडल करने के लिए किया जा सकता है. टाइप-थ्योरेटिक और पॉलीमॉर्फ़िक क्वेरी लैंग्वेज, TypeQL की मदद से डेटा को ऐक्सेस किया जा सकता है. इसके लिए, लोगों के पढ़ने लायक आसान क्वेरी का इस्तेमाल किया जाता है. ये क्वेरी बहुत तेज़ी से काम करती हैं.

Bazel की मदद से, TypeDB की टीम ने एक बेहतर CI और डिस्ट्रिब्यूशन पाइपलाइन बनाई है. यह पाइपलाइन, कई भाषाओं में कई रिपॉज़िटरी को मैनेज करती है. साथ ही, कई प्लैटफ़ॉर्म पर आसानी से डिप्लॉय हो जाती है. TypeDB की टीम ने सॉफ़्टवेयर डिस्ट्रिब्यूशन को असेंबल और डिप्लॉय करने के लिए, Bazel के नियम भी जारी किए हैं.

Uber

Uber, राइड-हेलिंग कंपनी है. Uber के Go monorepo में 900 सक्रिय डेवलपर हैं. इसलिए, यह Bazel का इस्तेमाल करने वाली सबसे बड़ी Go रिपॉज़िटरी में से एक है. उनके अनुभव के बारे में ज़्यादा जानने के लिए, Bazel की मदद से Uber का Go Monorepo बनाना लेख पढ़ें.

Uber Advanced Technologies Group

Uber Advanced Technologies Group, Uber में बिना ड्राइवर के चलने वाले वाहनों पर काम करता है. इसमें ट्रक/ ढुलाई और बिना ड्राइवर के चलने वाली राइड शेयरिंग की सुविधा शामिल है. संगठन, Bazel को मुख्य बिल्ड सिस्टम के तौर पर इस्तेमाल करता है.

Vistar Media

Vistar Media, विज्ञापन दिखाने वाला एक प्लैटफ़ॉर्म है. इसकी मदद से ब्रैंड, उपभोक्ताओं तक पहुंच सकते हैं. इसके लिए, वे उपभोक्ताओं की ऑफ़लाइन गतिविधियों को आधार बनाते हैं. उनकी इंजीनियरिंग टीम मुख्य रूप से फ़िलाडेल्फ़िया में है. यह टीम, Bazel का इस्तेमाल इन कामों के लिए कर रही है: बिल्ड करना, डिप्लॉय करना, टेस्टिंग को तेज़ करना, और अलग-अलग टेक्नोलॉजी का इस्तेमाल करके लिखी गई रिपॉज़िटरी को एक साथ जोड़ना.

VMware

VMware, अपने ग्राहकों के लिए नए प्रॉडक्ट बनाते समय, Bazel का इस्तेमाल करता है. इससे उसे भरोसेमंद और तय किए गए तरीके से बिल्ड बनाने में मदद मिलती है.

Wix

Wix, क्लाउड पर आधारित वेब डेवलपमेंट प्लैटफ़ॉर्म है. इनके बैकएंड में Java और Scala कोड का इस्तेमाल किया जाता है. ये Google Cloud Build के साथ रिमोट एक्ज़ीक्यूशन का इस्तेमाल करते हैं.

हमने देखा है कि Bazel रिमोट एक्ज़ीक्यूशन का इस्तेमाल करने पर, क्लीन बिल्ड करीब पांच गुना तेज़ी से होते हैं. यह Bazel की बेहतरीन बिल्ड/टेस्ट पैरललिज़्म क्षमताओं का इस्तेमाल करता है. ऐसा तब होता है, जब यह बिल्ड/टेस्ट ऐक्शन को वर्कर फ़ार्म में भेजता है. Bazel की एग्रेसिव कैश मेमोरी की सुविधा का इस्तेमाल करने की वजह से, औसत बिल्ड टाइम 10 गुना से ज़्यादा कम हो गया है. (Maven या Gradle से Bazel पर माइग्रेट करना है? 5 अहम सवाल जो आपको खुद से पूछने चाहिए)

Zenly

Zenly, आपके दोस्तों और परिवार के सदस्यों की जगह की जानकारी दिखाने वाला लाइव मैप है. यह एक साथ मिलकर कुछ करने का सबसे मज़ेदार तरीका है. इसके अलावा, इससे यह भी पता चलता है कि आपके दोस्त क्या कर रहे हैं! — ताकि आप एक-दूसरे के साथ जुड़ सकें, भले ही आप साथ न हों.


Bazel का इस्तेमाल करने वाले ओपन सोर्स प्रोजेक्ट

Abseil

Abseil, C++ कोड का एक ओपन-सोर्स कलेक्शन है. यह C++11 के मुताबिक है. इसे C++ स्टैंडर्ड लाइब्रेरी को बेहतर बनाने के लिए डिज़ाइन किया गया है.

Angular

ऐंगुलर एक लोकप्रिय वेब फ़्रेमवर्क है. Angular को Bazel की मदद से बनाया गया है.

Apollo

Apollo, एक हाई परफ़ॉर्मेंस वाला और फ़्लेक्सिबल आर्किटेक्चर है. यह ऑटोनॉमस वाहनों को डेवलप करने, उनकी टेस्टिंग करने, और उन्हें डिप्लॉय करने की प्रोसेस को तेज़ करता है.

brpc

यह एक इंडस्ट्रियल-ग्रेड आरपीसी फ़्रेमवर्क है, जिसका इस्तेमाल Baidu में किया जाता है. इसमें 10 लाख से ज़्यादा इंस्टेंस(क्लाइंट को छोड़कर) और हज़ारों तरह की सेवाएं शामिल हैं. Baidu में इसे "baidu-rpc" कहा जाता है.

cert-manager

cert-manager, Kubernetes का एक ऐड-ऑन है. यह अलग-अलग स्रोतों से TLS सर्टिफ़िकेट जारी करने और उन्हें मैनेज करने की प्रोसेस को अपने-आप पूरा करता है. इससे यह पक्का किया जा सकेगा कि सर्टिफ़िकेट मान्य हैं और समय-समय पर अपडेट किए जाते हैं. साथ ही, यह समयसीमा खत्म होने से पहले सही समय पर सर्टिफ़िकेट रिन्यू करने की कोशिश करेगा.

CallBuilder

यह Java कोड जनरेटर है. इसकी मदद से, एक फ़ंक्शन लिखकर बिल्डर बनाया जा सकता है.

CPPItertools

यह C++ लाइब्रेरी, Python के बिल्टइन और itertools लाइब्रेरी से प्रेरणा लेकर, रेंज के आधार पर for लूप ऐड-ऑन उपलब्ध कराती है. itertools और Python3 के बिल्ट-इन फ़ंक्शन की तरह, यह लाइब्रेरी जहां भी मुमकिन हो वहां लेज़ी इवैलुएशन का इस्तेमाल करती है.

Copybara

Copybara एक ऐसा टूल है जिसकी मदद से, कोड को एक से दूसरी रिपॉज़िटरी में ट्रांसफ़र किया जा सकता है.

Dagger

Dagger, Java और Android, दोनों के लिए पूरी तरह से स्टैटिक, कंपाइल-टाइम डिपेंडेंसी इंजेक्शन फ़्रेमवर्क है.

DAML

DAML, स्मार्ट कॉन्ट्रैक्ट की एक भाषा है. इसका इस्तेमाल, सुरक्षित और निजता का ध्यान रखने वाले रनटाइम पर, डिस्ट्रिब्यूट किए गए ऐसे ऐप्लिकेशन बनाने के लिए किया जाता है जो आने वाले समय में भी काम करते रहें.

DeepMind Lab

एजेंट पर आधारित एआई रिसर्च के लिए, पसंद के मुताबिक बनाया जा सकने वाला 3D प्लैटफ़ॉर्म.

Drake

Drake, C++ टूलबॉक्स है. इसे MIT में शुरू किया गया था. फ़िलहाल, इसे Toyota Research Institute मैनेज करता है. यह हमारे रोबोट की गतिविधियों का विश्लेषण करने और उनके लिए कंट्रोल सिस्टम बनाने वाले टूल का कलेक्शन है. इसमें ऑप्टिमाइज़ेशन पर आधारित डिज़ाइन/विश्लेषण पर ज़्यादा ज़ोर दिया जाता है.

Envoy

C++ L7 प्रॉक्सी और कम्यूनिकेशन बस

गड़बड़ी होने की आशंका

यह कंपाइल-टाइम की गड़बड़ियों के तौर पर, Java से जुड़ी सामान्य गड़बड़ियों का पता लगाता है. (Bazel पर माइग्रेट करने की प्रोसेस जारी है.)

Extensible Service Proxy

Extensible Service Proxy को ESP भी कहा जाता है. यह एक प्रॉक्सी है, जो JSON/REST या gRPC API सेवाओं के लिए एपीआई मैनेजमेंट की सुविधाएं चालू करती है. मौजूदा सिस्टम, NGINX HTTP रिवर्स प्रॉक्सी सर्वर पर आधारित है.

FFruit

FFruit, Android के लिए एक मुफ़्त और ओपन सोर्स ऐप्लिकेशन है. यह लोकप्रिय सेवा Falling Fruit के लिए उपलब्ध है.

Gerrit Code Review

Gerrit, Git पर आधारित प्रोजेक्ट के लिए कोड की समीक्षा करने और प्रोजेक्ट मैनेज करने का टूल है.

Gitiles

Gitiles, Git डेटा स्टोर करने की जगहों के लिए एक आसान रिपॉज़िटरी ब्राउज़र है. इसे JGit पर बनाया गया है.

Grakn

Grakn (https://grakn.ai/), नॉलेज ग्राफ़ इंजन है. इसका इस्तेमाल, डेटा के जटिल नेटवर्क को व्यवस्थित करने और उसे क्वेरी करने लायक बनाने के लिए किया जाता है.

GRPC

यह एक ऐसा रिमोट प्रोसीजर कॉल सिस्टम है जो भाषा और प्लैटफ़ॉर्म से जुड़ा नहीं है. (Bazel एक सपोर्टेड बिल्ड सिस्टम है, हालांकि यह मुख्य बिल्ड सिस्टम नहीं है.)

gVisor

gVisor, कंटेनर रनटाइम सैंडबॉक्स है.

Guetzli

Guetzli एक JPEG एन्कोडर है. इसका मकसद, अच्छी विज़ुअल क्वालिटी के साथ बेहतरीन कंप्रेशन डेंसिटी हासिल करना है.

Gulava

यह Java कोड जनरेट करने वाला टूल है. इसकी मदद से, Prolog-स्टाइल के प्रेडिकेट लिखे जा सकते हैं और उन्हें सामान्य Java कोड से आसानी से इस्तेमाल किया जा सकता है.

Heron

Heron, Twitter का एक ऐसा इंजन है जो स्ट्रीम को प्रोसेस करता है. यह रीयलटाइम में काम करता है, डिस्ट्रिब्यूट किया गया है, और इसमें गड़बड़ी होने पर भी काम करने की क्षमता है.

Jazzer

Jazzer, Java और JVM पर आधारित अन्य भाषाओं के लिए एक फ़ज़र है. यह JUnit 5 के साथ इंटिग्रेट होता है.

JGit

JGit, Java की एक लाइटवेट लाइब्रेरी है. यह Git वर्शन कंट्रोल सिस्टम को लागू करती है.

Jsonnet

JSON के लिए, कॉन्फ़िगरेशन जनरेट करने वाली एक बेहतरीन भाषा. (Bazel, एक ऐसा बिल्ड सिस्टम है जिस पर यह सुविधा काम करती है.)

Kubernetes

Kubernetes एक ओपन सोर्स सिस्टम है. इसका इस्तेमाल, कंटेनर वाले ऐप्लिकेशन को कई होस्ट पर मैनेज करने के लिए किया जाता है. यह ऐप्लिकेशन को डिप्लॉय करने, रखरखाव करने, और स्केल करने के लिए बुनियादी तरीके उपलब्ध कराता है.

Kythe

कोड के साथ काम करने वाले टूल बनाने के लिए एक इकोसिस्टम.

Nomulus

Google App Engine पर टॉप-लेवल डोमेन नेम रजिस्ट्री सेवा.

ONOS : ओपन नेटवर्क ऑपरेटिंग सिस्टम

ONOS, SDN कंट्रोलर का ऐसा प्लैटफ़ॉर्म है जो लेगसी “ब्राउन फ़ील्ड” नेटवर्क से SDN “ग्रीन फ़ील्ड” नेटवर्क पर ट्रांज़िशन करने की सुविधा देता है. इससे नेटवर्क ऑपरेटरों को नई सुविधाएं मिलती हैं. साथ ही, नेटवर्क को डिप्लॉय करने और उसे ऑपरेट करने की लागत में काफ़ी कमी आती है.

PetitParser for Java

प्रोग्रामिंग भाषाओं के लिए व्याकरण को आम तौर पर स्टैटिक तौर पर तय किया जाता है. इनमें मौजूद अस्पष्टता की वजह से, इन्हें लिखना और दोबारा इस्तेमाल करना मुश्किल होता है. PetitParser, स्कैनरलेस पार्सिंग, पार्सर कॉम्बिनेटर, पार्सिंग एक्सप्रेशन ग्रामर, और पैकरेट पार्सर के आइडिया को मिलाकर, ग्रामर और पार्सर को ऐसे ऑब्जेक्ट के तौर पर मॉडल करता है जिन्हें डाइनैमिक तरीके से फिर से कॉन्फ़िगर किया जा सकता है.

PlaidML

PlaidML एक ऐसा फ़्रेमवर्क है जिसकी मदद से, डीप लर्निंग को हर जगह इस्तेमाल किया जा सकता है.

Project V

Project V, टूल का एक सेट है. इसकी मदद से, इंटरनेट पर अपना निजता नेटवर्क बनाया जा सकता है.

Prysmatic Labs Ethereum 2.0 Implementation

Prysm, Ethereum 2.0 के लिए एक शार्डिंग क्लाइंट है. यह ब्लॉकचेन पर आधारित डिस्ट्रिब्यूटेड कंप्यूटिंग प्लैटफ़ॉर्म है.

रे

Ray, डिस्ट्रिब्यूटेड एक्ज़ीक्यूशन फ़्रेमवर्क है. यह फ़्लेक्सिबल और हाई-परफ़ॉर्मेंस वाला होता है.

Resty

Resty, Go के लिए एक आसान एचटीटीपी और REST क्लाइंट लाइब्रेरी है. यह Ruby के rest-client से मिलती-जुलती है.

Roughtime

Roughtime एक ऐसा प्रोजेक्ट है जिसका मकसद सुरक्षित तरीके से समय को सिंक करना है.

Selenium

Selenium, वेब ऐप्लिकेशन की टेस्टिंग के लिए पोर्टेबल फ़्रेमवर्क है.

सिमैंटिक

Semantic, Haskell लाइब्रेरी और कमांड लाइन टूल है. इसका इस्तेमाल सोर्स कोड को पार्स करने, उसका विश्लेषण करने, और उसकी तुलना करने के लिए किया जाता है. इसे GitHub ने बनाया है. इसका इस्तेमाल, उदाहरण के लिए कोड नेविगेशन के लिए किया जाता है.

दिखाया गया

Served, C++ लाइब्रेरी है. इसका इस्तेमाल, हाई परफ़ॉर्मेंस वाले RESTful वेब सर्वर बनाने के लिए किया जाता है.

सॉनेट

Sonnet, TensorFlow पर आधारित एक लाइब्रेरी है. इसका इस्तेमाल जटिल न्यूरल नेटवर्क बनाने के लिए किया जाता है.

Sorbet

Sorbet, Ruby के सबसेट के लिए एक तेज़ और बेहतरीन टाइप चेकर है. यह लाखों लाइनों वाले कोडबेस के साथ काम करता है. साथ ही, इसे धीरे-धीरे लागू किया जा सकता है.

Spotify

Spotify, iOS और Android ऐप्लिकेशन बनाने के लिए Bazel का इस्तेमाल कर रहा है (सोर्स).

Tink

Tink एक ओपन सोर्स लाइब्रेरी है. यह कई भाषाओं और प्लैटफ़ॉर्म पर काम करती है. यह क्रिप्टोग्राफ़िक एपीआई उपलब्ध कराती है. ये एपीआई सुरक्षित होते हैं और इनका सही तरीके से इस्तेमाल करना आसान होता है. साथ ही, इनका गलत इस्तेमाल करना मुश्किल होता है.

TensorFlow

यह मशीन इंटेलिजेंस के लिए एक ओपन सोर्स सॉफ़्टवेयर लाइब्रेरी है.

टर्बो सैंटा

यह एक ऐसा GameBoy एम्युलेटर है जो किसी भी प्लैटफ़ॉर्म पर काम करता है.

Wycheproof

Project Wycheproof, क्रिप्टो लाइब्रेरी की जांच करता है, ताकि यह पता लगाया जा सके कि वे जाने-पहचाने हमलों से सुरक्षित हैं या नहीं.

XIOSim

XIOSim, x86 आर्किटेक्चर के लिए, उपयोगकर्ता मोड वाला माइक्रोआर्किटेक्चरल सिम्युलेटर है.

ZhihuDailyPurify

ZhihuDailyPurify, Zhihu Daily का लाइटवेट वर्शन है. यह चीन की एक सवाल-जवाब वाली वेबसाइट है.