← knowledge.oriz.in

ncert-app scope — merge per-chapter NCERT PDFs into one-per-book, all classes, EN + HI

decision decisionappncertpdfeducationindiagh-releases

ncert-app scope

What it does

Catalogs every NCERT-published textbook, automates the "I just want the whole book as one PDF" workflow.

NCERT publishes per-chapter PDFs on ncert.nic.in. Students perpetually want one-PDF-per-book. This app produces and hosts that artefact.

Pipeline

  1. GH Action (daily 04:00 IST) walks the NCERT URL tree.
  2. Downloads every chapter PDF per {class, subject, language} triple.
  3. Merges via qpdf --empty --pages a.pdf b.pdf c.pdf -- merged.pdf (or pdftk fallback).
  4. Names output {class}-{subject}-{en|hi}.pdf — e.g. class-9-science-en.pdf, class-11-physics-hi.pdf.
  5. Publishes as GitHub Release artefacts under tag ncert-YYYY-MM-DD. NOT CF Pages — CF Pages has a 25 MB per-file limit; merged textbooks routinely exceed.

Scope

Catalog UI at ncert.oriz.in

Why GH Releases not CF Pages

CF Pages = 25 MB per asset. Merged Class 11 Physics in Hindi alone = ~80 MB. GH Releases = 2 GB per asset, unlimited download bandwidth, free for public repos. Compliant with [[rules/cloudflare-pages-only]] for the CATALOG (which IS on CF Pages); the storage for large binaries follows the existing rule in [[decisions/database/object-storage-split]].

Monetisation

Free + sponsor footer per family default. No ads on an education resource serving students.

Cross-refs