Overview
ဤလမ်းညွှန်သည် /public/data
အောက်တွင်
courses/<id>
ဖိုလ်ဒါအောက် meta.json
၊
lessons/*.html
၊ quizzes/*.json
တို့ကို
စနစ်တကျ တည်ဆောက်ရန်အတွက် ဖြစ်ပါတယ်။
1) Catalog (Cards) — /public/data/catalog.json
Catalog တွင် Cards အတွက် အသုံးပြုမည့် အကျဉ်းချုံ့တန်ဖိုးများကို
ထည့်ပါ။ id သည် course folder နာမည်နှင့်
တူရပါမည်။
{
"id": "pali-basics",
"title": "ပါဠိ အခြေခံ",
"category": "Language",
"level": "Beginner",
"price": 0,
"credits": 2,
"rating": 4.7,
"hours": 20,
"summary": "…",
"image": "/data/courses/pali-basics/images/cover.jpg",
"benefits": "အခြေခံမှစ…\nအသံထွက်…\nလေ့ကျင့်ခန်း…"
}
2) Folder Structure — /public/data/courses/<id>/
public/
data/
courses/
pali-basics/
meta.json
lessons/
lesson-00.html
lesson-01.html
quizzes/
lesson-01.json
images/
cover.jpg
3) Meta (Reader Source) — meta.json
meta.json
သည် reader UI အတွက် အဓိကအချက်အလက်ဖြစ်ပြီး
modules/lessons/quiz များကို ညွှန်းပေးပါသည်။
{
"id": "pali-basics",
"title": "ပါဠိ အခြေခံ",
"category": "Language",
"level": "Beginner",
"image": "/data/courses/pali-basics/images/cover.jpg",
"summary": "…",
"description": "…",
"benefits": [
"စာလုံးပေါင်း အခြေခံ",
"ဝေါဟာရ လေ့ကျင့်",
"သဒ္ဒါ စနစ်တကျ"
],
"credits": 2,
"hours": 20,
"modules": [
{
"title": "သာသနာအစ",
"lessons": [
{ "type": "html", "title": "ဘုရားဖြစ်ပေါ်လာပုံ", "src": "lessons/lesson-00.html" },
{ "type": "html", "title": "တပည့်များပေါ်ထွန်းလာပုံ", "src": "lessons/lesson-01.html" },
{ "type": "quiz", "src": "quizzes/lesson-01.json" }
]
}
]
}
4) Lessons HTML — lessons/*.html
<!-- ဘုရားဖြစ်ပေါ်လာပုံ -->
<h2>သာသနာအစ · ဘုရားဖြစ်ပေါ်လာပုံ</h2>
<p>Write your content here…</p>
5) Quizzes JSON — quizzes/*.json
အခြေခံနမူနာ (legacy/short form) — app က normalize လုပ်ပေးသည်။
[
{ "type":"single", "q":"Pali vowel a?", "a":["a","i","u"], "correct":0 },
{ "type":"short", "q":"“Buddha” in Pali", "a":"Buddho" }
]
6) Scaffold JSON (Optional, Admin Only)
New Course form မှာ *-scaffold.json ထုတ်ပေးပါသည်။ ဤဖိုင်သည်
path → content mapping ဖြစ်ပြီး Runtime မဖတ်ပါ။
Unpack ပြုလုပ်ပြီး /public/data/...
ထဲ
တကယ့်ဖိုင်များ ထည့်ရန်သာ အသုံးပြုပါ။
-
Option A (ZIP): unpack tool ဖြင့် ZIP ထုတ် ➜
unzip ➜
public/data/...
ထဲ copy
-
Option B (Direct Write): browser File System API
ဖြင့်
public/data
ကိုရွေးပြီး တိုက်ရိုက်ရေး
7) IDs ထည့်သင့်ညီညွတ်မှု
-
Catalog item
id
= folder name <id> = meta.json
id
-
Meta lessons src များသည် folder အတွင်း relative path (ဥပမာ
lessons/lesson-00.html
)
8) Cards/Details တွင်ပြမည့် field များ
-
Cards:
catalog.json
→ title,
category, level, rating, hours, summary, image,
benefits (newline)
-
Details:
meta.json
→ description,
benefits (array/string), modules/lessons
9) Checklist
- catalog.json ထဲ
id
ထည့်ပြီး ဖြည့်စွက်
-
/public/data/courses/<id>/
ထဲ meta.json,
lessons/, quizzes/, images/ စနစ်တကျ
-
meta.modules[].lessons[] ထဲ HTML/Quiz
src
လမ်းကြောင်းတိတိ
- Image path တို့
/data/…
ဖြင့် ကိုက်ညီ
10) Troubleshooting
-
Reader မဖတ်လျှင်: Network tab မှာ
meta.json
/
lessons/*.html
/ quizzes/*.json
fetch
200/404 စစ်
-
Benefits မပေါ်လျှင်: catalog.json (cards), meta.json (details)
နှစ်ဖိုင်စစ်
-
Cover ပြတ်လျှင်:
.course-cover { object-fit: contain; aspect-ratio:16/9; }