mrcnkobu120 downloadsTrack books in plain markdown with vault-native logs and daily note integration.
Readlog is an Obsidian plugin for tracking books in plain markdown. It keeps one note per book, appends reading sessions to a vault-native reading log, writes a compact session line into the book note and into your daily note, and can import Kindle highlights and notes from a local My Clippings.txt file.
Reading/Books/Reading/reading-log.mdAdd bookEdit bookLog reading sessionAdd entryMy Clippings.txt import## Citations## NotesThe detailed product spec lives in docs/spec.md.
## Cover sectionmedium and devicepage, loc, or percentprogress_percent in frontmatter## Log entries with a subtle backlink to the corresponding daily notereading-log.md or daily notesnpm install
npm run build
Copy main.js, manifest.json, and styles.css into:
<your-vault>/.obsidian/plugins/readlog/
cp .env.example .env
# Edit .env with absolute vault paths
npm run deploy:test
npm run deploy:prod
The deploy scripts build the plugin and copy main.js, manifest.json, and styles.css into:
$READLOG_TEST_VAULT/.obsidian/plugins/readlog/$READLOG_PROD_VAULT/.obsidian/plugins/readlog/npm run dev
npm run lint
npm run test
npm run verify
| Command | Description |
|---|---|
Add book |
Create a new book note with frontmatter, ## Cover, and the standard sections |
Edit book |
Update metadata such as status, medium, device, progress unit, current progress, progress total, rating, and dates, or delete the book note |
Log reading session |
Update reading progress, choose the session date and time, capture optional minutes spent, append to reading-log.md, append a timestamped line to that date’s daily note, and add the same session to the book note ## Log section |
Add entry |
Append a note or citation under the correct section in the selected book note |
Import Kindle Clippings |
Pick a local My Clippings.txt file, import new highlights and notes, match existing books conservatively, and optionally create missing book notes |
Readlog tracks one active progress unit per book:
pagelocpercentExample frontmatter:
---
progress_unit: loc
progress_current: 1845
progress_total: 3200
progress_percent: 58
---
Example session output:
- [[Deep Work]] - *locations* 1845-1910 (*58%-60%*, *21:14*, *35 min*)
- **Deep Work** - *locations* 1845-1910 (*65 loc*, *58%-60%*, *21:14*, *35 min*)
- *2026-03-29* - *locations* 1845-1910 (*58%-60%*, *21:14*, *35 min*) · [[2026-03/2026-03-29_Sun|daily]]
Readlog supports these shortcodes in both the daily folder template and daily note name template:
{year}{month}{day}{weekday_short}{weekday_long}Example:
{year}-{month}{year}-{month}-{day}_{weekday_short}2025-01/2025-01-06_Mon.mdreading-log.md.MIT