---
title: पेज
description: >-
  आपके कंटेंट फ़ोल्डर की फ़ाइलें कैसे पेज बनती हैं, और उन्हें कैसे व्यवस्थित तथा नामित करें ताकि रूटिंग और नेविगेशन अपने आप अनुमानित हो जाएँ।
---

आपके डॉक्स केवल Markdown और MDX फ़ाइलों का एक फ़ोल्डर हैं। Blume हर फ़ाइल को एक पेज में बदल देता है — रूटिंग, नेविगेशन और मेटाडेटा फ़ाइल सिस्टम से अनुमानित होते हैं, इसलिए सिंक में रखने के लिए कोई मैनिफ़ेस्ट नहीं होता।

कंटेंट आपके **कंटेंट रूट** के अंतर्गत रहता है (डिफ़ॉल्ट रूप से `docs/`; इसे [`blume.config.ts`](/docs/configuration) में `content.root` से बदलें)।

## Markdown और MDX [#markdown-and-mdx]

Blume दो तरह की फ़ाइलें रेंडर करता है:

- **`.md`** — सादे गद्य के लिए Markdown: GFM, frontmatter, स्मार्ट विराम-चिह्न, और सुपरस्क्रिप्ट/सबस्क्रिप्ट।
- **`.mdx`** — वह सब कुछ जो `.md` में है, साथ ही [कंपोनेंट्स](/docs/content/components) और केवल MDX वाले [डायरेक्टिव, पैकेज इंस्टॉल, और गणित](/docs/content/syntax)।

जब कोई पेज केवल गद्य हो तो `.md` चुनें, और जब उसमें कंपोनेंट्स या डायरेक्टिव चाहिए हों तो `.mdx`। बदलना बस फ़ाइल का नाम बदलने जितना आसान है।

## फ़ाइलें और रूट्स [#files-and-routes]

हर फ़ाइल कंटेंट रूट के अंतर्गत अपने पाथ के अनुसार एक रूट से मैप होती है:

| फ़ाइल                     | रूट               |
| ------------------------- | ----------------- |
| `docs/index.mdx`          | `/`               |
| `docs/quickstart.mdx`     | `/quickstart`     |
| `docs/guides/theming.mdx` | `/guides/theming` |
| `docs/guides/index.mdx`   | `/guides`         |

नेस्टेड फ़ोल्डर नेस्टेड रूट बन जाते हैं, और किसी फ़ोल्डर के अंदर मौजूद `index.mdx` उस फ़ोल्डर का अपना पेज बन जाता है।

## संख्यात्मक उपसर्गों से क्रम तय करना [#ordering-with-numeric-prefixes]

साइडबार में क्रम नियंत्रित करने के लिए किसी फ़ाइल या फ़ोल्डर के आगे एक संख्या लगाएँ। यह उपसर्ग URL से हटा दिया जाता है, इसलिए आप लिंक तोड़े बिना पेजों का क्रम बदल सकते हैं:

```txt
01-introduction.mdx  ->  /introduction
02-installation.mdx  ->  /installation
```

क्रम निर्धारण की कई परतें हैं — पूरी प्राथमिकता नियमावली के लिए [नेविगेशन](/docs/content/navigation) देखें।

## समूह फ़ोल्डर [#group-folders]

किसी फ़ोल्डर के नाम को कोष्ठकों में लपेटें ताकि उसके पेज साइडबार में समूहित हो जाएँ, **बिना** कोई URL सेगमेंट जोड़े:

```txt
docs/(internal)/security.mdx  ->  /security
```

ये पेज एक साझा “Internal” साइडबार समूह में रहते हैं, लेकिन उनके URL सपाट और कोष्ठक-रहित बने रहते हैं।

## ड्राफ़्ट [#drafts]

किसी पेज को ड्राफ़्ट के रूप में चिह्नित करें ताकि वह प्रोडक्शन बिल्ड से बाहर रहे, फिर भी `blume dev` में उसका पूर्वावलोकन किया जा सके:

```yaml lineNumbers
---
title: Work in progress
draft: true
---
```

`blume build` ड्राफ़्ट को छोड़ देता है; `blume dev` उन्हें रेंडर करता है ताकि आप खुले में काम कर सकें।

## कंटेंट प्रकार [#content-types]

हर पेज का एक **प्रकार** होता है, जो `type` frontmatter फ़ील्ड से तय होता है (डिफ़ॉल्ट `doc`)। प्रकार Blume को पेजों के समूहों के साथ अलग-अलग व्यवहार करने देते हैं — सबसे महत्वपूर्ण यह कि `blog` और `changelog` पेज [फ़ीड](#feeds) में एकत्र किए जाते हैं।

```yaml lineNumbers
---
title: v1.2.0
type: changelog
date: 2026-06-20
changelog:
  version: 1.2.0
  category: Features
---
```

प्रकार इस बात से स्वतंत्र है कि फ़ाइल कहाँ रहती है, लेकिन परंपरा के अनुसार ब्लॉग पोस्ट `blog/` के अंतर्गत और चेंजलॉग प्रविष्टियाँ `changelog/` के अंतर्गत रखी जाती हैं। दोनों को अपने आप एक RSS फ़ीड मिलती है, और चेंजलॉग प्रविष्टियाँ एक जनरेट की गई [`/changelog` टाइमलाइन](/docs/advanced/changelog) में भी एकत्र होती हैं। प्रत्येक को लिखने के लिए [ब्लॉग](/docs/advanced/blog) और [चेंजलॉग](/docs/advanced/changelog) देखें।

## फ़ीड [#feeds]

Blume [`rss.types`](/docs/discoverability/rss) में सूचीबद्ध हर कंटेंट प्रकार के लिए अपने आप एक RSS फ़ीड जनरेट करता है — डिफ़ॉल्ट रूप से `blog` और `changelog` — बशर्ते उसमें कम से कम एक पेज हो। फ़ीड `/<type>/rss.xml` पर सर्व की जाती हैं:

| प्रकार      | फ़ीड                 |
| ----------- | -------------------- |
| `blog`      | `/blog/rss.xml`      |
| `changelog` | `/changelog/rss.xml` |

हर प्रविष्टि को एक `date` दें ताकि आइटम नए-से-पुराने क्रम में सज सकें और उनमें `pubDate` हो। बिना उद्धरण चिह्न वाली YAML तिथि ठीक है — Blume उसे सामान्यीकृत कर देता है:

```yaml lineNumbers
---
title: Introducing Blume
type: blog
date: 2026-06-22
description: Why we built a markdown-first docs framework.
---
```

फ़ीड को एक निरपेक्ष साइट URL चाहिए, इसलिए [`deployment.site`](/docs/deployment) सेट करें। Blume हर पेज में `<link rel="alternate">` टैग जोड़ता है ताकि ब्राउज़र और फ़ीड रीडर उन्हें अपने आप खोज लें। प्रत्येक कंटेंट प्रकार को लिखने के लिए [ब्लॉग](/docs/advanced/blog) और [चेंजलॉग](/docs/advanced/changelog) देखें।

## इस पेज पर [#on-this-page]

हर पेज को उसके शीर्षकों से बनी एक स्वचालित विषय-सूची मिलती है। चौड़ी स्क्रीन पर यह आपके कंटेंट के बगल में एक स्टिकी साइडबार में रहती है; सँकरी स्क्रीन पर यह पेज के ऊपर एक **इस पेज पर** पैनल में सिमट जाती है। जैसे-जैसे आप स्क्रॉल करते हैं, आप जिस सेक्शन को पढ़ रहे होते हैं उसकी प्रविष्टि हाइलाइट हो जाती है, ताकि लंबे पेज में आपको हमेशा पता रहे कि आप कहाँ हैं।

Blume हर शीर्षक को एक ऐंकर में स्लगिफ़ाई करता है, इसलिए हर प्रविष्टि सीधे अपने सेक्शन से लिंक होती है — और आप URL के अंत में उसका स्लग जोड़कर किसी भी शीर्षक तक डीप-लिंक कर सकते हैं (`.../my-page#getting-started`)।

विषय-सूची में आपके `##` और `###` शीर्षक (H2 और H3) सूचीबद्ध होते हैं। जिस पेज में उस स्तर का कोई शीर्षक नहीं होता, उसमें बस कोई विषय-सूची नहीं होती।

## आगे कहाँ जाएँ [#where-to-next]

**[Frontmatter](/docs/reference/frontmatter)**

पेज मेटाडेटा: शीर्षक, विवरण, साइडबार, SEO, और सर्च।

**[सिंटैक्स](/docs/content/syntax)**

हर Markdown और MDX सुविधा जो आप लिख सकते हैं।

**[कंपोनेंट्स](/docs/content/components)**

किसी भी MDX पेज में उपलब्ध JSX कंपोनेंट्स।

**[नेविगेशन](/docs/content/navigation)**

साइडबार, क्रम और टैब्स को आकार दें।

**[फ़ोल्डर मेटा](/docs/content/meta)**

किसी साइडबार समूह को `meta.ts` फ़ाइल से कॉन्फ़िगर करें।
