cmlonder/notebooklm-chunker
Heading-aware PDF chunking with resumable source and Studio workflows for turning long documents into interactive NotebookLM learning kits.
What's novel
Heading-aware PDF chunking with resumable source and Studio workflows for turning long documents into interactive NotebookLM learning kits.
Code Analysis
9 files read · 3 roundsSplits long PDFs/documents into heading-aware chunks of configurable page size, uploads them to Google NotebookLM, and orchestrates Studio generation (reports, slides, quizzes, flashcards, audio) with resume, quota tracking, and Anki export.
Strengths
Genuinely sophisticated chunking algorithm with cost-based boundary selection that prefers chapter-level headings, multi-strategy PDF heading detection (TOC → font-size heuristic → text heuristic), and a complete async state machine for resumable multi-studio pipelines. The Anki .apkg builder from scratch using only stdlib is a notable engineering achievement.
Weaknesses
The NotebookLM uploader (101KB) is a single monolithic module that likely contains a lot of browser-automation glue, and the project's novelty is bounded by its dependency on the notebooklm-py library for the actual API interaction. The Electron desktop layer adds significant surface area (86 source files) that is mostly UI plumbing rather than core logic.
Score Breakdown
Signal breakdown
Innovation
Craft
Traction
Scope
Evidence
Commits
49
Contributors
2
Files
110
Active weeks
2
Repository
Language
Python
Stars
9
Forks
1
License
MIT