Node.js में Markdown के साथ कार्य: पुस्तकालयों और उपकरणों का अवलोकन
Markdown एक लोकप्रिय मार्कअप भाषा है, जिसका उपयोग दस्तावेज़ीकरण, ब्लॉग, README फ़ाइलों और शैक्षिक प्लेटफार्मों में टेक्स्ट को फ़ॉर्मेट करने के लिए किया जाता है। Node.js इकोसिस्टम में कई शक्तिशाली पुस्तकालय हैं जो Markdown को HTML में बदलने, कोड, तालिकाओं और अन्य तत्वों को संसाधित करने की अनुमति देते हैं। इस लेख में, हम तीन सबसे लोकप्रिय उपकरणों पर विचार करेंगे: marked, remarkable और showdown, और उनके उपयोग के उदाहरणों का विश्लेषण करेंगे।
1. marked पुस्तकालय
Marked Markdown को पार्स करने के लिए सबसे तेज़ और हल्के पुस्तकालयों में से एक है। इसकी कोई बाहरी निर्भरता नहीं है और यह CommonMark और GFM (GitHub Flavored Markdown) का समर्थन करता है।
स्थापना
npm install markedमूल उपयोग
const marked = require('marked');
const markdownString = '# शीर्षकयह **बोल्ड** टेक्स्ट और *इटैलिक* है।
- आइटम 1- आइटम 2';
const html = marked.parse(markdownString);console.log(html);निष्पादन परिणाम:
<h1 id="शीर्षक">शीर्षक</h1><p>यह <strong>बोल्ड</strong> टेक्स्ट और <em>इटैलिक</em> है।</p><ul><li>आइटम 1</li><li>आइटम 2</li></ul>विकल्पों का कॉन्फ़िगरेशन
Marked पार्सिंग के बारीक ट्यूनिंग के लिए कई विकल्पों का समर्थन करता है:
const marked = require('marked');
marked.setOptions({ breaks: true, // पंक्ति विराम को <br> में बदलें gfm: true, // GFM समर्थन headerIds: false // शीर्षकों के लिए id अक्षम करें});
const html = marked.parse('पंक्ति 1पंक्ति 2');console.log(html);// <p>पंक्ति 1<br>पंक्ति 2</p>2. remarkable पुस्तकालय
Remarkable प्लगइन्स और एक्सटेंशन के समर्थन वाला एक लचीला पुस्तकालय है। यह गणितीय सूत्रों, आरेखों और अन्य विशिष्ट तत्वों के लिए सिंटैक्स जोड़ने की अनुमति देता है।
स्थापना
npm install remarkableउपयोग का उदाहरण
const { Remarkable } = require('remarkable');const md = new Remarkable();
const markdown = '## उपशीर्षक
`code` और `inline code`';const html = md.render(markdown);console.log(html);आउटपुट:
<h2>उपशीर्षक</h2><p><code>code</code> और <code>inline code</code></p>प्लगइन्स और एक्सटेंशन
Remarkable तालिकाओं, कार्य सूचियों और अन्य तत्वों को संसाधित करने के लिए प्लगइन्स का समर्थन करता है:
const { Remarkable } = require('remarkable');const md = new Remarkable({ html: true, linkify: true});
// तालिकाओं के लिए प्लगइन जोड़नाmd.renderer.rules.table_open = function() { return '<table class="table">';};
const html = md.render('| कॉलम 1 | कॉलम 2 ||-----------|-----------|| डेटा 1 | डेटा 2 |');console.log(html);3. showdown पुस्तकालय
Showdown JavaScript के लिए मूल Showdown का एक पोर्ट है। इसका उपयोग करना आसान है और यह क्लाइंट-सर्वर अनुप्रयोगों के लिए उपयुक्त है।
स्थापना
npm install showdownकोड उदाहरण
const showdown = require('showdown');const converter = new showdown.Converter();
const markdown = '**बोल्ड** और *इटैलिक*';const html = converter.makeHtml(markdown);console.log(html);// <p><strong>बोल्ड</strong> और <em>इटैलिक</em></p>एक्सटेंशन का कॉन्फ़िगरेशन
Showdown एक्सटेंशन का समर्थन करता है जिन्हें नई क्षमताएँ जोड़ने के लिए जोड़ा जा सकता है:
const showdown = require('showdown');
// कोड हाइलाइटिंग के लिए एक्सटेंशन बनानाconst myExt = { type: 'output', पुस्तकालय में भी
जावास्क्रिप्ट (Node.js) मानक पुस्तकालय: पूर्ण अवलोकन
Rust पर SMS भेजना: RustSMS — SMS गेटवे के लिए API लाइब्रेरी
Hibernate ORM: Java में डेटाबेस के साथ काम करने के लिए शक्तिशाली उपकरण
जावास्क्रिप्ट (Node.js) के लिए कार्य कतारें: Bull, Bee-Queue, Kue
TypeScript अनुप्रयोगों की निगरानी: उपकरण और पुस्तकालय