دستاویزاتکمانڈز اور تشکیل

ترتیب

کنفیگریشن پروجیکٹ کی جڑ میں nexyconfig.py میں ایک کلاس ہے۔ Nexy اسے اس ڈائریکٹری سے لوڈ کرتا ہے جس میں یہ چلتی ہے۔ فائل کے بغیر ایک پروجیکٹ ڈیفالٹس کا استعمال کرتا ہے۔

nexyconfig.py
from nexy.core.models import NexyConfigModelfrom nexy.frontend import react  class NexyConfig(NexyConfigModel):    useFF = react()    usePort = 3000    useTitle = "My App"    useAliases = {"@": "src"}

سرور

میدان طے شدہ مطلب
usePort 3000 dev اور start کے لیے بندرگاہ
useHost "0.0.0.0" پتہ باندھنا
useSslKeyfile، useSslCertfile None براہ راست HTTPS کی خدمت کریں۔
useDevTools True ٹول بار nexy dev ہر صفحہ میں اضافہ کرتا ہے (صفحہ کی معلومات، راستے، غلطیاں، تشکیل)؛ False اسے ہٹاتا ہے۔ پروڈکشن میں کبھی موجود نہ ہوں۔
useHealth False لوڈ بیلنسرز اور کبرنیٹس پروبس کے لیے GET /health/live اور GET /health/ready پیش کریں۔ دیکھیں تعینات کریں
useWorkers 0 عمل nx start چلتا ہے؛ 0 لینکس اور میک او ایس پر ایک فی سی پی یو ہے، ونڈوز پر ایک
useCSR False کلائنٹ سائڈ روٹنگ موڈ؛ .nexy راستے غیر فعال ہیں۔

راستے

میدان طے شدہ مطلب
useRouter None ایک APIRouter مثال یا کلاس فائل پر مبنی راستوں کے ساتھ لگائی گئی ہے۔ None کا مطلب صرف فائل پر مبنی ہے۔
excludeDirs ["templates", "extension", "docs"] راستوں کو اسکین کرتے وقت ڈائریکٹریز کو چھوڑ دیا گیا۔
useAliases None عرفی نام درآمد کریں، جیسے {"@": "src"} (@/components/Counter.tsx کا مطلب ہے src/components/Counter.tsx)؛ nx new اسے لکھتا ہے جسے آپ نے منتخب کیا ہے، اور Vite اور tsconfig.json اس پر عمل کریں

فرنٹ اینڈ

میدان طے شدہ مطلب
useFF None کلائنٹ فریم ورک فیکٹری: react()، vue()، svelte()، solid()، preact()
useVite True Vite کے ساتھ کلائنٹ بنڈل بنائیں اور پیش کریں۔
useMarkdownExtensions [] .md/.mdx رینڈرنگ کے لیے اضافی توسیع
useWatchExtensions None اضافی ایکسٹینشنز جو ڈیو سرور دیکھتا ہے۔
useWatchExcludePatterns None گلوب پیٹرن جنہیں ڈیو سرور نظر انداز کرتا ہے۔

جاننا اچھا ہے: NexyConfigModel اعلان کرتا ہے useVite = False؛ رن ٹائم Config ڈیفالٹ True ہے۔

محفوظ فائل کے نام

ہر فیلڈ ایک مخصوص کردار میں توسیعات کا اضافہ کرتا ہے۔ useLayoutExtensions = ["md"] layout.md کو مخصوص بناتا ہے، بالکل layout.nexy کی طرح۔

میدان میں توسیعات شامل کرتا ہے۔
useLayoutExtensions layout.*
useNotFoundExtensions notfound.*
useErrorsExtensions errors.*
useForbiddenExtensions forbidden.*
useUnauthorizedExtensions unauthorized.*
useLoadingExtensions loading.*

API دستاویزات

میدان طے شدہ مطلب
useDocs True اسکیلر حوالہ صفحہ پیش کریں؛ /openapi.json کسی بھی طرح سے پیش کیا جاتا ہے۔
useDocsUrl "/docs" API حوالہ صفحہ کا راستہ
useRedocsUrl "/redocs" اعلان کیا گیا ہے لیکن کوئی راستہ نہیں لگایا گیا ہے۔
useTitle "Nexy App" OpenAPI عنوان اور صفحہ کا عنوان ("Nexy" NexyConfigModel میں)

منصوبے کے ایک صفحے کے لیے مفت /docs

API کا حوالہ کسی بھی راستے سے پہلے /docs کا جواب دیتا ہے، اس لیے وہاں کبھی بھی src/routes/docs.nexy یا src/routes/docs/[[...slug]].nexy پیش نہیں کیا جاتا۔ nx dev اور nx start شروع میں ایسے صفحہ کا نام دیں۔ حوالہ useDocsUrl کے ساتھ منتقل کریں:

nexyconfig.py
from nexy.core.models import NexyConfigModel  class NexyConfig(NexyConfigModel):    useDocsUrl = "/api-reference"

یا اسے useDocs = False کے ساتھ بند کر دیں۔ /openapi.json دونوں صورتوں میں کام جاری رہتا ہے: منصوبے کے راستوں کو اس راستے سے دور رکھیں۔

مڈل ویئر

میدان طے شدہ مطلب
useMiddlewares [] ASGI مڈل ویئر کلاسز
useCORS None CORSMiddleware کے لیے kwargs
useGZip None GZipMiddleware کے لیے کوارگز
useTrustedHost None TrustedHostMiddleware کے لیے kwargs
useSession None SessionMiddleware کے لیے kwargs
useAuth None توثیق مڈل ویئر کی تشکیل
useHTTPSRedirect False HTTP کو HTTPS پر ری ڈائریکٹ کریں۔

Markdown

میدان طے شدہ مطلب
useTocDepth "2-6" مندرجات کے جدول میں سرخی کی سطحیں شامل ہیں۔
useTocTitle "Table of Contents" TOC عنوان
useTocAuto True Markdown صفحات کے لیے مندرجات کا جدول تیار کریں۔

فائل ٹری سے باہر کے راستے

ایک FastAPI APIRouter بنائیں اور اسے useRouter کے ساتھ ماؤنٹ کریں۔ یہ فائل پر مبنی راستوں کے آگے پیش کیا جاتا ہے:

nexyconfig.py
from fastapi import APIRouterfrom nexy.core.models import NexyConfigModel router = APIRouter()  @router.get("/health")def health():    return {"status": "ok"}  class NexyConfig(NexyConfigModel):    useRouter = router

اوپر ڈیفالٹس nexy/core/config.py سے پڑھے جاتے ہیں۔

اعلان کیا، ابھی پڑھا نہیں۔

یہ فیلڈز NexyConfigModel میں موجود ہیں لیکن کوئی کوڈ انہیں استعمال نہیں کرتا۔ ان کی ترتیب کا کوئی اثر نہیں ہے:

useViteDevUrl، useRTL۔

اگلے اقدامات

GitHub پر ترمیم کریں

Enter نتیجہ کھولتا ہے، Esc بند کرتا ہے۔