3 मिनट में कुकिंग, Deno के Lume CMS से कुछ ही सेकंड में ब्लॉग या वेबसाइट लॉन्च करें

नमस्ते, मैं मुनो हूँ।
मैं लंबे समय से Deno को फॉलो कर रहा था, और एक ऐसे CMS की तलाश में था जिसे आसान वातावरण में लागू किया जा सके और जो सुविधाजनक भी हो, तभी मुझे LumeCMS मिला।
तो, यह मानते हुए कि Deno स्थापित है, मैं एक डायरेक्टरी बनाऊँगा।
mkdir newsite
और फिर, Lume को स्थापित करें।
deno run -A https://deno.land/x/lume/init.ts

अब, चूंकि मैं इस बार एक थीम का उपयोग करना चाहता हूँ, इसलिए 'Install a theme' चुनें और फिर '_config.ts' चुनें।

अब Simple Blog चुनें।

हाँ, बस इतना ही। अब इसे चलाकर देखते हैं।
deno task lume cms

जब आप इससे एक्सेस करते हैं तो...


अरे, यह बहुत तेज़ है...
हालांकि, मानक अपलोड फ़ोल्डर उस डायरेक्टरी में है जहाँ `deno task lume cms` निष्पादित किया गया था, यानी `./uploads`। यदि आप ब्लॉग में Markdown प्रारूप में कॉपी और पेस्ट करते हैं, तो यह `./_site/uploads` बन जाता है, जिससे छवि का पथ गलत हो जाता है और छवियाँ प्रदर्शित नहीं होती हैं।
मुझे लगता है कि यह विशिष्टता इसलिए है क्योंकि इसका विचार LumeCMS को अन्य SSG वातावरणों जैसे Hugo में भी उपयोग करने योग्य बनाना है।

तो, _config.ts फ़ाइल खोलें।
vim _config.ts
import lume from "lume/mod.ts";
import blog from "blog/mod.ts";
const site = lume();
site.use(blog());
// यहां अपलोड फ़ोल्डर में कॉपी करने के लिए
site.copy("uploads", "uploads");
export default site;
इससे, `./uploads` में अपलोड की गई छवियाँ `./_site/uploads` फ़ोल्डर में कॉपी हो जाएँगी और उन्हें ठीक से देखा जा सकेगा। मैंने ऐसा इसलिए किया क्योंकि मुझे लगा कि यदि मूल फ़ाइलें `./uploads` में छोड़ दी जाती हैं, तो `./_site/uploads` में कॉपी की गई छवियों को आसानी से बदला जा सकता है (जैसे फ़ॉर्मेट बदलना)।
एक परीक्षण लेख बनाने के बाद की डायरेक्टरी संरचना यह है:
├── 404.md
├── _cms.ts
├── _config.ts
├── _data.yml
├── _site
│ ├── 404.html
│ ├── archive
│ │ └── index.html
│ ├── favicon.png
│ ├── feed.json
│ ├── feed.xml
│ ├── index.html
│ ├── js
│ │ ├── comments.js
│ │ └── main.js
│ ├── pagefind
│ │ ├── fragment
│ │ │ └── en_3551ff1.pf_fragment
│ │ ├── index
│ │ │ └── en_8fc6f26.pf_index
│ │ ├── pagefind-entry.json
│ │ ├── pagefind-highlight.js
│ │ ├── pagefind-modular-ui.css
│ │ ├── pagefind-modular-ui.js
│ │ ├── pagefind-ui.css
│ │ ├── pagefind-ui.js
│ │ ├── pagefind.en_7625ba4347.pf_meta
│ │ ├── pagefind.js
│ │ ├── wasm.en.pagefind
│ │ └── wasm.unknown.pagefind
│ ├── robots.txt
│ ├── sitemap.xml
│ ├── styles.css
│ ├── test
│ │ └── index.html
│ └── uploads
│ └── images-(2)-(9).jpeg
├── deno.json
├── deno.lock
├── favicon.png
├── posts
│ └── test.md
└── uploads
└── images-(2)-(9).jpeg
और लेख बनाने वाला पेज कुछ ऐसा दिखता है।

SSG की कमजोरी यह है कि आप स्मार्टफोन से पोस्ट नहीं कर सकते (हालांकि यह असंभव नहीं है), और जबकि Markdown लिखना बहुत आसान है, स्मार्टफोन से यह मुश्किल होता है। यह अब बस इसी से काफी आसानी से किया जा सकता है।
मेरे लिए, यह बिल्कुल वही था जिसकी मुझे तलाश थी, इसलिए मुझे उम्मीद है कि मैं अब से अपनी साइट को माइग्रेट कर पाऊँगा।
WP से SSG में माइग्रेशन के बारे में अनगिनत लेख होने चाहिए। हालाँकि, मैं आमतौर पर तभी करता हूँ जब मुझे प्रेरणा मिलती है।
तो फिर।
फिर मिलेंगे।