2011-09-08 22 views
18

क्या आप वेब संपत्तियों के लिए पैकेज प्रबंधक जानते हैं?वेब संपत्तियों के लिए एक पैकेज प्रबंधक

मुझे ऐसा कुछ चाहिए जो jQuery जैसी लाइब्रेरी डाउनलोड कर सके, इसलिए मैं उन्हें अपनी संपत्ति पाइपलाइन में प्लग कर सकता हूं। js.*fanstatic के लिए पायथन पैकेज करीब हैं, लेकिन वे लाइब्रेरी का एक "नवीनतम" संस्करण चुनते हैं, जो कुछ रिलीज को पीछे छोड़ सकता है।

Google के js cdn में उनमें से कुछ के लिए मेटाडेटा है, लेकिन ज्यादातर ब्राउज़र द्वारा सीधे डाउनलोड करने के लिए डिज़ाइन किया गया है।

उत्तर

16

सबसे अच्छा है मैं इन-ब्राउज़र जावास्क्रिप्ट के लिए इन पैकेज प्रबंधकों पाया है:

  • CPM (CommonJS पैकेज प्रबंधक), http://packages.dojofoundation.org/ (लगभग 60 पैकेज) पर एक संग्रह के साथ, डोजो पैकेज पर केंद्रित है। सीपीएम का वर्णन करने के लिए कैसे निर्भर संकुल से मॉड्यूल की आवश्यकता किया जा सकता है एक mappings field साथ CommonJS प्रारूप() घ
  • Caolan के Jam, जिनकी संग्रह http://jamjs.org/packages/ पर है बढाती है। यहां Jam packaging guide है।
  • Ender पैकेज प्रबंधन के लिए npm पर पिग्गीबैक, और एक क्लाइंट प्रदान करता है जो एएमडी जैसा दिखता है (मुझे एएमडी संगतता के बारे में निश्चित नहीं है, जो एक बग रिपोर्ट के अनुसार प्रत्येक पैकेज तक छोड़ा जाता है)। यहां Ender packaging docs हैं। यहां packages with the ender keyword हैं। एन्डर मौजूदा पुस्तकालयों को पैकेजिंग पर ध्यान केंद्रित नहीं करता है, हालांकि इसके जीश स्टार्टर पैक एक मॉड्यूलर है, जो jQuery के लिए अधिकतर संगत प्रतिस्थापन है।

इनमें से अधिकांश ब्राउज़र लोडर के लिए AMD format में प्रकाशित कर सकते हैं, और RequireJS द्वारा लोड किया जा सकता। वे अपने पैकेज.जेसन मेटाडाटा के लिए CommonJS package format (एनपीएम द्वारा भी उपयोग किया जाता है) का उपयोग करते हैं।

मुझे XStatic भी मिला, जो कि फैनस्टैटिक का कम सक्रिय संस्करण प्रतीत होता है, और पाइथन पैकेज में लाइब्रेरी को फैनस्टैटिक लपेटता है। इसमें एक ही सीमा है (संस्करण अंतराल में हैं), लेकिन एक रैपर पैकेज लिखना इतना आसान लगता है कि मैं अपने स्वयं के अपडेट सेंक सकता हूं।

बीपीएम और fanstatic गैर-जेएस संपत्तियों के बारे में जानते हैं और सीएसएस मर्ज या minify कर सकते हैं।

+4

मैं चाहता जोड़ने के लिए [जाम] http://groundcomputing.co.uk/code/jam) जावास्क्रिप्ट पैकेज प्रबंधकों की अपनी सूची के नवीनतम जोड़े के रूप में। – Caolan

+1

[यमन] (http://addyosmani.com/blog/improved-developer-tooling-and-yeoman/) (अभी तक रिलीज़ होने के लिए) बोवर के रूप में कुछ पैकेज प्रबंधन का भी वादा करता है (जो स्पष्ट रूप से ट्विटर लोगों द्वारा है और एनपीएम पर बहुत संक्षिप्त रूप से उपलब्ध था) – Tobu

+0

जाम आईएमओ सबसे अच्छा है क्योंकि यह एक आवश्यक संगत कॉन्फ़िगरेशन का सम्मान कर रहा है और PHP पैकेज प्रबंधक संगीतकार के समान आसानी से एक जेसन फ़ाइल के साथ स्थापित किया जा सकता है। – acme

13

Bower, ट्विटर से पैकेज प्रबंधक।

बोवर वेब के लिए एक पैकेज प्रबंधक है। बोवर आपको छवियों, सीएसएस और जावास्क्रिप्ट जैसी संपत्तियों को आसानी से इंस्टॉल करने देता है, और आपके लिए निर्भरता प्रबंधित करता है।

बोवर केवल पैकेज प्रबंधन और पैकेज प्रबंधन करता है।

बोवर Node और npm (कुछ बोवर पैकेज के लिए और संभवतः Git) की आवश्यकता है। इसे Yeoman में भी शामिल किया गया है, जो डेवलपर्स को आधुनिक वेब ऐप्स बनाने में सहायता करने के लिए टूल का एक सेट है।

+1

बोवर अद्भुत है। यह क्लाइंट साइड का एनपीएम है (यद्यपि कम पैकेज के साथ)। – wprl

+1

-1 बॉवर काम करता है और देवताओं का समर्थन नहीं करना प्रतीत होता है- वेब का 9 0% अलविदा कहें जो सही हिमपात का नहीं है, यह चाहता है कि वह =/वे और अधिक खुशी से समर्थन करें अंतिम अस्थिर परिवर्तन प्राप्त करना हालांकि – srcspider

+1

srcspider की टिप्पणी में जोड़ने के लिए, कई मामलों में बोवर निर्भरता के 'गिट क्लोन' और 'गिट चेकआउट टैगनाम' करने के बराबर है। यदि लक्ष्य को इसके अलावा कुछ और चाहिए और उसके पास रिपो में कोई बोवर कॉन्फ़िगरेशन फ़ाइल नहीं है तो यह काम नहीं करेगा। अगर परियोजना को एक निर्माण प्रक्रिया की आवश्यकता होती है (उदाहरण के लिए साइनऑन) यह काम नहीं करेगा। यदि आप एक विशिष्ट शाखा का उपयोग करना चाहते हैं या टैग के बजाय प्रतिबद्ध करना चाहते हैं तो यह काम नहीं करेगा। – DriverDan

2

RequireJS के लेखक भी पैदा कर दी है एक पैकेज/निर्भरता प्रबंधक Volo कहा जाता है:

बनाएं ब्राउज़र आधारित, परियोजना टेम्पलेट्स से सामने के अंत परियोजनाओं, और उन्हें GitHub से प्राप्त करने में कठिनाई से निर्भरता जोड़ें। एक बार आपकी परियोजना सेट हो जाने के बाद, सामान्य कार्यों को स्वचालित करें।

वोलो निर्भरता प्रबंधक और प्रोजेक्ट निर्माण उपकरण है जो पैकेज भंडार के लिए गिटहब का पक्ष लेता है।

इसके दिल में, वोल् एक सामान्य कमांड धावक है - आप वॉल्यूम के लिए नए कमांड बना सकते हैं, और आप दूसरों द्वारा बनाए गए आदेशों का उपयोग कर सकते हैं।

0

बस npm का उपयोग करें। यह पहले से ही उस में ब्राउज़र मॉड्यूल के टन है, और जिस तरह से अन्य विकल्पों की तुलना में बड़ा है: (

http://www.modulecounts.com/

संबंधित मुद्दे