Every teacher deserves a great lesson plan.
Dars turns textbooks into full-term lesson plans — structured, bilingual, and aligned to NCP and provincial curricula. Your teachers ask, Dars delivers.
Everything a curriculum product needs.
Lesson Plan Generation
One API call returns a complete, structured lesson plan — objectives, activities, assessment questions. Pass grade, subject, page number. No prompts to write, no model to host.
bilingual output available →Full Curriculum Tree
Dars holds structured Pakistani textbooks — chapters, topics, and pre-generated lesson plans for each. Browse the whole tree for a grade and subject, collect IDs, fetch content. Your product is one GET request away from a full term.
ICT · PunjabExam Generation
Generate curriculum-aligned exams and class assessments from any page range. Control question types, seen/unseen split, counts, answer key, and AI review — or let the defaults handle it.
seen · unseen · objective · subjectivePer-client API Keys
Register, set your curriculum, get a key. Each client is fully isolated — their own generation history, their own analytics. Keys are hashed at rest and shown once on creation.
hashed, shown once on creationAsync by Default
Every generation request returns immediately with a job ID. Poll for status or build on top of it. Generation typically completes in under two minutes.
202 → PENDING → READYBuilt for Integration
REST API with predictable JSON responses. An MCP server and client SDK are on the roadmap — so your coding agent or frontend can integrate Dars with minimal boilerplate.
API · SDK · MCP — comingDon't build it. Borrow it.
LP generation, curriculum data, SLO mapping — it's all here. Connect via MCP and your agent can pull it straight into your app. Or wire up the API yourself.
Register and set your curriculum
Sign up on the Dars dashboard, select your curriculum — ICT or Punjab — and copy your API key. That's the entire setup. Your curriculum determines which grades, subjects, and textbooks are available to you.
// Your key, shown once on registration X-API-Key: dars_•••••••• // Curriculum set in Settings: // ICT or Punjab
Browse the curriculum tree
Fetch the full breakdown for any grade and subject — chapters, topics, and pre-generated lesson plans with their IDs. Use this to build your navigation, resolve IDs, or let a teacher browse to their lesson.
GET /api/v1/curriculum?grade=3&subject=Eng
→ chapters
→ topics
→ lessons
lesson_plan_id
assessment_idFetch plans and assessments
Once you have an ID from the tree, fetch the full lesson plan or assessment content. Lesson plans come back as HTML, ready to render. Assessments include structured question JSON with an answer key.
GET /api/v1/lesson-plans/{id}
→ content (HTML, bilingual optional)
GET /api/v1/assessments/{id}
→ content_json (structured questions)
→ answers_json (answer key)Generate custom lesson plans and exams
Need a plan outside the pre-built tree? Generate one on demand — pass a page number and optional topic. For exams, control every dimension: question types, seen/unseen split, counts per type, answer key, image generation, AI review.
POST /api/v1/custom-lesson-plans
{
"grade": 3, "subject": "Maths",
"page_number": "42"
}
→ 202 PENDING → poll → READYTag generations with your own IDs
Every generation accepts an optional external_id — a teacher ID, student ID, or any string from your system. Filter listings by it, track who generated what, and pipe results back to the right person without Dars needing to know your data model.
POST /api/v1/custom-exam-generations
{
"grade": 4, "subject": "Eng",
"page_ranges": "10-20",
"external_id": "teacher-007"
}
GET /api/v1/custom-exam-generations
?external_id=teacher-007A lesson plan is not a script. It is a map — one that every teacher draws for their students.
— Principle behind Dars
Ready to give your teachers a better plan?
Log in to your dashboard and start generating curriculum-aligned lesson plans today.
Log in →