--- name: quera-lesson-author description: >- Use this skill when drafting or refining full document-based lessons (README.md) from an approved spec.md file, following Quera College pedagogical, visual, and formatting standards (FastAPI College reference). --- # Quera Lesson Author (نگارش درس‌نامه‌های متنی کوئرا کالج) این مهارت راهنمای جامع و استاندارد برای ایجنت‌های نویسنده است تا بتوانند یک سند مشخصات تایید شده (`spec.md`) را به یک درس‌نامهٔ کامل، جذاب، استاندارد و آمادهٔ انتشار در کوئرا کالج (`README.md`) تبدیل کنند. الگو، ساختار و لحن این راهنما دقیقاً بر اساس استانداردهای پیاده‌سازی‌شده در **دورهٔ FastAPI کوئرا کالج** تدوین شده است. --- ## ۱. ساختار پوشه‌بندی هر درس‌نامه هر درس‌نامه در پوشهٔ اختصاصی خود درون فصل مربوطه قرار دارد و باید شامل فایل متن درس‌نامه و پوشهٔ تصاویر اختصاصی باشد: ```text chapters/ch-/-/ ├── spec.md # سند مشخصات و قرارداد یادگیری درس (ورودی ایجنت) ├── README.md # متن کامل درس‌نامه کوئرا کالج (خروجی نهایی ایجنت) └── images/ # پوشهٔ اختصاصی تصاویر، نمودارها و دیاگرام‌های درس ├── cover.png # تصویر کاور استاندارد درس‌نامه (یا cover.svg) ├── [diagram-1].png / .svg └── [diagram-2].png / .svg ``` > **نکتهٔ نام‌گذاری فایل:** فایل اصلی درس‌نامه در کوئرا کالج نامش `README.md` است (نه `lesson.md`). --- ## ۲. گردش‌کار نگارش درس‌نامه (Author Agent Workflow) ایجنت نویسنده باید این ۵ گام را به ترتیب طی کند: 1. **بررسی قرارداد `spec.md`:** * اهداف یادگیری بلوم (Understand, Apply, Evaluate) را به دقت بخوانید. * مرزهای محتوا را رعایت کنید: موارد **In-Scope** باید کامل پوشش داده شوند و به هیچ‌وجه نباید وارد موضوعات **Out-of-Scope** شوید. * جدول واژگان تخصصی و اصطلاحات انگلیسی/فارسی را بررسی کنید. * لیست **جایگاه‌های تصاویر و نمودارها (Visual Placeholders)** را استخراج کنید. 2. **تولید تصاویر و نمودارهای بصری (Visuals & Diagrams):** * برای هر Placeholder مشخص‌شده در `spec.md`، تصویر یا دیاگرام متناظر را تولید و در پوشهٔ `images/` ذخیره کنید. * از نمودارهای مدرن و تمیز با ابزارهایی مثل پکیج پایتونی `diagrams` (`https://github.com/mingrammer/diagrams`) یا کدهای برداری SVG با تم تیرهٔ کوئرا کالج (مشخصات تم در بخش ۵) استفاده کنید. * هر درس‌نامه باید حتماً دارای یک تصویر کاور (`cover.png` یا `cover.svg`) و حداقل ۱ تا ۴ نمودار مفهومی باشد. 3. **نگارش متن درس بر اساس کالبدشکافی کوئرا:** * ساختار استاندارد بخش‌ها (قلاب داستانی، نقشه درس، مفاهیم اصلی، جعبه‌های کال‌اوت، کدهای هایلایت‌شده و جمع‌بندی) را پیاده کنید. 4. **اعمال استانداردهای فرانت‌اند کوئرا (HTML & CSS Components):** * جعبه‌های هشدار، نکته و بیشتر بدانید را با تگ‌های `
` پیاده کنید. * خطوط مهم کد را با تگ‌های `` هایلایت نمایید. * تصاویر را در جدول‌های تک‌خانه‌ای وسط‌چین همراه با کپشن تفصیلی درج کنید. 5. **بازبینی نهایی و انطباق با معیارهای پذیرش (Acceptance Checklist).** --- ## ۳. ساختار و کالبدشکافی استاندارد درس‌نامه (`README.md`) متن نهایی درس‌نامه باید از این قالب دقیق پیروی کند: ````markdown # [عنوان درس‌نامه به فارسی روان] [مقدمه و قلاب داستانی (Hook): یک موقعیت ملموس، سناریوی واقعی محصولی یا پرسش کلیدی که انگیزهٔ مطالعه را در دانشجو ایجاد می‌کند. مثلاً: «فرض کنید تغییر کوچکی روی یک اندپوینت پرداخت اعمال کرده‌ایم و می‌خواهیم همان امروز آن را دیپلوی کنیم...»] | ![کاور درس‌نامهٔ [عنوان]](./images/cover.png) | | :-: | [نقشهٔ راه درس‌نامه (Overview): توضیح کوتاه ۲ تا ۳ جمله‌ای از اینکه در این درس قرار است چه مراحلی طی شود، چه ابزارهایی بررسی می‌شوند و در پایان دانشجو به چه خروجی ملموسی می‌رسد.] ## [عنوان بخش اول: مفهوم پایه یا چرایی موضوع] [توضیح عمیق و شفاف مفهوم همراه با استعاره‌های ملموس و مقایسه‌های روزمره] | ![عنوان یا توضیح کوتاه نمودار](./images/concept-diagram.png) | | :-: | | [توضیح تفصیلی، آموزنده و چندخطی زیر نمودار که پیام کلیدی و ارتباط اجزا را بیان می‌کند.] | [ادامهٔ شرح درس...]
**هشدار: [عنوان هشدار درباره خطای رایج، تله یا توهم هوش مصنوعی]** [شرح خطای رایج یا توهم ایجنت و نحوهٔ پیشگیری و مهار آن. توضیح اینکه چرا این خطا رخ می‌دهد و چطور باید رفتار صحیح را ارزیابی کرد.]
## [عنوان بخش دوم: پیاده‌سازی عملی، ابزارها یا کُد] [توضیح شیوهٔ استفاده از ابزار یا پیاده‌سازی گام‌به‌گام] ```python app.py python from fastapi import FastAPI app = FastAPI() @app.get("/") def read_root(): return {"service": "online", "status": "ok"} ``` > [باکس نقل‌قول بلافاصله پس از بلوک کد: تشریح خط‌به‌خط و دقیق کدهای بالا، کارکرد هر تابع، متغیرها و رفتاری که خروجی تولید می‌کند. هرگز کد بدون توضیح رها نمی‌شود.]
**نکته: [قانون طلایی یا بهترین الگو (Best Practice)]** [توضیح ترفند یا الگوی حرفه‌ای که کارایی را بالا می‌برد یا از اتلاف وقت دانشجو جلوگیری می‌کند.]
## [عنوان بخش سوم: مقایسه، سناریوهای خطا یا حالت‌های پیشرفته] [بررسی حالت‌های خطا، تست یا مقایسهٔ گزینه‌های مختلف] | معیار | روش الف | روش ب | | :-: | :-: | :-: | | سرعت اجرا | سریع | کند | | انعطاف‌پذیری | بالا | محدود | | هزینه | کم | بالا |
**بیشتر بدانید: [مبحث تکمیلی و معماری عمیق‌تر]** [مطالعهٔ عمیق‌تر برای دانشجویانی که می‌خواهند از پشت‌صحنه یا تاریخچه و معماری مطلع شوند.]
## جمع‌بندی و گام بعدی در این درس یاد گرفتیم که: - **نکته ۱:** [خلاصه نکته کلیدی] - **نکته ۲:** [خلاصه نکته کلیدی] - **نکته ۳:** [خلاصه نکته کلیدی] [پل ارتباطی به درس بعد]: در درس‌نامهٔ بعدی به سراغ **«[عنوان درس بعد]»** می‌رویم تا یاد بگیریم چطور ... ```` --- ## ۴. اجزای خاص رابط کاربری و فرمت‌بندی کوئرا کالج (Quera Custom UI) ### ۱.۴. جدول نمایش تصاویر و دیاگرام‌ها (Centered Image Tables) در کوئرا کالج، تصاویر مستقیماً رها نمی‌شوند؛ بلکه همیشه درون یک جدول مارک‌داون تک‌خانه‌ای وسط‌چین با کپشن توضیحی قرار می‌گیرند: ```markdown | ![متن جایگزین کوتاه](./images/filename.png) | | :-: | | متن توضیح تفصیلی و آموزنده زیر تصویر که پیام نمودار را تشریح می‌کند. | ``` ### ۲.۴. جعبه‌های پیام و آکاردئون‌های رنگی (`
`) به جای الرت‌های مرسوم گیت‌هاب، از تگ‌های `
` با کلاس‌های رنگی کوئرا استفاده می‌شود: * **کلاس قرمز (`class="red"`) — هشدارها، تله‌ها و توهم‌های هوش مصنوعی:** ```html
**هشدار: [عنوان هشدار]** متن هشدار و راه‌های پیشگیری از خطا...
``` * **کلاس سبز (`class="green"`) — نکات طلایی و شیوه‌های بهینه (Best Practices):** ```html
**نکته: [عنوان نکته]** متن نکته و توصیهٔ کلیدی...
``` * **کلاس بنفش (`class="violet"`) — مباحث عمیق‌تر و بیشتر بدانید:** ```html
**بیشتر بدانید: [مبحث تکمیلی]** توضیحات پیشرفته و لینک به مستندات رسمی...
``` * **کلاس آبی (`class="blue"`) — یادداشت‌ها و پس‌زمینه‌ها.** ### ۳.۴. بلوک‌های کد و هایلایت خطوط (``) بلوک‌های کد به صورت سه‌تکه تعریف می‌شوند: ````markdown ```<زبان> <نام_فایل> <زبان> def example(): کد مورد نظر برای جلب توجه ``` ```` * رنگ‌های مجاز برای `class`: `blue`، `green`، `violet`، `yellow`، `red`. * ویژگی `title`: توضیحی کوتاه که هنگام قرار گرفتن ماوس روی خط هایلایت‌شده ظاهر می‌شود. * **الزام حتمی:** بلافاصله زیر هر بلوک کد، یک پاراگراف نقل‌قول (`> ...`) قرار می‌گیرد که کدها را به زبان ساده تشریح می‌کند. --- ## ۵. راهنمای تولید و استایل دیاگرام‌ها (Visuals & SVG Styleguide) نمودارها و دیاگرام‌های درس‌نامه باید از نظر بصری فوق‌العاده باکیفیت و حرفه‌ای باشند (مانند خروجی پکیج `diagrams` یا فایل‌های SVG اختصاصی دوره FastAPI): 1. **ابعاد و ساختار پایه SVG:** * عرض ثابت: `width="1100"` و `viewBox="0 0 1100 "` (ارتفاع معمولاً بین `360` تا `690` بسته به محتوا). * پس‌زمینهٔ گرادیان تیرهٔ مدرن: از `#0B1220` به `#111B2E` با گوشه‌های گرد (`rx="20"`). * فونت متن‌ها: `Segoe UI, Vazirmatn, system-ui, -apple-system, sans-serif`. 2. **پالت رنگی المان‌ها:** * رنگ‌های برجسته: آبی فیروزه‌ای (`#00BDF0`)، بنفش (`#8B5CF6`)، سبز زمردی (`#10B981`)، زرد/نارنجی (`#F59E0B`)، قرمز هشداری (`#EF4444`). * رنگ متون: سفید خالص (`#FFFFFF`) برای تیترها، خاکستری روشن (`#C7D2E1` یا `#E2E8F0`) برای برچسب‌ها، خاکستری خنثی (`#8CA0B8`) برای توضیحات فرعی. 3. **واترمارک لوگوی کوئرا:** * در گوشهٔ پایین سمت راست تمام نمودارها، لوگوی وکتور کوئرا قرار می‌گیرد: ```xml ``` --- ## ۶. نگارش فارسی و قواعد زبانی (Persian Typography) * **اصطلاحات فنی دو زبانه:** در اولین مواجهه، واژهٔ فارسی پررنگ و انگلیسی ایتالیک داخل پرانتز می‌آید: `**تست خودکار (*Automated Testing*)**` | `**مهندسی پرامپت (*Prompt Engineering*)**` * **رعایت دقیق نیم‌فاصله‌ها:** در تمام افعال استمراری («می‌شود»، «می‌دانیم»)، جمع‌ها («درس‌نامه‌ها»، «ایجنت‌ها»)، پسوندهای تفضیلی («سریع‌تر»، «مهم‌ترین») و کلمات ترکیبی («تست‌کیس»، «دست‌نخورده»، «کلمه‌به‌کلمه»). * **گیومه‌های فارسی:** استفاده از « » برای نقل‌قول‌ها و مفاهیم خاص به جای " ". * **لحن:** دوستانه، اول‌شخص جمع («می‌بینیم»، «می‌سازیم»)، آموزنده و گام‌به‌گام؛ متناسب با کسی که کدنویس حرفه‌ای نیست اما قصد ساخت یک محصول کامل را دارد. --- ## ۷. چک‌لیست نهایی ایجنت نویسنده (Quality Gate) قبل از پایان نگارش درس‌نامه، بررسی کنید: - [ ] آیا تمام موارد **In-Scope** از `spec.md` پوشش داده شده و هیچ مبحث **Out-of-Scope** مطرح نشده است؟ - [ ] آیا کاور (`images/cover.png`) و تمام دیاگرام‌های Placeholder در پوشهٔ `images/` قرار گرفته‌اند؟ - [ ] آیا تصاویر در جدول‌های مارک‌داون تک‌خانه‌ای وسط‌چین همراه با کپشن تفصیلی درج شده‌اند؟ - [ ] آیا حداقل دو باکس `
` (یکی هشدار `red` و یکی نکته `green`) در متن وجود دارد؟ - [ ] آیا بلوک‌های کد دارای `` و توضیح تحلیلی در باکس نقل‌قول (`> ...`) هستند؟ - [ ] آیا اصطلاحات انگلیسی به همراه معادل فارسی مصوب آورده شده‌اند؟ - [ ] آیا نیم‌فاصله‌ها و گیومه‌های فارسی به طور کامل رعایت شده‌اند؟ - [ ] آیا در پایان درس، خلاصهٔ نکات و پیش‌نمایش درس بعدی درج شده است؟